Browse Source

Plan 9 from Bell Labs 2004-08-26

David du Colombier 19 years ago
parent
commit
b14517e10a

+ 13 - 8
dist/replica/_plan9.db

@@ -3327,7 +3327,7 @@ sys/doc/venti/venti.pdf - 755 sys sys 1020384352 139090
 sys/doc/venti/venti.ps - 664 sys sys 1019852320 2012620
 sys/games - 20000000775 sys sys 952648872 0
 sys/games/lib - 20000000775 sys sys 952648879 0
-sys/games/lib/fortunes - 664 sys sys 1091904422 249281
+sys/games/lib/fortunes - 664 sys sys 1093455199 249409
 sys/include - 20000000775 sys sys 1016902416 0
 sys/include/9p.h - 664 sys sys 1091904420 4392
 sys/include/String.h - 664 sys sys 1091904425 1319
@@ -4932,7 +4932,7 @@ sys/man/3/mnt - 664 sys sys 944959698 1994
 sys/man/3/mouse - 664 sys sys 1020313480 4276
 sys/man/3/pipe - 664 sys sys 1032640674 1145
 sys/man/3/pnp - 664 sys sys 1088560895 4547
-sys/man/3/proc - 664 sys sys 1074785156 12026
+sys/man/3/proc - 664 sys sys 1093452918 12027
 sys/man/3/root - 664 sys sys 1046958450 632
 sys/man/3/rtc - 664 sys sys 954378857 667
 sys/man/3/sd - 664 sys sys 1018386776 4805
@@ -7016,8 +7016,8 @@ sys/src/cmd/aux/flashfs/testld.c - 664 sys sys 1015009082 1043
 sys/src/cmd/aux/flashfs/utils.c - 664 sys sys 1019498850 1097
 sys/src/cmd/aux/lines.c - 664 sys sys 1015008782 546
 sys/src/cmd/aux/lis - 775 sys sys 944960794 45
-sys/src/cmd/aux/listen.c - 664 sys sys 1015008684 8139
-sys/src/cmd/aux/listen1.c - 664 sys sys 1024375142 2016
+sys/src/cmd/aux/listen.c - 664 sys sys 1093452954 8142
+sys/src/cmd/aux/listen1.c - 664 sys sys 1093452955 2018
 sys/src/cmd/aux/mkfile - 664 sys sys 1084415958 946
 sys/src/cmd/aux/mklatinkbd.c - 664 sys sys 953253425 3813
 sys/src/cmd/aux/mnihongo - 20000000775 sys sys 944960789 0
@@ -9388,7 +9388,7 @@ sys/src/cmd/ip/dhcpd/testping.c - 664 sys sys 950389141 352
 sys/src/cmd/ip/ftpd.c - 664 sys sys 1046643070 32813
 sys/src/cmd/ip/ftpfs - 20000000775 sys sys 1014925642 0
 sys/src/cmd/ip/ftpfs/file.c - 664 sys sys 1014925642 4208
-sys/src/cmd/ip/ftpfs/ftpfs.c - 664 sys sys 1048285493 13555
+sys/src/cmd/ip/ftpfs/ftpfs.c - 664 sys sys 1093452873 13584
 sys/src/cmd/ip/ftpfs/ftpfs.h - 664 sys sys 1091904423 2353
 sys/src/cmd/ip/ftpfs/mkfile - 664 sys sys 1048312050 173
 sys/src/cmd/ip/ftpfs/proto.c - 664 sys sys 1089920400 29348
@@ -9500,7 +9500,7 @@ sys/src/cmd/ip/snoopy/udp.c - 664 sys sys 1089299190 1990
 sys/src/cmd/ip/telnet.c - 664 sys sys 1080058033 8535
 sys/src/cmd/ip/telnet.h - 664 sys sys 1015090250 5902
 sys/src/cmd/ip/telnetd.c - 664 sys sys 1032060109 11731
-sys/src/cmd/ip/tftpd.c - 664 sys sys 1084470760 7223
+sys/src/cmd/ip/tftpd.c - 664 sys sys 1093453000 7604
 sys/src/cmd/ip/traceroute.c - 664 sys sys 1032060124 9370
 sys/src/cmd/ip/udpecho.c - 664 sys sys 1050714674 855
 sys/src/cmd/join.c - 664 sys sys 944961364 7488
@@ -10835,7 +10835,7 @@ sys/src/cmd/upas/ml/mlmgr.c - 664 sys sys 1045505888 2332
 sys/src/cmd/upas/ml/mlowner.c - 664 sys sys 1015096763 1142
 sys/src/cmd/upas/ned - 20000000775 sys sys 1015013194 0
 sys/src/cmd/upas/ned/mkfile - 664 sys sys 1060041738 233
-sys/src/cmd/upas/ned/nedmail.c - 664 sys sys 1085599621 44170
+sys/src/cmd/upas/ned/nedmail.c - 664 sys sys 1093453042 44171
 sys/src/cmd/upas/pop3 - 20000000775 sys sys 1015009816 0
 sys/src/cmd/upas/pop3/mkfile - 664 sys sys 1064589604 186
 sys/src/cmd/upas/pop3/pop3.c - 664 sys sys 1076176207 14301
@@ -12324,7 +12324,7 @@ usr/glenda/bin - 20000000775 glenda glenda 953406597 0
 usr/glenda/bin/386 - 20000000775 glenda glenda 953406597 0
 usr/glenda/bin/mips - 20000000775 glenda glenda 953406597 0
 usr/glenda/bin/rc - 20000000775 glenda glenda 954101780 0
-usr/glenda/bin/rc/pull - 775 glenda glenda 1034220451 172
+usr/glenda/bin/rc/pull - 775 glenda glenda 1093453255 224
 usr/glenda/bin/rc/riostart - 775 glenda glenda 1018974192 341
 usr/glenda/bin/rc/screensize - 775 glenda glenda 1019273896 145
 usr/glenda/lib - 20000000775 glenda glenda 959740302 0
@@ -12337,3 +12337,8 @@ usr/glenda/lib/profile - 664 glenda glenda 1021580005 847
 usr/glenda/readme.acme - 664 glenda glenda 1019860628 4753
 usr/glenda/readme.rio - 664 glenda glenda 1019860628 6370
 usr/glenda/tmp - 20000000775 glenda glenda 1018802620 0
+386/bin/ftpfs - 775 sys sys 1093489558 146386
+386/bin/aux/listen - 775 sys sys 1093489557 104845
+386/bin/aux/listen1 - 775 sys sys 1093489557 91380
+386/bin/ip/tftpd - 775 sys sys 1093489558 127405
+386/bin/upas/nedmail - 775 sys sys 1093489559 153913

+ 13 - 13
dist/replica/plan9.db

@@ -105,8 +105,8 @@
 386/bin/aux/hardcopy - 775 sys sys 1020319063 1699
 386/bin/aux/isvmware - 775 sys sys 1032486791 23997
 386/bin/aux/lines - 775 sys sys 1085076993 58460
-386/bin/aux/listen - 775 sys sys 1085076994 104854
-386/bin/aux/listen1 - 775 sys sys 1085076994 91430
+386/bin/aux/listen - 775 sys sys 1093489557 104845
+386/bin/aux/listen1 - 775 sys sys 1093489557 91380
 386/bin/aux/lpdaemon - 775 sys sys 1089985358 167429
 386/bin/aux/lpdsend - 775 sys sys 1087442507 153635
 386/bin/aux/lpsend - 775 sys sys 1085076994 52497
@@ -238,7 +238,7 @@
 386/bin/fs/tpfs - 775 sys sys 1085077058 90951
 386/bin/fs/v10fs - 775 sys sys 1085077058 92404
 386/bin/fs/v6fs - 775 sys sys 1085077059 92322
-386/bin/ftpfs - 775 sys sys 1089985360 146354
+386/bin/ftpfs - 775 sys sys 1093489558 146386
 386/bin/getmap - 775 sys sys 1085077059 63150
 386/bin/gif - 775 sys sys 1085077060 155975
 386/bin/grap - 775 sys sys 1089985360 279641
@@ -288,7 +288,7 @@
 386/bin/ip/rip - 775 sys sys 1089257535 89203
 386/bin/ip/rlogind - 775 sys sys 1085077073 65396
 386/bin/ip/telnetd - 775 sys sys 1085077073 119896
-386/bin/ip/tftpd - 775 sys sys 1089257536 104155
+386/bin/ip/tftpd - 775 sys sys 1093489558 127405
 386/bin/ip/traceroute - 775 sys sys 1085077074 71477
 386/bin/ip/udpecho - 775 sys sys 1085077074 43131
 386/bin/join - 775 sys sys 1085077074 114267
@@ -437,7 +437,7 @@
 386/bin/upas/mlowner - 775 sys sys 1085077113 90099
 386/bin/upas/msgcat - 775 sys sys 1064598353 38
 386/bin/upas/msgtok - 775 sys sys 1064598354 75149
-386/bin/upas/nedmail - 775 sys sys 1085627355 153957
+386/bin/upas/nedmail - 775 sys sys 1093489559 153913
 386/bin/upas/pop3 - 775 sys sys 1085077114 259808
 386/bin/upas/qer - 775 sys sys 1085077114 97840
 386/bin/upas/ratfs - 775 sys sys 1089257539 109406
@@ -3327,7 +3327,7 @@ sys/doc/venti/venti.pdf - 755 sys sys 1020384352 139090
 sys/doc/venti/venti.ps - 664 sys sys 1019852320 2012620
 sys/games - 20000000775 sys sys 952648872 0
 sys/games/lib - 20000000775 sys sys 952648879 0
-sys/games/lib/fortunes - 664 sys sys 1091904422 249281
+sys/games/lib/fortunes - 664 sys sys 1093455199 249409
 sys/include - 20000000775 sys sys 1016902416 0
 sys/include/9p.h - 664 sys sys 1091904420 4392
 sys/include/String.h - 664 sys sys 1091904425 1319
@@ -4932,7 +4932,7 @@ sys/man/3/mnt - 664 sys sys 944959698 1994
 sys/man/3/mouse - 664 sys sys 1020313480 4276
 sys/man/3/pipe - 664 sys sys 1032640674 1145
 sys/man/3/pnp - 664 sys sys 1088560895 4547
-sys/man/3/proc - 664 sys sys 1074785156 12026
+sys/man/3/proc - 664 sys sys 1093452918 12027
 sys/man/3/root - 664 sys sys 1046958450 632
 sys/man/3/rtc - 664 sys sys 954378857 667
 sys/man/3/sd - 664 sys sys 1018386776 4805
@@ -7016,8 +7016,8 @@ sys/src/cmd/aux/flashfs/testld.c - 664 sys sys 1015009082 1043
 sys/src/cmd/aux/flashfs/utils.c - 664 sys sys 1019498850 1097
 sys/src/cmd/aux/lines.c - 664 sys sys 1015008782 546
 sys/src/cmd/aux/lis - 775 sys sys 944960794 45
-sys/src/cmd/aux/listen.c - 664 sys sys 1015008684 8139
-sys/src/cmd/aux/listen1.c - 664 sys sys 1024375142 2016
+sys/src/cmd/aux/listen.c - 664 sys sys 1093452954 8142
+sys/src/cmd/aux/listen1.c - 664 sys sys 1093452955 2018
 sys/src/cmd/aux/mkfile - 664 sys sys 1084415958 946
 sys/src/cmd/aux/mklatinkbd.c - 664 sys sys 953253425 3813
 sys/src/cmd/aux/mnihongo - 20000000775 sys sys 944960789 0
@@ -9388,7 +9388,7 @@ sys/src/cmd/ip/dhcpd/testping.c - 664 sys sys 950389141 352
 sys/src/cmd/ip/ftpd.c - 664 sys sys 1046643070 32813
 sys/src/cmd/ip/ftpfs - 20000000775 sys sys 1014925642 0
 sys/src/cmd/ip/ftpfs/file.c - 664 sys sys 1014925642 4208
-sys/src/cmd/ip/ftpfs/ftpfs.c - 664 sys sys 1048285493 13555
+sys/src/cmd/ip/ftpfs/ftpfs.c - 664 sys sys 1093452873 13584
 sys/src/cmd/ip/ftpfs/ftpfs.h - 664 sys sys 1091904423 2353
 sys/src/cmd/ip/ftpfs/mkfile - 664 sys sys 1048312050 173
 sys/src/cmd/ip/ftpfs/proto.c - 664 sys sys 1089920400 29348
@@ -9500,7 +9500,7 @@ sys/src/cmd/ip/snoopy/udp.c - 664 sys sys 1089299190 1990
 sys/src/cmd/ip/telnet.c - 664 sys sys 1080058033 8535
 sys/src/cmd/ip/telnet.h - 664 sys sys 1015090250 5902
 sys/src/cmd/ip/telnetd.c - 664 sys sys 1032060109 11731
-sys/src/cmd/ip/tftpd.c - 664 sys sys 1084470760 7223
+sys/src/cmd/ip/tftpd.c - 664 sys sys 1093453000 7604
 sys/src/cmd/ip/traceroute.c - 664 sys sys 1032060124 9370
 sys/src/cmd/ip/udpecho.c - 664 sys sys 1050714674 855
 sys/src/cmd/join.c - 664 sys sys 944961364 7488
@@ -10835,7 +10835,7 @@ sys/src/cmd/upas/ml/mlmgr.c - 664 sys sys 1045505888 2332
 sys/src/cmd/upas/ml/mlowner.c - 664 sys sys 1015096763 1142
 sys/src/cmd/upas/ned - 20000000775 sys sys 1015013194 0
 sys/src/cmd/upas/ned/mkfile - 664 sys sys 1060041738 233
-sys/src/cmd/upas/ned/nedmail.c - 664 sys sys 1085599621 44170
+sys/src/cmd/upas/ned/nedmail.c - 664 sys sys 1093453042 44171
 sys/src/cmd/upas/pop3 - 20000000775 sys sys 1015009816 0
 sys/src/cmd/upas/pop3/mkfile - 664 sys sys 1064589604 186
 sys/src/cmd/upas/pop3/pop3.c - 664 sys sys 1076176207 14301
@@ -12324,7 +12324,7 @@ usr/glenda/bin - 20000000775 glenda glenda 953406597 0
 usr/glenda/bin/386 - 20000000775 glenda glenda 953406597 0
 usr/glenda/bin/mips - 20000000775 glenda glenda 953406597 0
 usr/glenda/bin/rc - 20000000775 glenda glenda 954101780 0
-usr/glenda/bin/rc/pull - 775 glenda glenda 1034220451 172
+usr/glenda/bin/rc/pull - 775 glenda glenda 1093453255 224
 usr/glenda/bin/rc/riostart - 775 glenda glenda 1018974192 341
 usr/glenda/bin/rc/screensize - 775 glenda glenda 1019273896 145
 usr/glenda/lib - 20000000775 glenda glenda 959740302 0

+ 13 - 0
dist/replica/plan9.log

@@ -16602,3 +16602,16 @@
 1092540653 1 c 386/bin/ssh - 775 sys sys 1092539158 208978
 1092540653 2 c 386/bin/aux/sshserve - 775 sys sys 1092539157 249442
 1092540653 3 c 386/bin/sshnet - 775 sys sys 1092539158 280678
+1093453247 0 c usr/glenda/bin/rc/pull - 775 glenda glenda 1093453255 224
+1093453247 1 c sys/man/3/proc - 664 sys sys 1093452918 12027
+1093453247 2 c sys/src/cmd/aux/listen.c - 664 sys sys 1093452954 8142
+1093453247 3 c sys/src/cmd/aux/listen1.c - 664 sys sys 1093452955 2018
+1093453247 4 c sys/src/cmd/ip/ftpfs/ftpfs.c - 664 sys sys 1093452873 13584
+1093453247 5 c sys/src/cmd/ip/tftpd.c - 664 sys sys 1093453000 7604
+1093453247 6 c sys/src/cmd/upas/ned/nedmail.c - 664 sys sys 1093453042 44171
+1093456847 0 c sys/games/lib/fortunes - 664 sys sys 1093455199 249409
+1093491055 0 c 386/bin/ftpfs - 775 sys sys 1093489558 146386
+1093491055 1 c 386/bin/aux/listen - 775 sys sys 1093489557 104845
+1093491055 2 c 386/bin/aux/listen1 - 775 sys sys 1093489557 91380
+1093491055 3 c 386/bin/ip/tftpd - 775 sys sys 1093489558 127405
+1093491055 4 c 386/bin/upas/nedmail - 775 sys sys 1093489559 153913

+ 1 - 0
sys/games/lib/fortunes

@@ -4017,3 +4017,4 @@ Beauty is more important in computing than anywhere else in technology because s
 Zatoichi: in theaters December 31, 1969.
 recordio.h:992: type `__true_type' is not a base type for type `__false_type'
 Telephone number has to be 10 numbers.  For example, enter '8002158482'.  Please contact us at 1-800-215-8482 for any assitance.
+No one but a theorist believes his theory; everyone puts faith in a laboratory result but the experimenter himself.  - Einstein

+ 1 - 1
sys/man/3/proc

@@ -265,7 +265,7 @@ and is not otherwise resettable.
 Set the base priority for the process to the integer
 .IR n .
 .TP 10n
-.B "wire\ \fIn
+.B "wired\ \fIn
 Wire the process to processor
 .IR n .
 .TP 10n

+ 3 - 3
sys/src/cmd/aux/listen.c

@@ -287,7 +287,7 @@ dolisten(char *proto, char *dir, int ctl, char *srvdir)
 		 */
 		switch(rfork(RFFDG|RFPROC|RFNOWAIT|RFENVG|RFNAMEG|RFNOTEG)){
 		case -1:
-			reject(ctl, ndir, "host overloaded");
+			reject(nctl, ndir, "host overloaded");
 			close(nctl);
 			continue;
 		case 0:
@@ -299,10 +299,10 @@ dolisten(char *proto, char *dir, int ctl, char *srvdir)
 				if(!quiet)
 					syslog(1, listenlog, "%s: unknown service '%s' from '%s': %r",
 						proto, s.serv, s.remote);
-				reject(ctl, ndir, "connection refused");
+				reject(nctl, ndir, "connection refused");
 				exits(0);
 			}
-			data = accept(ctl, ndir);
+			data = accept(nctl, ndir);
 			if(data < 0){
 				syslog(1, listenlog, "can't open %s/data: %r", ndir);
 				exits(0);

+ 2 - 2
sys/src/cmd/aux/listen1.c

@@ -92,11 +92,11 @@ main(int argc, char **argv)
 
 		switch(rfork(RFFDG|RFPROC|RFNOWAIT|RFENVG|RFNAMEG|RFNOTEG)){
 		case -1:
-			reject(ctl, ndir, "host overloaded");
+			reject(nctl, ndir, "host overloaded");
 			close(nctl);
 			continue;
 		case 0:
-			fd = accept(ctl, ndir);
+			fd = accept(nctl, ndir);
 			if(fd < 0){
 				fprint(2, "accept %s: can't open  %s/data: %r", argv[0], ndir);
 				_exits(0);

+ 7 - 4
sys/src/cmd/ip/ftpfs/ftpfs.c

@@ -579,18 +579,21 @@ rclunk(Fid *f)
 char *
 rremove(Fid *f)
 {
+	char *e;
+	e = nil;
 	if(QTDIR & f->node->d->qid.type){
 		if(removedir(f->node) < 0)
-			return errstring;
+			e = errstring;
 	} else {
 		if(removefile(f->node) < 0)
-			return errstring;
+			e = errstring;
 	}
 	uncache(f->node->parent);
 	uncache(f->node);
-	INVALID(f->node);
+	if(e == nil)
+		INVALID(f->node);
 	f->busy = 0;
-	return 0;
+	return e;
 }
 
 char *

+ 23 - 14
sys/src/cmd/ip/tftpd.c

@@ -1,5 +1,6 @@
 #include <u.h>
 #include <libc.h>
+#include <auth.h>
 #include <bio.h>
 #include <ip.h>
 #include <ndb.h>
@@ -44,7 +45,8 @@ enum
 void
 usage(void)
 {
-	fprint(2, "usage: %s [-dr] [-h homedir] [-x netmtpt]\n", argv0);
+	fprint(2, "usage: %s [-dr] [-h homedir] [-s svc] [-x netmtpt]\n",
+		argv0);
 	exits("usage");
 }
 
@@ -54,7 +56,7 @@ main(int argc, char **argv)
 	char buf[64];
 	char adir[64], ldir[64];
 	int cfd, lcfd, dfd;
-	char *p;
+	char *p, *svc = "69";
 
 	setnetmtpt(net, sizeof(net), nil);
 	ARGBEGIN{
@@ -67,6 +69,9 @@ main(int argc, char **argv)
 	case 'r':
 		restricted = 1;
 		break;
+	case 's':
+		svc = EARGF(usage());
+		break;
 	case 'x':
 		p = ARGF();
 		if(p == nil)
@@ -97,24 +102,27 @@ main(int argc, char **argv)
 			exits(0);
 		}
 
-	syslog(dbg, flog, "started");
-
-	sprint(buf, "%s/udp!*!69", net);
+	snprint(buf, sizeof buf, "%s/udp!*!%s", net, svc);
 	cfd = announce(buf, adir);
+	if (cfd < 0)
+		sysfatal("announcing on %s: %r", buf);
+	syslog(dbg, flog, "tftpd started on %s dir %s", buf, adir);
 	setuser();
 	for(;;) {
 		lcfd = listen(adir, ldir);
 		if(lcfd < 0)
-			sysfatal("listening: %r");
+			sysfatal("listening on %s: %r", adir);
 
 		switch(fork()) {
 		case -1:
 			sysfatal("fork: %r");
 		case 0:
-			dfd = accept(cfd, ldir);
+			dfd = accept(lcfd, ldir);
 			if(dfd < 0)
  				exits(0);
 			remoteaddr(ldir, raddr, sizeof(raddr));
+			syslog(0, flog, "tftp connection from %s dir %s",
+				raddr, ldir);
 			doserve(dfd);
 			exits("done");
 			break;
@@ -148,7 +156,7 @@ doserve(int fd)
 	if(dlen == 0) {
 		nak(fd, 0, "bad tftpmode");
 		close(fd);
-		syslog(dbg, flog, "bad mode %s", raddr);
+		syslog(dbg, flog, "bad mode from %s", raddr);
 		return;
 	}
 
@@ -354,13 +362,14 @@ nak(int fd, int code, char *msg)
 void
 setuser(void)
 {
-	int f;
+	int fd;
 
-	f = open("/dev/user", OWRITE);
-	if(f < 0)
-		return;
-	write(f, "none", sizeof("none"));
-	close(f);
+	fd = open("#c/user", OWRITE);
+	if(fd < 0 || write(fd, "none", strlen("none")) < 0)
+		sysfatal("can't become none: %r");
+	close(fd);
+	if(newns("none", nil) < 0)
+		sysfatal("can't build namespace: %r");
 }
 
 char*

+ 1 - 1
sys/src/cmd/upas/ned/nedmail.c

@@ -128,7 +128,7 @@ struct {
 	{ "y",	0,	ycmd,	"y        synchronize with mail box" },
 	{ "=",	1,	eqcmd,	"=        print current message number" },
 	{ "|",	1,	pipecmd, "|cmd     pipe message body to a command" },
-	{ "||",	1,	rpipecmd, "|cmd     pipe raw message to a command" },
+	{ "||",	1,	rpipecmd, "||cmd     pipe raw message to a command" },
 	{ "!",	1,	bangcmd, "!cmd     run a command" },
 	{ nil,	0,	nil, 	nil },
 };

+ 4 - 2
usr/glenda/bin/rc/pull

@@ -6,6 +6,8 @@ while(! ~ $#* 0 && ~ $1 -*){
 	flags=($flags $1)
 	shift
 }
-disk/kfscmd allow
+if(test -f /srv/kfs.cmd)
+	disk/kfscmd allow
 replica/pull -v $flags /dist/replica/network $*
-disk/kfscmd disallow
+if(test -f /srv/kfs.cmd)
+	disk/kfscmd disallow