my network connection is pretty unreliable and i loose my connection to sources often. this patch automatically removes /srv/sources and tries again if the first mount fails. Notes: Mon Apr 10 12:08:21 EDT 2006 rsc Thanks. srv(4) already does this so I changed 9fs to use it more. Reference: /n/sources/patch/sorry/9fs-sources-antihangup Date: Sun Apr 9 04:14:15 CES 2006 Signed-off-by: quanstro@quanstro.net Reviewed-by: rsc --- /rc/bin/9fs Sun Apr 9 04:10:23 2006 +++ /rc/bin/9fs Sun Apr 9 04:10:19 2006 @@ -1,4 +1,15 @@ #!/bin/rc + +rfork e +fn srvmnt { + srv -q $1 $2 + mount -n /srv/$2 $3 >[2=] || { + rm -f /srv/$2 + srv -q $1 $2 + mount -n /srv/$2 /$3 + } +} + switch($1){ case '' echo usage: 9fs service '[mountpoint]' >[1=2] @@ -20,8 +31,7 @@ case juke srv -q il!jukefs && mount /srv/il!jukefs /n/njuke && bind -c /n/njuke/juke /n/juke case sources - srv -q tcp!sources.cs.bell-labs.com sources - mount -n /srv/sources /n/sources + srvmnt tcp!sources.cs.bell-labs.com sources /n/sources case sourcesdump 9fs sources mount /srv/sources /n/sourcesdump main/archive @@ -29,8 +39,7 @@ 9fs sources mount /srv/sources /n/sourcessnap main/snapshot case wiki - srv 'net!plan9.bell-labs.com!wiki' wiki - mount /srv/wiki /mnt/wiki + srvmnt 'net!plan9.bell-labs.com!wiki' wiki /mnt/wiki case * switch($#*){ case 1