we extract several values (uint16_t and uint64_t from the fuzzer buff
passed in, but they weren't aligned on 2 and 8 byte boundaries. Adjust
the fuzzer to memcpy data to the target variables to avoid unalignment
issues
Fixes #24272
Reviewed-by: Paul Dale <ppzgs1@gmail.com>
Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com>
(Merged from https://github.com/openssl/openssl/pull/24276)
* parse out our operation flags and key
*/
op_flags = buf[0];
- keyval = *((uint16_t *)&buf[1]);
+ memcpy(&keyval, &buf[1], sizeof(uint16_t));
/*
* Initialize our key
rc_prediction = 0;
}
- valptr->value = *(uint64_t *)&buf[3];
+ memcpy(&valptr->value, &buf[3], sizeof(uint64_t));
/*
* do the insert/replace
*/