33 lines
887 B
Go
33 lines
887 B
Go
package main
|
|
|
|
import (
|
|
"flag"
|
|
"fmt"
|
|
)
|
|
|
|
func main() {
|
|
var address string
|
|
var listenAddress string
|
|
var listenPort int
|
|
var name string
|
|
var await string
|
|
var port int
|
|
var shouldDial bool
|
|
|
|
flag.StringVar(&name, "name", "Alpha", "Our name")
|
|
flag.StringVar(&await, "await", "", "Target's name to await")
|
|
flag.StringVar(&listenAddress, "listen-address", "", "Address to listen from")
|
|
flag.IntVar(&listenPort, "listen-port", 10300, "Port to listen from")
|
|
flag.StringVar(&address, "signal-address", "127.0.0.1", "Server to dial")
|
|
flag.IntVar(&port, "port", 10300, "Port to dial or listen")
|
|
flag.BoolVar(&shouldDial, "dial", false, "Whether to dial target address or not")
|
|
flag.Parse()
|
|
|
|
if shouldDial {
|
|
handshakee(fmt.Sprintf("%s:%d", address, port), fmt.Sprintf("%s:%d", listenAddress, listenPort), name, await)
|
|
} else {
|
|
handshaker(fmt.Sprintf("%s:%d", address, port))
|
|
}
|
|
|
|
}
|