9base

revived minimalist port of Plan 9 userland to Unix
git clone git://git.suckless.org/9base
Log | Files | Refs | README | LICENSE

commit 38702511c5203e487776932e6ebdb1c0a9e80a67
parent 65f285bad8c2fe136ce4c4a99f12cfc1cb2d0f68
Author: Kris Maglione <maglione.k@gmail.com>
Date:   Mon, 19 Jul 2010 13:11:30 -0400

Sync lib9 with plan9port.
Diffstat:
lib9/_p9dialparse.c | 2+-
lib9/_p9dir.c | 1+
lib9/sendfd.c | 4++--
lib9/truerand.c | 4+++-
4 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/lib9/_p9dialparse.c b/lib9/_p9dialparse.c @@ -71,7 +71,7 @@ parseip(char *host, u32int *pip) return -1; break; } - *pip = *(u32int*)addr; + memmove(pip, addr, 4); return 0; } diff --git a/lib9/_p9dir.c b/lib9/_p9dir.c @@ -44,6 +44,7 @@ disksize(int fd, struct stat *st) #define _HAVESTGEN #include <sys/disklabel.h> #include <sys/ioctl.h> +#include <sys/dkio.h> static vlong disksize(int fd, struct stat *st) { diff --git a/lib9/sendfd.c b/lib9/sendfd.c @@ -46,7 +46,7 @@ sendfd(int s, int fd) cmsg->cmsg_len = CMSG_LEN(sizeof(int)); cmsg->cmsg_level = SOL_SOCKET; cmsg->cmsg_type = SCM_RIGHTS; - *(int*)CMSG_DATA(cmsg) = fd; + memmove(CMSG_DATA(cmsg), &fd, sizeof(int)); if((n=sendmsg(s, &msg, 0)) != iov.iov_len) return -1; @@ -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/lib9/truerand.c b/lib9/truerand.c @@ -6,6 +6,7 @@ truerand(void) { int i, n; uchar buf[sizeof(ulong)]; + ulong x; static int randfd = -1; static char *randfile; @@ -21,5 +22,6 @@ truerand(void) for(i=0; i<sizeof(buf); i += n) if((n = readn(randfd, buf+i, sizeof(buf)-i)) < 0) sysfatal("can't read %s: %r", randfile); - return *((ulong*)buf); + memmove(&x, buf, sizeof x); + return x; }