fileshare: set read header deadline

This commit is contained in:
rkonfj 2024-08-03 19:47:23 +08:00
parent 52cbe24bf2
commit ee221b1d9e
No known key found for this signature in database
GPG Key ID: 9595E3A991503741

View File

@ -11,6 +11,7 @@ import (
"path"
"strconv"
"strings"
"time"
"github.com/rkonfj/peerguard/disco"
"github.com/rkonfj/peerguard/rdt"
@ -31,10 +32,12 @@ func (h *FileHandle) Handshake(offset uint32, sha256Checksum []byte) error {
return err
}
header := make([]byte, 5)
h.c.SetReadDeadline(time.Now().Add(5 * time.Second))
_, err = io.ReadFull(h.c, header)
if err != nil {
return err
return fmt.Errorf("read header: %w", err)
}
h.c.SetReadDeadline(time.Time{})
switch header[0] {
case 0:
case 20: