Eric Bower
·
2026-05-31
1package rsyncreceiver
2
3import "io"
4
5// rsync/token.c:recvToken.
6func (rt *Transfer) recvToken() (token int32, data []byte, _ error) {
7 var err error
8 token, err = rt.Conn.ReadInt32()
9 if err != nil {
10 return 0, nil, err
11 }
12 if token <= 0 {
13 return token, nil, nil
14 }
15 data = make([]byte, int(token))
16 if _, err := io.ReadFull(rt.Conn.Reader, data); err != nil {
17 return 0, nil, err
18 }
19 return token, data, nil
20}