Skip to content

Commit c7176b3

Browse files
committed
rework recv debug messages to be context-added errors
1 parent d9ce3ca commit c7176b3

File tree

1 file changed

+12
-12
lines changed

1 file changed

+12
-12
lines changed

packet.go

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -313,12 +313,11 @@ func recvPacket(r io.Reader, alloc *allocator, orderID uint32) (fxp, []byte, err
313313
}
314314

315315
if n, err := io.ReadFull(r, b[:4]); err != nil {
316-
debug("recv length %d of %d bytes: err %v", n, 4, err)
317-
if n > 0 {
318-
debug("recv length error: bytes %x", b[:n])
316+
if err == io.EOF {
317+
return 0, nil, err
319318
}
320319

321-
return 0, nil, err
320+
return 0, nil, fmt.Errorf("error reading packet length: %d of 4: %w", n, err)
322321
}
323322

324323
length, _ := unmarshalUint32(b)
@@ -335,25 +334,26 @@ func recvPacket(r io.Reader, alloc *allocator, orderID uint32) (fxp, []byte, err
335334
b = make([]byte, length)
336335
}
337336

338-
if n, err := io.ReadFull(r, b[:length]); err != nil {
339-
// Log this error message _before_ we potentially override it.
340-
debug("recv packet %d of %d bytes: err %v", n, length, err)
337+
n, err := io.ReadFull(r, b[:length])
338+
b = b[:n]
339+
340+
if err != nil {
341+
debug("recv packet error: %d of %d bytes: %x", n, length, b)
341342

342343
// ReadFull only returns EOF if it has read no bytes.
343344
// In this case, that means a partial packet, and thus unexpected.
344345
if err == io.EOF {
345346
err = io.ErrUnexpectedEOF
346347
}
347348

348-
if n > 0 {
349-
n := min(32, n) // limit bytes dump to 32-bytes.
350-
debug("recv packet error: bytes %x", b[:n])
349+
if n == 0 {
350+
return 0, nil, fmt.Errorf("error reading packet body: %d of %d: %w", n, length, err)
351351
}
352352

353-
return 0, nil, err
353+
return 0, nil, fmt.Errorf("error reading packet body: %d of %d: (%s) %w", n, length, fxp(b[0]), err)
354354
}
355355

356-
typ, payload := fxp(b[0]), b[1:length]
356+
typ, payload := fxp(b[0]), b[1:n]
357357

358358
if debugDumpRxPacketBytes {
359359
debug("recv packet: %s %d bytes %x", typ, length, payload)

0 commit comments

Comments
 (0)