diff options
author | rsc <devnull@localhost> | 2003-12-11 17:48:38 +0000 |
---|---|---|
committer | rsc <devnull@localhost> | 2003-12-11 17:48:38 +0000 |
commit | 32f69c36e0eec1227934bbd34854bfebd88686f2 (patch) | |
tree | 1587e9de84816b77168afa81c1594cc686809910 /src/lib9/rfork.c | |
parent | ac244f8d287a6119155ea672c8fd13c487c5e4c7 (diff) | |
download | plan9port-32f69c36e0eec1227934bbd34854bfebd88686f2.tar.gz plan9port-32f69c36e0eec1227934bbd34854bfebd88686f2.tar.bz2 plan9port-32f69c36e0eec1227934bbd34854bfebd88686f2.zip |
Add support for user-level 9P servers/clients and various bug fixes to go with them.
Diffstat (limited to 'src/lib9/rfork.c')
-rw-r--r-- | src/lib9/rfork.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/lib9/rfork.c b/src/lib9/rfork.c index 270c3cdd..f3a21928 100644 --- a/src/lib9/rfork.c +++ b/src/lib9/rfork.c @@ -9,7 +9,7 @@ p9rfork(int flags) if((flags&(RFPROC|RFFDG|RFMEM)) == (RFPROC|RFFDG)){ /* check other flags before we commit */ flags &= ~(RFPROC|RFFDG); - if(flags & ~(RFNOTEG)){ + if(flags & ~(RFNOTEG|RFNAMEG)){ werrstr("unknown flags %08ux in rfork", flags); return -1; } @@ -17,11 +17,14 @@ p9rfork(int flags) if(pid != 0) return pid; } - if(flags&RFPROC){ - werrstr("cannot use rfork to fork -- use ffork"); + werrstr("cannot use rfork for shared memory -- use ffork"); return -1; } + if(flags&RFNAMEG){ + /* XXX set $NAMESPACE to a new directory */ + flags &= ~RFNAMEG; + } if(flags&RFNOTEG){ setpgid(0, getpid()); flags &= ~RFNOTEG; |