add peer discovery

This commit is contained in:
Zack Scholl 2018-06-30 11:01:00 -07:00
parent f7c22067d4
commit 2c444ad400
1 changed files with 7 additions and 5 deletions

View File

@ -24,9 +24,10 @@ func (c *Croc) Relay() error {
// Send will take an existing file or folder and send it through the croc relay
func (c *Croc) Send(fname string, codephrase string) (err error) {
// start relay for listening
c.TcpPorts = []string{"27140,27141"}
c.ServerPort = "8140"
go c.Relay()
go func() {
go c.startRelay([]string{"27140,27141"})
go c.startServer([]string{"27140,27141"}, "8140")
}()
// start client
return c.client(0, codephrase, fname)
@ -46,13 +47,14 @@ func (c *Croc) Receive(codephrase string) (err error) {
}
if len(discovered) > 0 {
log.Debugf("discovered %s on %s", discovered[0].Payload, discovered[0].Address)
_, connectTimeout := net.DialTimeout("tcp", discovered[0].Address+":27001", 1*time.Second)
_, connectTimeout := net.DialTimeout("tcp", discovered[0].Address+":27140", 1*time.Second)
if connectTimeout == nil {
log.Debug("connected")
c.WebsocketAddress = "ws://" + discovered[0].Address + ":8140"
log.Debug(discovered[0].Address)
codephrase = string(discovered[0].Payload)
} else {
log.Debug("but could not connect to ports")
}
} else {
log.Debug("discovered no peers")