OLD | NEW |
(Empty) | |
| 1 /* Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| 2 * Use of this source code is governed by a BSD-style license that can be |
| 3 * found in the LICENSE file. |
| 4 */ |
| 5 |
| 6 /* From private/ppb_nacl_hash_private.idl modified Wed May 1 11:04:31 2013. */ |
| 7 |
| 8 #ifndef PPAPI_C_PRIVATE_PPB_NACL_HASH_PRIVATE_H_ |
| 9 #define PPAPI_C_PRIVATE_PPB_NACL_HASH_PRIVATE_H_ |
| 10 |
| 11 #include "ppapi/c/pp_bool.h" |
| 12 #include "ppapi/c/pp_macros.h" |
| 13 #include "ppapi/c/pp_stdint.h" |
| 14 |
| 15 #define PPB_NACL_HASH_PRIVATE_INTERFACE_1_0 "PPB_NaCl_Hash_Private;1.0" |
| 16 #define PPB_NACL_HASH_PRIVATE_INTERFACE PPB_NACL_HASH_PRIVATE_INTERFACE_1_0 |
| 17 |
| 18 /** |
| 19 * @file |
| 20 * This file contains NaCl private interfaces for hashing. This interface |
| 21 * is not versioned and is for internal Chrome use. It may change without |
| 22 * notice. If we convert the NaCl plugin from PPAPI to be renderer code |
| 23 * then we can depend on the chrome hash functions directly. |
| 24 */ |
| 25 |
| 26 |
| 27 /** |
| 28 * @addtogroup Interfaces |
| 29 * @{ |
| 30 */ |
| 31 /* PPB_NaCl_Hash_Private */ |
| 32 struct PPB_NaCl_Hash_Private_1_0 { |
| 33 /* Create a hasher object for incremental hashing. */ |
| 34 void* (*CreateSHA256Hasher)(void); |
| 35 /* Update the hash with len more bytes of data. */ |
| 36 void (*Update)(void* hasher, const void* data, uint32_t len); |
| 37 /* Finish hashing and get a digest up to len bytes. */ |
| 38 void (*Finish)(void* hasher, void* output, uint32_t len); |
| 39 /* Delete the hasher object. */ |
| 40 void (*Delete)(const void* hasher); |
| 41 /* Compare two hashes and return PP_TRUE if they are equal. */ |
| 42 PP_Bool (*SecureMemEqual)(const void* hash1, const void* hash2, uint32_t len); |
| 43 }; |
| 44 |
| 45 typedef struct PPB_NaCl_Hash_Private_1_0 PPB_NaCl_Hash_Private; |
| 46 /** |
| 47 * @} |
| 48 */ |
| 49 |
| 50 #endif /* PPAPI_C_PRIVATE_PPB_NACL_HASH_PRIVATE_H_ */ |
| 51 |
OLD | NEW |