les: fix peer id and reply error handling (#19289)
* les: fixed peer id format * les: fixed peer reply error handling
This commit is contained in:
		
							parent
							
								
									e7d1867964
								
							
						
					
					
						commit
						c53c5e616f
					
				| @ -329,6 +329,11 @@ func (pm *ProtocolManager) handle(p *peer) error { | ||||
| // handleMsg is invoked whenever an inbound message is received from a remote
 | ||||
| // peer. The remote connection is torn down upon returning any error.
 | ||||
| func (pm *ProtocolManager) handleMsg(p *peer) error { | ||||
| 	select { | ||||
| 	case err := <-p.errCh: | ||||
| 		return err | ||||
| 	default: | ||||
| 	} | ||||
| 	// Read the next message from the remote peer, and ensure it's fully consumed
 | ||||
| 	msg, err := p.rw.ReadMsg() | ||||
| 	if err != nil { | ||||
| @ -389,7 +394,10 @@ func (pm *ProtocolManager) handleMsg(p *peer) error { | ||||
| 		if reply != nil { | ||||
| 			p.queueSend(func() { | ||||
| 				if err := reply.send(bv); err != nil { | ||||
| 					p.errCh <- err | ||||
| 					select { | ||||
| 					case p.errCh <- err: | ||||
| 					default: | ||||
| 					} | ||||
| 				} | ||||
| 			}) | ||||
| 		} | ||||
|  | ||||
| @ -98,15 +98,14 @@ type peer struct { | ||||
| } | ||||
| 
 | ||||
| func newPeer(version int, network uint64, isTrusted bool, p *p2p.Peer, rw p2p.MsgReadWriter) *peer { | ||||
| 	id := p.ID() | ||||
| 
 | ||||
| 	return &peer{ | ||||
| 		Peer:      p, | ||||
| 		rw:        rw, | ||||
| 		version:   version, | ||||
| 		network:   network, | ||||
| 		id:        fmt.Sprintf("%x", id), | ||||
| 		id:        fmt.Sprintf("%x", p.ID().Bytes()), | ||||
| 		isTrusted: isTrusted, | ||||
| 		errCh:     make(chan error, 1), | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user