tnew - plan9port - [fork] Plan 9 from user space | |
git clone git://src.adamsgaard.dk/plan9port | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit 3880f0203b4413cdce29fe73952cad434b414627 | |
parent 1d2f561222ffae64033f918b9f64d59db750b62f | |
Author: rsc <devnull@localhost> | |
Date: Fri, 18 Mar 2005 19:19:40 +0000 | |
new | |
Diffstat: | |
A src/cmd/srv.c | 41 +++++++++++++++++++++++++++++… | |
1 file changed, 41 insertions(+), 0 deletions(-) | |
--- | |
diff --git a/src/cmd/srv.c b/src/cmd/srv.c | |
t@@ -0,0 +1,41 @@ | |
+#include <u.h> | |
+#include <libc.h> | |
+#include <auth.h> | |
+#include <fcall.h> | |
+#include <thread.h> | |
+ | |
+void | |
+usage(void) | |
+{ | |
+ fprint(2, "usage: srv addr [srvname]\n"); | |
+ threadexitsall("usage"); | |
+} | |
+ | |
+void | |
+threadmain(int argc, char **argv) | |
+{ | |
+ int fd; | |
+ char *addr, *service; | |
+ | |
+ ARGBEGIN{ | |
+ default: | |
+ usage(); | |
+ }ARGEND | |
+ | |
+ if(argc != 1 && argc != 2) | |
+ usage(); | |
+ | |
+ addr = netmkaddr(argv[0], "tcp", "9fs"); | |
+ if((fd = dial(addr, nil, nil, nil)) < 0) | |
+ sysfatal("dial %s: %r", addr); | |
+ | |
+ if(argc == 2) | |
+ service = argv[1]; | |
+ else | |
+ service = argv[0]; | |
+ | |
+ if(post9pservice(fd, service) < 0) | |
+ sysfatal("post9pservice: %r"); | |
+ | |
+ threadexitsall(0); | |
+} |