p2p: remove Msg.Value and MsgLoop

This commit is contained in:
Felix Lange
2014-11-25 16:01:39 +01:00
parent f816fdcb69
commit 9b85002b70
3 changed files with 19 additions and 49 deletions

View File

@ -41,13 +41,6 @@ func encodePayload(params ...interface{}) []byte {
return buf.Bytes()
}
// Value returns the decoded RLP payload items in a message.
func (msg Msg) Value() (*ethutil.Value, error) {
var v []interface{}
err := msg.Decode(&v)
return ethutil.NewValue(v), err
}
// Decode parse the RLP content of a message into
// the given value, which must be a pointer.
//
@ -84,31 +77,6 @@ type MsgReadWriter interface {
MsgWriter
}
// MsgLoop reads messages off the given reader and
// calls the handler function for each decoded message until
// it returns an error or the peer connection is closed.
//
// If a message is larger than the given maximum size,
// MsgLoop returns an appropriate error.
func MsgLoop(r MsgReader, maxsize uint32, f func(code uint64, data *ethutil.Value) error) error {
for {
msg, err := r.ReadMsg()
if err != nil {
return err
}
if msg.Size > maxsize {
return newPeerError(errInvalidMsg, "size %d exceeds maximum size of %d", msg.Size, maxsize)
}
value, err := msg.Value()
if err != nil {
return err
}
if err := f(msg.Code, value); err != nil {
return err
}
}
}
var magicToken = []byte{34, 64, 8, 145}
func writeMsg(w io.Writer, msg Msg) error {