From 3bab3a220a585e32551bc3b8e3d2189cd9ee303b Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Tue, 25 Aug 2009 22:46:22 -0700 Subject: [PATCH] win32 build; add -r option --- cpu.c | 8 ++++++-- kern/devdraw.c | 2 +- kern/devfs-win32.c | 9 +++++++-- kern/devip-win32.c | 2 +- 4 files changed, 15 insertions(+), 6 deletions(-) diff --git a/cpu.c b/cpu.c index 3031962..1326317 100644 --- a/cpu.c +++ b/cpu.c @@ -29,6 +29,7 @@ static AuthInfo *p9any(int); static char *system; static int cflag; extern int dbg; +extern char* base; // fs base for devroot static char *srvname = "ncpu"; static char *ealgs = "rc4_256 sha1"; @@ -146,12 +147,15 @@ cpumain(int argc, char **argv) case 'k': keyspec = EARGF(usage()); break; - case 'u': - user = EARGF(usage()); + case 'r': + base = EARGF(usage()); break; case 's': secstoreserver = EARGF(usage()); break; + case 'u': + user = EARGF(usage()); + break; default: usage(); }ARGEND; diff --git a/kern/devdraw.c b/kern/devdraw.c index cf85c1c..8b6148e 100644 --- a/kern/devdraw.c +++ b/kern/devdraw.c @@ -1312,7 +1312,7 @@ printmesg(char *fmt, uchar *a, int plsprnt) SET(p); USED(fmt); USED(a); - USED(buf); + p = buf; USED(p); USED(q); USED(s); diff --git a/kern/devfs-win32.c b/kern/devfs-win32.c index 98f5400..9997bd0 100644 --- a/kern/devfs-win32.c +++ b/kern/devfs-win32.c @@ -1,3 +1,8 @@ +/* + * Disable Unicode until the calls to FindFirstFile etc + * are changed to use wide character strings. + */ +#undef UNICODE #include #include #include @@ -593,7 +598,7 @@ fsdirread(Chan *c, uchar *va, int count, ulong offset) d.length = stbuf.st_size; d.type = 'U'; d.dev = c->dev; - n = convD2M(&d, (char*)va+i, count-i); + n = convD2M(&d, (uchar*)va+i, count-i); if(n == BIT16SZ){ strcpy(uif->nextname, de); break; @@ -634,7 +639,7 @@ readdir(char *name, DIR *d) if(FindNextFile(d->handle, &d->wfd) == FALSE) return 0; } - strcpy(name, d->wfd.cFileName); + strcpy(name, (char*)d->wfd.cFileName); d->index++; return 1; diff --git a/kern/devip-win32.c b/kern/devip-win32.c index 72700fc..3caa67a 100644 --- a/kern/devip-win32.c +++ b/kern/devip-win32.c @@ -178,7 +178,7 @@ hostlookup(char *host) he = gethostbyname(host); if(he != 0 && he->h_addr_list[0]) { - p = he->h_addr_list[0]; + p = (uchar*)he->h_addr_list[0]; sprint(buf, "%ud.%ud.%ud.%ud", p[0], p[1], p[2], p[3]); } else strcpy(buf, host);