From 0c9c620f39e56c42802504003fd05664aba670a4 Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Wed, 10 Mar 2010 14:50:33 -0800 Subject: fix type-punned pointer warnings from gcc R=rsc http://codereview.appspot.com/396042 --- src/libip/udp.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/libip') diff --git a/src/libip/udp.c b/src/libip/udp.c index 042aa7e9..f318c4c3 100644 --- a/src/libip/udp.c +++ b/src/libip/udp.c @@ -21,8 +21,8 @@ udpread(int fd, Udphdr *hdr, void *buf, long n) } memset(hdr, 0, sizeof *hdr); memmove(hdr->laddr, v4prefix, IPaddrlen); - *(u32int*)(hdr->laddr+12) = *(u32int*)&sin.sin_addr; - *(u16int*)hdr->lport = *(u16int*)&sin.sin_port; + memmove(hdr->laddr+12, &sin.sin_addr, sizeof(u32int)); + memmove(hdr->lport, &sin.sin_port, sizeof(u16int)); len = sizeof sin; n = recvfrom(fd, buf, n, 0, (struct sockaddr*)&sin, &len); @@ -33,8 +33,8 @@ udpread(int fd, Udphdr *hdr, void *buf, long n) return -1; } memmove(hdr->raddr, v4prefix, IPaddrlen); - *(u32int*)(hdr->raddr+12) = *(u32int*)&sin.sin_addr; - *(u16int*)hdr->rport = *(u16int*)&sin.sin_port; + memmove(hdr->raddr+12, &sin.sin_addr, sizeof(u32int)); + memmove(hdr->rport, &sin.sin_port, sizeof(u16int)); return n; } -- cgit v1.2.3