diff --git a/conn/client.go b/conn/client.go index 2b668dc05c65cd02f80f01529581d81369589696..27bdd904426bde046b767db6e653d7b29c957430 100644 --- a/conn/client.go +++ b/conn/client.go @@ -42,11 +42,7 @@ func (c *ClientCodec) ReadResponseHeader(r *rpc.Response) error { func (c *ClientCodec) ReadResponseBody(body interface{}) error { buf := make([]byte, c.payloadLen) - n, err := c.Rwc.Read(buf) - if n != int(c.payloadLen) { - return fmt.Errorf("ClientCodec expected: %d. Got: %d\n", c.payloadLen, n) - } - + _, err := io.ReadFull(c.Rwc, buf) reply := body.(*Reply) reply.Data = buf return err diff --git a/conn/server.go b/conn/server.go index e3e7c4dba08316abf6c9a933b21c8751fd5a9147..7085d35305d27dac7717f0c03a1aca6e40e4757a 100644 --- a/conn/server.go +++ b/conn/server.go @@ -1,7 +1,6 @@ package conn import ( - "errors" "io" "log" "net/rpc" @@ -18,12 +17,9 @@ func (c *ServerCodec) ReadRequestHeader(r *rpc.Request) error { func (c *ServerCodec) ReadRequestBody(data interface{}) error { b := make([]byte, c.payloadLen) - n, err := c.Rwc.Read(b) + _, err := io.ReadFull(c.Rwc, b) if err != nil { - log.Fatal("server", err) - } - if n != int(c.payloadLen) { - return errors.New("ServerCodec unable to read request.") + return err } if data == nil {