itAdd a commandline flag for allowing custom remote directory lists. - 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 57d5e502e50701fb1352feb2dd2453f5ab74ca7e /git/tordam/commit/57d5e502e50701fb1352feb2dd2453f5ab74ca7e.gph parazyd.org 70 1parent ece23839a13bb1e2ec29027902076e691f25525b /git/tordam/commit/ece23839a13bb1e2ec29027902076e691f25525b.gph parazyd.org 70 hAuthor: parazyd URL:mailto:parazyd@dyne.org parazyd.org 70 iDate: Mon, 3 Sep 2018 13:53:51 +0200 Err parazyd.org 70 i Err parazyd.org 70 iAdd a commandline flag for allowing custom remote directory lists. Err parazyd.org 70 i Err parazyd.org 70 iThe flag reads a comma-separated string and splits it into a slice of Err parazyd.org 70 istrings to be used with fetchDirlist(). Err parazyd.org 70 i Err parazyd.org 70 iDiffstat: Err parazyd.org 70 i M cmd/dam-client/main.go | 15 +++++++++------ Err parazyd.org 70 i Err parazyd.org 70 i1 file changed, 9 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@@ -35,6 +35,7 @@ import ( Err parazyd.org 70 i "os" Err parazyd.org 70 i "os/exec" Err parazyd.org 70 i "strconv" Err parazyd.org 70 i+ "strings" Err parazyd.org 70 i "sync" Err parazyd.org 70 i "time" Err parazyd.org 70 i Err parazyd.org 70 it@@ -45,12 +46,6 @@ type msgStruct struct { Err parazyd.org 70 i Secret string Err parazyd.org 70 i } Err parazyd.org 70 i Err parazyd.org 70 i-// Network entry points. These files hold the lists of directories we can Err parazyd.org 70 i-// announce to. Format is "DIR:22mobp7vrb7a4gt2.onion", other lines are ignored. Err parazyd.org 70 i-var dirHosts = []string{ Err parazyd.org 70 i- "https://dam.decodeproject.eu/dirs.txt", Err parazyd.org 70 i-} Err parazyd.org 70 i- Err parazyd.org 70 i func announce(dir string, vals map[string]string, privkey *rsa.PrivateKey) (bool, error) { Err parazyd.org 70 i msg, err := json.Marshal(vals) Err parazyd.org 70 i if err != nil { Err parazyd.org 70 it@@ -207,15 +202,23 @@ func fetchDirlist(locations []string) ([]string, error) { Err parazyd.org 70 i func main() { Err parazyd.org 70 i var d bool Err parazyd.org 70 i var ai int Err parazyd.org 70 i+ var dh string Err parazyd.org 70 i+ var dirHosts []string Err parazyd.org 70 i Err parazyd.org 70 i flag.BoolVar(&d, "d", false, "Don't fetch remote entry points") Err parazyd.org 70 i flag.IntVar(&ai, "ai", 10, "Announce interval in minutes") Err parazyd.org 70 i+ flag.StringVar(&dh, "dh", "https://dam.decodeproject.eu/dirs.txt", Err parazyd.org 70 i+ "A remote list of entry points/directories (comma-separated)") Err parazyd.org 70 i flag.Parse() Err parazyd.org 70 i Err parazyd.org 70 i if d { Err parazyd.org 70 i lib.Noremote = true Err parazyd.org 70 i } Err parazyd.org 70 i Err parazyd.org 70 i+ // Network entry points. These files hold the lists of directories we can Err parazyd.org 70 i+ // announce to. Format is "DIR:22mobp7vrb7a4gt2.onion", other lines are ignored. Err parazyd.org 70 i+ dirHosts = strings.Split(dh, ",") Err parazyd.org 70 i+ Err parazyd.org 70 i if _, err := os.Stat(lib.Cwd); os.IsNotExist(err) { Err parazyd.org 70 i err := os.Mkdir(lib.Cwd, 0700) Err parazyd.org 70 i lib.CheckError(err) Err parazyd.org 70 .