control/noise: make Conn.readNLocked less surprising.
@@ -87,7 +87,7 @@ func (c *Conn) Peer() key.MachinePublic {
}
// readNLocked reads into c.rx.buf until buf contains at least total
-// bytes. Returns a slice of the available bytes in rxBuf, or an
+// bytes. Returns a slice of the total bytes in rxBuf, or an
// error if fewer than total bytes are available.
func (c *Conn) readNLocked(total int) ([]byte, error) {
if total > maxMessageSize {
@@ -95,7 +95,7 @@ func (c *Conn) readNLocked(total int) ([]byte, error) {
}
for {
if total <= c.rx.n {
- return c.rx.buf[:c.rx.n], nil
+ return c.rx.buf[:total], nil
}
n, err := c.conn.Read(c.rx.buf[c.rx.n:])
@@ -202,7 +202,6 @@ func (c *Conn) decryptOneLocked() error {
if err != nil {
return err
}
- bs = bs[:messageLen]
c.rx.next = len(bs)
