fix SIGBUS in smb2_set_uint64
authorRonnie Sahlberg <ronniesahlberg@gmail.com>
Tue, 26 Nov 2019 12:06:33 +0000 (22:06 +1000)
committerRonnie Sahlberg <ronniesahlberg@gmail.com>
Tue, 26 Nov 2019 12:06:33 +0000 (22:06 +1000)
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
lib/pdu.c

index 70a0b6f2147ca8fcacc840f728b12536a511e131..784bd6c90fda1bb9edda7bdf89b30e589023764d 100644 (file)
--- a/lib/pdu.c
+++ b/lib/pdu.c
@@ -222,7 +222,8 @@ smb2_set_uint64(struct smb2_iovec *iov, int offset, uint64_t value)
         if (offset + sizeof(uint64_t) > iov->len) {
                 return -1;
         }
-        *(uint64_t *)(iov->buf + offset) = htole64(value);
+        value = htole64(value);
+        memcpy(iov->buf + offset, &value, 8);
         return 0;
 }