func main() { flag.Parse() l, err := util.Listen() if err != nil { log.Fatal(err) } go accept(l) self := l.Addr().String() err = util.RegisterPeer(self) if err != nil { log.Fatal(err) } go poll(self) readInput() }
func listen() { l, err := util.Listen() if err != nil { log.Fatal(err) } err = util.RegisterPeer(l.Addr().String()) if err != nil { log.Fatal(err) } for { c, err := l.Accept() if err != nil { log.Println(err) continue } go handle(c) } }