summaryrefslogtreecommitdiffstats
path: root/sys/netsmb/smb_crypt.c
diff options
context:
space:
mode:
authormarcel <marcel@FreeBSD.org>2006-08-22 03:05:51 +0000
committermarcel <marcel@FreeBSD.org>2006-08-22 03:05:51 +0000
commit6723c51456f91f4ff5b61a01bcdf421bfa465a61 (patch)
treef59a8d47cd3eea7ae8f95993d421a9c9abb63d64 /sys/netsmb/smb_crypt.c
parentf39fbdd70545e5a375029d7c59616b06ef675023 (diff)
downloadFreeBSD-src-6723c51456f91f4ff5b61a01bcdf421bfa465a61.zip
FreeBSD-src-6723c51456f91f4ff5b61a01bcdf421bfa465a61.tar.gz
Fix misalignment bugs caused by invalid type casts of pointers
returned by md_reserve(). Space reserved by mb_reserve() is byte aligned and need to be used in conjunction with le16enc() and le32enc(). Tested on: ia64
Diffstat (limited to 'sys/netsmb/smb_crypt.c')
-rw-r--r--sys/netsmb/smb_crypt.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/netsmb/smb_crypt.c b/sys/netsmb/smb_crypt.c
index 928ba8c..b647afd 100644
--- a/sys/netsmb/smb_crypt.c
+++ b/sys/netsmb/smb_crypt.c
@@ -241,8 +241,8 @@ smb_rq_sign(struct smb_rq *rqp)
}
/* Initialize sec. signature field to sequence number + zeros. */
- *(u_int32_t *)rqp->sr_rqsig = htole32(rqp->sr_seqno);
- *(u_int32_t *)(rqp->sr_rqsig + 4) = 0;
+ le32enc(rqp->sr_rqsig, rqp->sr_seqno);
+ le32enc(rqp->sr_rqsig + 4, 0);
/*
* Compute HMAC-MD5 of packet data, keyed by MAC key.
OpenPOWER on IntegriCloud