summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrian May <brian@linuxpenguins.xyz>2015-11-11 13:09:59 +1100
committerBrian May <brian@linuxpenguins.xyz>2015-11-11 13:09:59 +1100
commit41b8ad4c9797c58e11cd3c562a77bbce907d1c9e (patch)
treeea4db44676c401527303f336f069009a49723236
parent0fb714893a5928cb4890c6027411525f9d824978 (diff)
parenta82224c1413bc415055609535d29cb527d8da48f (diff)
Merge pull request #25 from vieira/ns-hosts
Import resolvconf_nameservers, fix wrong types
-rw-r--r--src/client.py17
-rw-r--r--src/main.py2
2 files changed, 9 insertions, 10 deletions
diff --git a/src/client.py b/src/client.py
index 48be2fa..575d437 100644
--- a/src/client.py
+++ b/src/client.py
@@ -11,7 +11,8 @@ import ssh
import ssyslog
import sys
from ssnet import SockWrapper, Handler, Proxy, Mux, MuxWrapper
-from helpers import log, debug1, debug2, debug3, Fatal, islocal
+from helpers import log, debug1, debug2, debug3, Fatal, islocal, \
+ resolvconf_nameservers
recvmsg = None
try:
@@ -277,18 +278,17 @@ class MultiListener:
class FirewallClient:
def __init__(self, port_v6, port_v4, subnets_include, subnets_exclude,
- dnsport_v6, dnsport_v4, ns_hosts, method, udp):
+ dnsport_v6, dnsport_v4, nslist, method, udp):
self.auto_nets = []
self.subnets_include = subnets_include
self.subnets_exclude = subnets_exclude
- self.ns_hosts = ns_hosts
argvbase = ([sys.argv[1], sys.argv[0], sys.argv[1]] +
['-v'] * (helpers.verbose or 0) +
['--firewall', str(port_v6), str(port_v4),
str(dnsport_v6), str(dnsport_v4),
method, str(int(udp))])
if dnsport_v4 or dnsport_v6:
- argvbase += ['--ns-hosts', ns_hosts]
+ argvbase += ['--ns-hosts', ' '.join([ip for _, ip in nslist])]
if ssyslog._p:
argvbase += ['--syslog']
argv_tries = [
@@ -602,7 +602,7 @@ def _main(tcp_listener, udp_listener, fw, ssh_cmd, remotename,
def main(listenip_v6, listenip_v4,
- ssh_cmd, remotename, python, latency_control, dns, ns_hosts,
+ ssh_cmd, remotename, python, latency_control, dns, nslist,
method, seed_hosts, auto_nets,
subnets_include, subnets_exclude, syslog, daemon, pidfile):
@@ -698,9 +698,9 @@ def main(listenip_v6, listenip_v4,
udp_listener.print_listening("UDP redirector")
bound = False
- if dns or ns_hosts:
+ if dns or nslist:
if dns:
- ns_hosts += resolvconf_nameservers()
+ nslist += resolvconf_nameservers()
# search for spare port for DNS
debug2('Binding DNS:')
ports = xrange(12300, 9000, -1)
@@ -740,10 +740,9 @@ def main(listenip_v6, listenip_v4,
dnsport_v6 = 0
dnsport_v4 = 0
dns_listener = None
- ns_hosts = []
fw = FirewallClient(redirectport_v6, redirectport_v4, subnets_include,
- subnets_exclude, dnsport_v6, dnsport_v4, ns_hosts,
+ subnets_exclude, dnsport_v6, dnsport_v4, nslist,
method, udp)
if fw.method == "tproxy":
diff --git a/src/main.py b/src/main.py
index 135f06f..b7d7f70 100644
--- a/src/main.py
+++ b/src/main.py
@@ -215,7 +215,7 @@ try:
opt.python,
opt.latency_control,
opt.dns,
- opt.ns_hosts,
+ nslist,
method,
sh,
opt.auto_nets,