iPXE
rbg.h
Go to the documentation of this file.
1 #ifndef _IPXE_RBG_H
2 #define _IPXE_RBG_H
3 
4 /** @file
5  *
6  * RBG mechanism
7  *
8  */
9 
10 FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
11 FILE_SECBOOT ( PERMITTED );
12 
13 #include <stdint.h>
14 #include <ipxe/drbg.h>
15 
16 /** An RBG */
18  /** DRBG state */
19  struct drbg_state state;
20  /** Startup has been attempted */
21  int started;
22 };
23 
24 extern struct random_bit_generator rbg;
25 
26 extern int rbg_generate ( const void *additional, size_t additional_len,
27  int prediction_resist, void *data, size_t len );
28 
29 #endif /* _IPXE_RBG_H */
DRBG mechanism.
int started
Startup has been attempted.
Definition: rbg.h:21
A Deterministic Random Bit Generator.
Definition: drbg.h:50
FILE_LICENCE(GPL2_OR_LATER_OR_UBDL)
An RBG.
Definition: rbg.h:17
uint16_t additional
Additional sense code and qualifier.
Definition: scsi.h:28
ring len
Length.
Definition: dwmac.h:231
int rbg_generate(const void *additional, size_t additional_len, int prediction_resist, void *data, size_t len)
Generate bits using RBG.
Definition: rbg.c:117
uint8_t data[48]
Additional event data.
Definition: ena.h:22
FILE_SECBOOT(PERMITTED)
struct random_bit_generator rbg
The RBG.
Definition: rbg.c:64
struct drbg_state state
DRBG state.
Definition: rbg.h:19