]> arthur.barton.de Git - bup.git/commitdiff
cmd/daemon: pass extra options along to 'bup server'.
authorAvery Pennarun <apenwarr@gmail.com>
Sun, 13 Feb 2011 10:18:57 +0000 (02:18 -0800)
committerAvery Pennarun <apenwarr@gmail.com>
Sun, 13 Feb 2011 13:02:21 +0000 (05:02 -0800)
Currently 'bup server' doesn't take any options, but that might change
someday.

Also use a '--' to separate the bup mux command from its arguments, so it
doesn't accidentally try to parse them.  This didn't matter before (since
none of the options we were passing along started with a dash) but if the
user provides extra options, it might matter.

Signed-off-by: Avery Pennarun <apenwarr@gmail.com>
cmd/daemon-cmd.py

index 715b656c8542b3927dabfcbfe5501dfb40e9080e..0b274f71e4a75cae9f2ecdd23da2e935ceea979e 100755 (executable)
@@ -4,15 +4,13 @@ from bup import options, path
 from bup.helpers import *
 
 optspec = """
-bup daemon [options...]
+bup daemon [options...] -- [bup-server options...]
 --
 l,listen  ip address to listen on, defaults to *
 p,port    port to listen on, defaults to 1982
 """
 o = options.Options(optspec, optfunc=getopt.getopt)
 (opt, flags, extra) = o.parse(sys.argv[1:])
-if extra:
-    o.fatal('no arguments expected')
 
 host = opt.listen
 port = opt.port and int(opt.port) or 1982
@@ -51,7 +49,7 @@ try:
         for l in rl:
             s, src = l.accept()
             log("Socket accepted connection from %s\n" % (src,))
-            sp = subprocess.Popen([path.exe(), 'mux', 'server'],
+            sp = subprocess.Popen([path.exe(), 'mux', '--', 'server'] + extra,
                                   stdin=os.dup(s.fileno()), stdout=os.dup(s.fileno()))
             s.close()
 finally: