plan9port

fork of plan9port with libvec, libstr and libsdb
Log | Files | Refs | README | LICENSE

commit 96898a81415df2368dfdbcf2b756982ba420a94f
parent 0c9c620f39e56c42802504003fd05664aba670a4
Author: Russ Cox <rsc@swtch.com>
Date:   Wed, 10 Mar 2010 14:59:03 -0800

more type-punned pointers

R=rsc
http://codereview.appspot.com/376045

Diffstat:
Msrc/lib9/sendfd.c | 2+-
Msrc/libip/udp.c | 4++--
2 files changed, 3 insertions(+), 3 deletions(-)

diff --git 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 @@ -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); }