Hi.
The function *perform_rewind* has an odd undefined behavior.
The function memcmp/ <https://cplusplus.com/reference/cstring/memcmp/>,
compares bytes to bytes.
IMO, I think that pg_rewind can have a security issue,
if two files are exactly the same, they are considered different.
Because use of structs with padding values is unspecified.
Fix by explicitly initializing with memset to avoid this.
best regards,
Ranier Vilela