diff options
author | Ben Hutchings <ben@decadent.org.uk> | 2016-01-28 02:18:51 +0000 |
---|---|---|
committer | Ben Hutchings <ben@decadent.org.uk> | 2016-01-28 15:48:22 +0000 |
commit | ca0693fe09d59a95192c4ad86492f05dfadbbf10 (patch) | |
tree | 200d45eb38743993e797c675754ea0b892be3578 | |
parent | ecb466590600a2442d167c8b4b80d6c545e63134 (diff) | |
download | odhcp6c-ca0693fe09d59a95192c4ad86492f05dfadbbf10.tar.gz |
Fix alignment of hash buffer in dhcpv6_response_is_valid
md5_final() writes to the hash buffer in 32-bit chunks, so it needs
to be 32-bit aligned.
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
-rw-r--r-- | src/dhcpv6.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/dhcpv6.c b/src/dhcpv6.c index cbf6991..f91f2cf 100644 --- a/src/dhcpv6.c +++ b/src/dhcpv6.c @@ -702,7 +702,8 @@ static bool dhcpv6_response_is_valid(const void *buf, ssize_t len, continue; md5_ctx_t md5; - uint8_t serverhash[16], secretbytes[64], hash[16]; + uint8_t serverhash[16], secretbytes[64]; + uint32_t hash[4]; memcpy(serverhash, r->key, sizeof(serverhash)); memset(r->key, 0, sizeof(r->key)); |