Selaa lähdekoodia

p2p: define DiscReason as uint8 (#24507)

All other implementations store disconnect reasons as a single byte,
so go-ethereum should do it too.
Felix Lange 3 vuotta sitten
vanhempi
commit
f8f8b3423b
2 muutettua tiedostoa jossa 4 lisäystä ja 4 poistoa
  1. 3 3
      p2p/peer.go
  2. 1 1
      p2p/peer_error.go

+ 3 - 3
p2p/peer.go

@@ -323,11 +323,11 @@ func (p *Peer) handle(msg Msg) error {
 			SendItems(p.rw, pongMsg)
 		})
 	case msg.Code == discMsg:
-		var reason [1]DiscReason
 		// This is the last message. We don't need to discard or
 		// check errors because, the connection will be closed after it.
-		rlp.Decode(msg.Payload, &reason)
-		return reason[0]
+		var m struct{ R DiscReason }
+		rlp.Decode(msg.Payload, &m)
+		return m.R
 	case msg.Code < baseProtocolLength:
 		// ignore other base protocol messages
 		return msg.Discard()

+ 1 - 1
p2p/peer_error.go

@@ -54,7 +54,7 @@ func (pe *peerError) Error() string {
 
 var errProtocolReturned = errors.New("protocol returned")
 
-type DiscReason uint
+type DiscReason uint8
 
 const (
 	DiscRequested DiscReason = iota