summaryrefslogtreecommitdiff
path: root/extract_decoded_executable/rng.h
diff options
context:
space:
mode:
authorstderr64 <stderr64@null.net>2026-08-03 17:17:27 +0300
committerstderr64 <stderr64@null.net>2026-08-03 17:17:27 +0300
commit172aea9e727f9d5f1ca91021240197186e626e50 (patch)
tree5595f3fe3bb211218b1793599eedcb14d538560a /extract_decoded_executable/rng.h
parent93bf2805ba66b628d0187637c85f86f2ae7eb4a1 (diff)
downloadexperiments-master.tar.gz
experiments-master.tar.zst
Fixed possible buffer overread on hex decoding and made RNG initialization better HEAD master
Diffstat (limited to 'extract_decoded_executable/rng.h')
-rw-r--r--extract_decoded_executable/rng.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/extract_decoded_executable/rng.h b/extract_decoded_executable/rng.h
index 93fd317..6dbc637 100644
--- a/extract_decoded_executable/rng.h
+++ b/extract_decoded_executable/rng.h
@@ -14,6 +14,7 @@ struct rngstate{
static struct rngstate global_rng_state;
void init_rng(){
+ memset( (void*)&global_rng_state, 0, sizeof(struct rngstate) );
uint64_t seed_val = (uint64_t)SEED_VAL;
size_t c_idx = 0;
for ( ; c_idx < 16; c_idx++ ){
@@ -21,6 +22,7 @@ void init_rng(){
seed_val = seed_val ^ (seed_val >> 16);
global_rng_state.state[c_idx] = seed_val;
}
+ global_rng_state.idx = 0;
return;
}