summaryrefslogtreecommitdiff
path: root/sys/src/cmd/sshfs.c
diff options
context:
space:
mode:
authoraiju <devnull@localhost>2017-04-29 18:44:01 +0000
committeraiju <devnull@localhost>2017-04-29 18:44:01 +0000
commitca2fa9596b5d0d893be28c6e8fd8a52a89a0c3c6 (patch)
tree4b927da233a228a07de990f1b12334da9fd2929d /sys/src/cmd/sshfs.c
parentb4b2cd72b0e674300e5ec0030967621a05049c35 (diff)
sshfs: add -r and -M options
Diffstat (limited to 'sys/src/cmd/sshfs.c')
-rw-r--r--sys/src/cmd/sshfs.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/src/cmd/sshfs.c b/sys/src/cmd/sshfs.c
index eaa32cb9d..d8687900f 100644
--- a/sys/src/cmd/sshfs.c
+++ b/sys/src/cmd/sshfs.c
@@ -7,6 +7,7 @@
int readonly;
int debug;
+char *root = ".";
#define dprint(...) if(debug) fprint(2, __VA_ARGS__)
#pragma varargck type "Σ" int
@@ -732,7 +733,8 @@ sshfsattach(Req *r)
if(r->ifcall.aname != nil && *r->ifcall.aname != 0)
sf->fn = strdup(r->ifcall.aname);
else
- sf->fn = strdup(".");
+ sf->fn = strdup(root);
+ root = ".";
sf->qid = (Qid){qidcalc(sf->fn), 0, QTDIR};
r->ofcall.qid = sf->qid;
r->fid->qid = sf->qid;
@@ -1332,10 +1334,12 @@ threadmain(int argc, char **argv)
case 'a': mflag |= MAFTER; break;
case 'b': mflag |= MBEFORE; break;
case 'm': mtpt = EARGF(usage()); break;
+ case 'M': mtpt = nil; break;
case 'u': uidfile = EARGF(usage()); break;
case 'U': uidfile = nil; break;
case 'g': gidfile = EARGF(usage()); break;
case 'G': gidfile = nil; break;
+ case 'r': root = EARGF(usage()); break;
default: usage();
}ARGEND;