From c11e90fdc02d91a6e810189f77d7b1ef922cd20c Mon Sep 17 00:00:00 2001 From: David du Colombier <0intro@gmail.com> Date: Sat, 25 Jul 1992 00:00:00 +0000 Subject: [PATCH] Plan 9 from Bell Labs 1992-07-25 --- boot/boot.c | 1 - boot/key.c | 4 +++- gnot/dat.h | 1 - gnot/main.c | 3 --- pc/dat.h | 1 - pc/main.c | 5 ----- port/devcons.c | 24 ++++++++++++------------ port/portdat.h | 1 + port/portfns.h | 1 - port/stasync.c | 2 +- port/swap.c | 5 ++--- power/conf.h | 1 - power/dat.h | 1 - power/main.c | 3 +-- ss/dat.h | 1 - ss/main.c | 1 - 16 files changed, 20 insertions(+), 35 deletions(-) diff --git a/boot/boot.c b/boot/boot.c index e1a1ac8f251fe98a8d52613c8ca100e04bd43724..97388b091bfdb3bf82d81266443d391f46d0faf3 100644 --- a/boot/boot.c +++ b/boot/boot.c @@ -39,7 +39,6 @@ boot(int argc, char *argv[]) open("#c/cons", OREAD); open("#c/cons", OWRITE); open("#c/cons", OWRITE); - /* for(fd = 0; fd < argc; fd++) print("%s ", argv[fd]); print("\n");/**/ diff --git a/boot/key.c b/boot/key.c index 4a17391605b7551dac1c4da58a636577ff93dad5..64807ed3d4736c2c7b519814f0d64d659036a276 100644 --- a/boot/key.c +++ b/boot/key.c @@ -42,8 +42,10 @@ getp: } close(fd); fd = open("#c/key", OWRITE); - if(fd < 0) + if(fd < 0){ warning("can't open #c/key"); + return; + } else if(write(fd, safe.machkey, DESKEYLEN) != DESKEYLEN) warning("can't set #c/key"); close(fd); diff --git a/gnot/dat.h b/gnot/dat.h index ad67d13d2c6b3235ab626084711a649ad9f43bac..2bb64b796610e7203a3097e87ef684cb5b8aba44 100644 --- a/gnot/dat.h +++ b/gnot/dat.h @@ -81,7 +81,6 @@ struct Conf int nlapd; /* number of dragnet protocol modules */ int copymode; /* 0 is copy on write, 1 is copy on reference */ int portispaged; /* ??? */ - int cntrlp; /* panic on ^P */ int nconc; /* number of datakit concentrators */ }; diff --git a/gnot/main.c b/gnot/main.c index 08a35fc5c9f583d8abc9c60327babea8b5b8b24d..28f5d20041dc6f4ab5e3fc08cc57eb43517b63ec 100644 --- a/gnot/main.c +++ b/gnot/main.c @@ -331,10 +331,7 @@ confinit(void) conf.nimage = 50; conf.copymode = 0; /* copy on write */ conf.portispaged = 0; - conf.cntrlp = 0; conf.nconc = 2; - - confinit1(mul); } /* diff --git a/pc/dat.h b/pc/dat.h index 77aae0e9c5ce67db6ab7343c3494306cc291581d..1b19a51ef9530af4b4247c5221c3dc38c5c7836a 100644 --- a/pc/dat.h +++ b/pc/dat.h @@ -66,7 +66,6 @@ struct Conf ulong ip; /* Ip conversations per interface */ ulong arp; /* Arp table size */ ulong frag; /* Ip fragment assemble queue size */ - ulong cntrlp; /* panic on ^P */ ulong nfloppy; /* number of floppy drives */ ulong nhard; /* number of hard drives */ }; diff --git a/pc/main.c b/pc/main.c index a2785e6c9394857b66cab2159d4712c5ccb84f35..62bc68fc563eed83d723bc9e6235336ac20a6c91 100644 --- a/pc/main.c +++ b/pc/main.c @@ -198,7 +198,6 @@ void confinit(void) { long x, i, j, *l; - int mul; ulong ktop; /* @@ -247,7 +246,6 @@ confinit(void) /* for meminit() */ conf.topofmem = i*MB; - mul = 1; conf.nproc = 30 + i*5; conf.nswap = conf.nproc*80; conf.nimage = 50; @@ -256,11 +254,8 @@ confinit(void) conf.ip = 64; conf.arp = 32; conf.frag = 32; - conf.cntrlp = 0; conf.nfloppy = 2; conf.nhard = 1; - - confinit1(mul); } char *mathmsg[] = diff --git a/port/devcons.c b/port/devcons.c index a31ba8249f530f53b98442cf6981b7c4f543de68..9ba151eb34bff9fb51a58f6917e5f620c8a0ba89 100644 --- a/port/devcons.c +++ b/port/devcons.c @@ -171,7 +171,7 @@ panic(char *fmt, ...) buf[n] = '\n'; putstrn(buf, n+1); dumpstack(); - if(conf.cntrlp) + if(cpuserver) exit(); else for(;;); @@ -217,7 +217,7 @@ echo(Rune r, char *buf, int n) /* * ^p hack */ - if(r==0x10 && conf.cntrlp) + if(r==0x10 && cpuserver) panic("^p"); /* @@ -616,7 +616,7 @@ consread(Chan *c, void *buf, long n, ulong offset) case Qkey: if(offset!=0 || n!=DESKEYLEN) error(Ebadarg); - if(strcmp(u->p->user, eve)!=0 || conf.cntrlp==0) + if(strcmp(u->p->user, eve)!=0 || !cpuserver) error(Eperm); memmove(buf, evekey, DESKEYLEN); return n; @@ -818,16 +818,16 @@ conswrite(Chan *c, void *va, long n, ulong offset) break; case Quser: - if(offset != 0 || n >= NAMELEN-1) + if(offset!=0 || n>=NAMELEN-1) error(Ebadarg); - if(n==strlen("none") && strncmp(a, "none", n)==0 - || n==strlen(u->p->user) && strncmp(a, u->p->user, n)==0 - || strcmp(u->p->user, eve)==0){ - memmove(u->p->user, a, n); - u->p->user[n] = '\0'; - }else + strncpy(buf, a, NAMELEN); + if(strcmp(buf, "none")==0 + || strcmp(buf, u->p->user)==0 + || strcmp(u->p->user, eve)==0) + memmove(u->p->user, buf, NAMELEN); + else error(Eperm); - if(!conf.cntrlp && strcmp(eve, "bootes") == 0) + if(!cpuserver && strcmp(eve, "bootes")==0) memmove(eve, u->p->user, NAMELEN); break; @@ -878,7 +878,7 @@ conswrite(Chan *c, void *va, long n, ulong offset) kickpager(); /* start a pager if not already started */ break; } - if(conf.cntrlp && strcmp(u->p->user, eve) != 0) + if(cpuserver && strcmp(u->p->user, eve) != 0) error(Eperm); if(buf[0]<'0' || '9'