code: func (req *pingV4) preverify(t *UDPv4, from *net.UDPAddr, fromID enode.ID, fromKey encPubkey) error {
  	if expired(req.Expiration) {
  		return errExpired
  	}
  	key, err := decodePubkey(fromKey)
  	if err != nil {
  		return errors.New("invalid public key")
  	}
  	req.senderKey = key
  	return nil
  }
docs: // Packet Handlers