summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Hutchings <ben@decadent.org.uk>2016-01-28 02:18:51 +0000
committerBen Hutchings <ben@decadent.org.uk>2016-01-28 15:48:22 +0000
commitca0693fe09d59a95192c4ad86492f05dfadbbf10 (patch)
tree200d45eb38743993e797c675754ea0b892be3578
parentecb466590600a2442d167c8b4b80d6c545e63134 (diff)
downloadodhcp6c-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.c3
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));