15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* Copyright (c) 2012 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* From dev/ppb_crypto_dev.idl modified Wed Nov 7 13:40:08 2012. */ 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifndef PPAPI_C_DEV_PPB_CRYPTO_DEV_H_ 95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define PPAPI_C_DEV_PPB_CRYPTO_DEV_H_ 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/pp_macros.h" 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/pp_stdint.h" 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define PPB_CRYPTO_DEV_INTERFACE_0_1 "PPB_Crypto(Dev);0.1" 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define PPB_CRYPTO_DEV_INTERFACE PPB_CRYPTO_DEV_INTERFACE_0_1 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/** 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * @file 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * This file defines the PPB_Crypto_Dev interface. 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/** 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * @addtogroup Interfaces 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * @{ 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)struct PPB_Crypto_Dev_0_1 { 285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) /** 295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * Fills the given buffer with random bytes. This is potentially slow so only 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * request the amount of data you need. 315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) void (*GetRandomBytes)(char* buffer, uint32_t num_bytes); 335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}; 345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)typedef struct PPB_Crypto_Dev_0_1 PPB_Crypto_Dev; 365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/** 375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * @} 385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif /* PPAPI_C_DEV_PPB_CRYPTO_DEV_H_ */ 415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 42