diff options
author | qwx <qwx@sciops.net> | 2021-09-10 21:03:47 +0000 |
---|---|---|
committer | qwx <qwx@sciops.net> | 2021-09-10 21:03:47 +0000 |
commit | e2796993445b62379e908564e900e6955b30b830 (patch) | |
tree | afebb908130b8490572e0a7a9c8783f2289da153 /sys/src/cmd/plumb/plumber.c | |
parent | d1986d8c0e6369923f2761a7349ecb1ab7c70da8 (diff) |
plumber: remove $plumbsrv, add optional srvname, usage check
Plumber both posts a service to /srv and sets a $plumbsrv environment
variable. Our libplumb no longer uses $plumbsrv and nothing else
does. It's a silly hack; rc doesn't update /env immediately, and
scripts, which for instance set up subrios, cannot rely on it to
clean up the plumber at the end.
Instead, add the option to specify a srvname, actually check for some
common errors and print a usage string.
Thanks to Ori for input and a preliminary patch.
Diffstat (limited to 'sys/src/cmd/plumb/plumber.c')
-rw-r--r-- | sys/src/cmd/plumb/plumber.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/sys/src/cmd/plumb/plumber.c b/sys/src/cmd/plumb/plumber.c index 21cb27cd6..e5f3ddbc0 100644 --- a/sys/src/cmd/plumb/plumber.c +++ b/sys/src/cmd/plumb/plumber.c @@ -15,6 +15,7 @@ Ruleset **rules; int printerrors=1; jmp_buf parsejmp; char *lasterror; +char *srvname; void makeports(Ruleset *rules[]) @@ -38,6 +39,13 @@ mainproc(void *v) } void +usage(void) +{ + fprint(2, "usage: %s [-p plumbfile] [-s srvname]\n", argv0); + exits("usage"); +} + +void threadmain(int argc, char *argv[]) { char buf[512]; @@ -48,7 +56,13 @@ threadmain(int argc, char *argv[]) ARGBEGIN{ case 'p': - plumbfile = ARGF(); + plumbfile = EARGF(usage()); + break; + case 's': + srvname = EARGF(usage()); + break; + default: + usage(); break; }ARGEND |