diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/lib9/sendfd.c | 2 | ||||
-rw-r--r-- | src/libip/udp.c | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/lib9/sendfd.c b/src/lib9/sendfd.c index b5e332ca..e2abb759 100644 --- a/src/lib9/sendfd.c +++ b/src/lib9/sendfd.c @@ -83,6 +83,6 @@ recvfd(int s) return -1; } cmsg = CMSG_FIRSTHDR(&msg); - fd = *(int*)CMSG_DATA(cmsg); + memmove(&fd, CMSG_DATA(cmsg), sizeof(int)); return fd; } diff --git a/src/libip/udp.c b/src/libip/udp.c index f318c4c3..ae413a24 100644 --- a/src/libip/udp.c +++ b/src/libip/udp.c @@ -46,8 +46,8 @@ udpwrite(int fd, Udphdr *hdr, void *buf, long n) memset(&sin, 0, sizeof sin); sin.sin_family = AF_INET; - *(u32int*)&sin.sin_addr = *(u32int*)(hdr->raddr+12); - *(u16int*)&sin.sin_port = *(u16int*)hdr->rport; + memmove(&sin.sin_addr, hdr->raddr+12, 4); + memmove(&sin.sin_port, hdr->rport, 2); return sendto(fd, buf, n, 0, (struct sockaddr*)&sin, sizeof sin); } |