itUse argparse in damhs.py. - tordam - A library for peer discovery inside the Tor network Err parazyd.org 70 hgit clone https://git.parazyd.org/tordam URL:https://git.parazyd.org/tordam parazyd.org 70 1Log /git/tordam/log.gph parazyd.org 70 1Files /git/tordam/files.gph parazyd.org 70 1Refs /git/tordam/refs.gph parazyd.org 70 1README /git/tordam/file/README.md.gph parazyd.org 70 1LICENSE /git/tordam/file/LICENSE.gph parazyd.org 70 i--- Err parazyd.org 70 1commit 06e03f40cc8014ace861696e1089cbda15154638 /git/tordam/commit/06e03f40cc8014ace861696e1089cbda15154638.gph parazyd.org 70 1parent 6d8fac0b3c2775ae45669b3ed69fc6a113e5388a /git/tordam/commit/6d8fac0b3c2775ae45669b3ed69fc6a113e5388a.gph parazyd.org 70 hAuthor: parazyd URL:mailto:parazyd@dyne.org parazyd.org 70 iDate: Wed, 26 Dec 2018 09:58:28 -0500 Err parazyd.org 70 i Err parazyd.org 70 iUse argparse in damhs.py. Err parazyd.org 70 i Err parazyd.org 70 iDiffstat: Err parazyd.org 70 i M cmd/dam-client/main.go | 5 +++-- Err parazyd.org 70 i M python/damhs.py | 19 +++++++++++++++---- Err parazyd.org 70 i Err parazyd.org 70 i2 files changed, 18 insertions(+), 6 deletions(-) Err parazyd.org 70 i--- Err parazyd.org 70 1diff --git a/cmd/dam-client/main.go b/cmd/dam-client/main.go /git/tordam/file/cmd/dam-client/main.go.gph parazyd.org 70 it@@ -37,8 +37,9 @@ import ( Err parazyd.org 70 i "sync" Err parazyd.org 70 i "time" Err parazyd.org 70 i Err parazyd.org 70 i- lib "github.com/parazyd/tor-dam/pkg/damlib" Err parazyd.org 70 i "golang.org/x/crypto/ed25519" Err parazyd.org 70 i+ Err parazyd.org 70 i+ lib "github.com/parazyd/tor-dam/pkg/damlib" Err parazyd.org 70 i ) Err parazyd.org 70 i Err parazyd.org 70 i type msgStruct struct { Err parazyd.org 70 it@@ -251,7 +252,7 @@ func main() { Err parazyd.org 70 i } Err parazyd.org 70 i Err parazyd.org 70 i log.Println("Starting up the hidden service.") Err parazyd.org 70 i- cmd := exec.Command("damhs.py", lib.PrivKeyPath, lib.TorPortMap) Err parazyd.org 70 i+ cmd := exec.Command("damhs.py", "-k", lib.PrivKeyPath, "-p", lib.TorPortMap) Err parazyd.org 70 i defer cmd.Process.Kill() Err parazyd.org 70 i stdout, err := cmd.StdoutPipe() Err parazyd.org 70 i lib.CheckError(err) Err parazyd.org 70 1diff --git a/python/damhs.py b/python/damhs.py /git/tordam/file/python/damhs.py.gph parazyd.org 70 it@@ -26,8 +26,10 @@ Usage: damhs.py Err parazyd.org 70 i following element: 80:49371 (80 is the remote, 49371 is local) Err parazyd.org 70 i """ Err parazyd.org 70 i Err parazyd.org 70 i-from sys import argv, stdout Err parazyd.org 70 i+from argparse import ArgumentParser Err parazyd.org 70 i+from sys import stdout Err parazyd.org 70 i from time import sleep Err parazyd.org 70 i+ Err parazyd.org 70 i from stem.control import Controller Err parazyd.org 70 i Err parazyd.org 70 i Err parazyd.org 70 it@@ -44,16 +46,25 @@ def main(): Err parazyd.org 70 i """ Err parazyd.org 70 i Main loop Err parazyd.org 70 i """ Err parazyd.org 70 i+ parser = ArgumentParser() Err parazyd.org 70 i+ parser.add_argument('-k', '--private-key', Err parazyd.org 70 i+ help='Path to the ed25519 private key', Err parazyd.org 70 i+ default='/home/decode/.dam/private.key') Err parazyd.org 70 i+ parser.add_argument('-p', '--port-map', action='store_true', Err parazyd.org 70 i+ help='Comma-separated string of local:remote ports', Err parazyd.org 70 i+ default='80:49731,5000:5000') Err parazyd.org 70 i+ args = parser.parse_args() Err parazyd.org 70 i+ Err parazyd.org 70 i ctl = Controller.from_port() Err parazyd.org 70 i ctl.authenticate(password='topkek') Err parazyd.org 70 i Err parazyd.org 70 i portmap = {} Err parazyd.org 70 i- ports = argv[2].split(',') Err parazyd.org 70 i+ ports = args.port_map.split(',') Err parazyd.org 70 i for i in ports: Err parazyd.org 70 i tup = i.split(':') Err parazyd.org 70 i portmap[int(tup[0])] = int(tup[1]) Err parazyd.org 70 i Err parazyd.org 70 i- keyfile = argv[1] Err parazyd.org 70 i+ keyfile = args.private_key Err parazyd.org 70 i ktype = 'ED25519-V3' Err parazyd.org 70 i kcont = open(keyfile).read() Err parazyd.org 70 i Err parazyd.org 70 it@@ -63,7 +74,7 @@ def main(): Err parazyd.org 70 i stdout.write('OK\n') Err parazyd.org 70 i stdout.flush() Err parazyd.org 70 i while True: Err parazyd.org 70 i- sleep(60) Err parazyd.org 70 i+ sleep(60) Err parazyd.org 70 i Err parazyd.org 70 i Err parazyd.org 70 i if __name__ == '__main__': Err parazyd.org 70 .