drbg_stateRegular
4.4: Absent ⚠️
4.8: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *ctr_null_value_buf;
__u8 *ctr_null_value;
struct completion ctr_completion;
int ctr_async_err;
bool seeded;
bool pr;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
4.10: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *ctr_null_value_buf;
__u8 *ctr_null_value;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct completion ctr_completion;
int ctr_async_err;
bool seeded;
bool pr;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
4.13: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *ctr_null_value_buf;
__u8 *ctr_null_value;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct completion ctr_completion;
int ctr_async_err;
bool seeded;
bool pr;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
4.15: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *ctr_null_value_buf;
__u8 *ctr_null_value;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
bool seeded;
bool pr;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
4.18: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *ctr_null_value_buf;
__u8 *ctr_null_value;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
bool seeded;
bool pr;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
5.0: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
struct scatterlist sg_in;
struct scatterlist sg_out;
bool seeded;
bool pr;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
5.3: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
struct scatterlist sg_in;
struct scatterlist sg_out;
bool seeded;
bool pr;
bool fips_primed;
unsigned char *prev;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
5.4: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
struct scatterlist sg_in;
struct scatterlist sg_out;
bool seeded;
bool pr;
bool fips_primed;
unsigned char *prev;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
5.8: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
struct scatterlist sg_in;
struct scatterlist sg_out;
bool seeded;
bool pr;
bool fips_primed;
unsigned char *prev;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
5.11: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
struct scatterlist sg_in;
struct scatterlist sg_out;
bool seeded;
bool pr;
bool fips_primed;
unsigned char *prev;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
5.13: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
struct scatterlist sg_in;
struct scatterlist sg_out;
bool seeded;
bool pr;
bool fips_primed;
unsigned char *prev;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
5.15: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
struct scatterlist sg_in;
struct scatterlist sg_out;
bool seeded;
bool pr;
bool fips_primed;
unsigned char *prev;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
5.19: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
struct scatterlist sg_in;
struct scatterlist sg_out;
enum drbg_seed_state seeded;
long unsigned int last_seed_time;
bool pr;
bool fips_primed;
unsigned char *prev;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
};
6.2: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
struct scatterlist sg_in;
struct scatterlist sg_out;
enum drbg_seed_state seeded;
long unsigned int last_seed_time;
bool pr;
bool fips_primed;
unsigned char *prev;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
};
6.5: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
struct scatterlist sg_in;
struct scatterlist sg_out;
enum drbg_seed_state seeded;
long unsigned int last_seed_time;
bool pr;
bool fips_primed;
unsigned char *prev;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
};
6.8: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
struct scatterlist sg_in;
struct scatterlist sg_out;
enum drbg_seed_state seeded;
long unsigned int last_seed_time;
bool pr;
bool fips_primed;
unsigned char *prev;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
};
arm64: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
struct scatterlist sg_in;
struct scatterlist sg_out;
bool seeded;
bool pr;
bool fips_primed;
unsigned char *prev;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
armhf: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
struct scatterlist sg_in;
struct scatterlist sg_out;
bool seeded;
bool pr;
bool fips_primed;
unsigned char *prev;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
ppc64el: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
struct scatterlist sg_in;
struct scatterlist sg_out;
bool seeded;
bool pr;
bool fips_primed;
unsigned char *prev;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
riscv64: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
struct scatterlist sg_in;
struct scatterlist sg_out;
bool seeded;
bool pr;
bool fips_primed;
unsigned char *prev;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
aws: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
struct scatterlist sg_in;
struct scatterlist sg_out;
bool seeded;
bool pr;
bool fips_primed;
unsigned char *prev;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
azure: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
struct scatterlist sg_in;
struct scatterlist sg_out;
bool seeded;
bool pr;
bool fips_primed;
unsigned char *prev;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
gcp: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
struct scatterlist sg_in;
struct scatterlist sg_out;
bool seeded;
bool pr;
bool fips_primed;
unsigned char *prev;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
lowlatency: ✅struct drbg_state {
struct mutex drbg_mutex;
unsigned char *V;
unsigned char *Vbuf;
unsigned char *C;
unsigned char *Cbuf;
size_t reseed_ctr;
size_t reseed_threshold;
unsigned char *scratchpad;
unsigned char *scratchpadbuf;
void *priv_data;
struct crypto_skcipher *ctr_handle;
struct skcipher_request *ctr_req;
__u8 *outscratchpadbuf;
__u8 *outscratchpad;
struct crypto_wait ctr_wait;
struct scatterlist sg_in;
struct scatterlist sg_out;
bool seeded;
bool pr;
bool fips_primed;
unsigned char *prev;
struct work_struct seed_work;
struct crypto_rng *jent;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;
struct random_ready_callback random_ready;
};
Regular
4.8 and 4.10 ⚠️__u8 *outscratchpadbuf
__u8 *outscratchpad
4.10 and 4.13 ✅
4.13 and 4.15 ⚠️struct crypto_wait ctr_wait
struct completion ctr_completion
int ctr_async_err
4.15 and 4.18 ✅
4.18 and 5.0 ⚠️struct scatterlist sg_in
struct scatterlist sg_out
__u8 *ctr_null_value_buf
__u8 *ctr_null_value
5.0 and 5.3 ⚠️bool fips_primed
unsigned char *prev
5.3 and 5.4 ✅
5.4 and 5.8 ✅
5.8 and 5.11 ✅
5.11 and 5.13 ✅
5.13 and 5.15 ✅
5.15 and 5.19 ⚠️long unsigned int last_seed_time
struct work_struct seed_work
struct random_ready_callback random_ready
bool seeded ➡️ enum drbg_seed_state seeded
5.19 and 6.2 ✅
6.2 and 6.5 ✅
6.5 and 6.8 ✅
amd64 and arm64 ✅
amd64 and armhf ✅
amd64 and ppc64el ✅
amd64 and riscv64 ✅
generic and aws ✅
generic and azure ✅
generic and gcp ✅
generic and lowlatency ✅