Add socket support
This commit is contained in:
parent
26aa3ab364
commit
f9f2d53556
4 changed files with 59 additions and 9 deletions
|
|
@ -45,16 +45,17 @@ class Setup(object):
|
|||
self._add_host(host)
|
||||
if 'ports' not in self.setup[host]:
|
||||
self.setup[host]['ports'] = []
|
||||
ports_l = [[int(v) for v in sp.split(':')] for sp in ports.split(',')]
|
||||
ports_l = [
|
||||
[
|
||||
int(v) if not v.startswith('unix:') else v
|
||||
for v in sp.split(':', 1)
|
||||
] for sp in ports.split(',')
|
||||
]
|
||||
for port in ports_l:
|
||||
assert len(port) == 2
|
||||
if port not in self.setup[host]['ports']:
|
||||
self.setup[host]['ports'].append(port)
|
||||
|
||||
def _get_ip(self):
|
||||
for host in self.setup:
|
||||
self.setup[host]['ip'] = str(socket.gethostbyname(host))
|
||||
|
||||
def _get_key(self, host, key):
|
||||
self._add_host(host)
|
||||
assert len(key) > 800
|
||||
|
|
@ -104,14 +105,15 @@ class Setup(object):
|
|||
temp = env.get_template(self.torrc_template)
|
||||
with open(self.torrc, mode='w') as f:
|
||||
f.write(temp.render(setup=self.setup,
|
||||
env=os.environ))
|
||||
env=os.environ,
|
||||
type=type,
|
||||
int=int))
|
||||
|
||||
def setup_hosts(self):
|
||||
self.setup = {}
|
||||
try:
|
||||
self._get_setup_from_env()
|
||||
self._get_setup_from_links()
|
||||
self._get_ip()
|
||||
self._set_keys()
|
||||
self._set_conf()
|
||||
except:
|
||||
|
|
|
|||
|
|
@ -1,8 +1,9 @@
|
|||
{% for service, conf in setup.items() %}
|
||||
HiddenServiceDir /var/lib/tor/hidden_service/{{service}}
|
||||
{% for ports in conf['ports'] %}
|
||||
{% set map = ports[1] if type(ports[1]) != int else '{service}:{port}'.format(service=service, port=ports[1]) %}
|
||||
# PORT {{service}} {{ports[0]}}
|
||||
HiddenServicePort {{ports[0]}} {{service}}:{{ports[1]}}
|
||||
HiddenServicePort {{ports[0]}} {{map}}
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue