Skip to content

Commit

Permalink
add recover to acceptConnection
Browse files Browse the repository at this point in the history
  • Loading branch information
nkryuchkov committed Oct 22, 2024
1 parent 15e2599 commit c4e3cd6
Showing 1 changed file with 9 additions and 3 deletions.
12 changes: 9 additions & 3 deletions network/peers/connections/conn_handler.go
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,14 @@ func (ch *connHandler) Handle(logger *zap.Logger) *libp2pnetwork.NotifyBundle {
}

var ignoredConnection = errors.New("ignored connection")
acceptConnection := func(logger *zap.Logger, net libp2pnetwork.Network, conn libp2pnetwork.Conn) error {
acceptConnection := func(logger *zap.Logger, net libp2pnetwork.Network, conn libp2pnetwork.Conn) (err error) {
// Update PeerInfo with the result of this handshake.
defer func() {
if r := recover(); r != nil {
err = errors.Errorf("panic: %v", r)
}
}()

pid := conn.RemotePeer()

if !beginHandshake(pid) {
Expand Down Expand Up @@ -144,8 +151,7 @@ func (ch *connHandler) Handle(logger *zap.Logger) *libp2pnetwork.NotifyBundle {
// Connection is outbound -> Initiate handshake.
logger.Debug("initiating handshake")
ch.peerInfos.SetState(pid, peers.StateConnecting)
err := ch.handshaker.Handshake(logger, conn)
if err != nil {
if err := ch.handshaker.Handshake(logger, conn); err != nil {
return errors.Wrap(err, "could not handshake")
}
return nil
Expand Down

0 comments on commit c4e3cd6

Please sign in to comment.