| 203 | } |
| 204 | |
| 205 | func (rp *remotePeer) accept() { |
| 206 | conns := []net.Conn{} |
| 207 | |
| 208 | for { |
| 209 | conn, err := rp.listener.Accept() |
| 210 | if err != nil { |
| 211 | golog.Printf("Failed to accept conn: %+v", err) |
| 212 | for _, conn := range conns { |
| 213 | _ = conn.Close() |
| 214 | } |
| 215 | return |
| 216 | } |
| 217 | |
| 218 | pc, err := testInboundPeerConn(conn, rp.Config, rp.PrivKey) |
| 219 | if err != nil { |
| 220 | golog.Fatalf("Failed to create a peer: %+v", err) |
| 221 | } |
| 222 | |
| 223 | _, err = handshake(pc.conn, time.Second, rp.nodeInfo()) |
| 224 | if err != nil { |
| 225 | golog.Fatalf("Failed to perform handshake: %+v", err) |
| 226 | } |
| 227 | |
| 228 | conns = append(conns, conn) |
| 229 | } |
| 230 | } |
| 231 | |
| 232 | func (rp *remotePeer) nodeInfo() NodeInfo { |
| 233 | return DefaultNodeInfo{ |