Added --exclude-from feature.

(Slightly modified by apenwarr)
This commit is contained in:
Tianyi Cui 2011-04-19 20:19:06 +08:00 committed by Avery Pennarun
parent bff1610050
commit 29d2e06bf5
2 changed files with 7 additions and 0 deletions

View File

@ -94,6 +94,10 @@ entire subnet to the VPN.
`0/0 -x 1.2.3.0/24` to forward everything except the `0/0 -x 1.2.3.0/24` to forward everything except the
local subnet over the VPN, for example. local subnet over the VPN, for example.
--exclude-from=*file*
: exclude the subnets specified in a file, one subnet per
line. Useful when you have lots of subnets to exclude.
-v, --verbose -v, --verbose
: print more information about the session. This option : print more information about the session. This option
can be used more than once for increased verbosity. By can be used more than once for increased verbosity. By

View File

@ -57,6 +57,7 @@ dns capture local DNS requests and forward to the remote DNS server
python= path to python interpreter on the remote server python= path to python interpreter on the remote server
r,remote= ssh hostname (and optional username) of remote sshuttle server r,remote= ssh hostname (and optional username) of remote sshuttle server
x,exclude= exclude this subnet (can be used more than once) x,exclude= exclude this subnet (can be used more than once)
exclude-from= exclude the subnets in a file (whitespace separated)
v,verbose increase debug message verbosity v,verbose increase debug message verbosity
e,ssh-cmd= the command to use to connect to the remote [ssh] e,ssh-cmd= the command to use to connect to the remote [ssh]
seed-hosts= with -H, use these hostnames for initial scan (comma-separated) seed-hosts= with -H, use these hostnames for initial scan (comma-separated)
@ -104,6 +105,8 @@ try:
for k,v in flags: for k,v in flags:
if k in ('-x','--exclude'): if k in ('-x','--exclude'):
excludes.append(v) excludes.append(v)
if k in ('-X', '--exclude-from'):
excludes += open(v).read().split()
remotename = opt.remote remotename = opt.remote
if remotename == '' or remotename == '-': if remotename == '' or remotename == '-':
remotename = None remotename = None