mirror of
https://github.com/netbirdio/netbird.git
synced 2025-06-20 01:38:41 +02:00
Return with the correct copied length (#3804)
This commit is contained in:
parent
fcd2c15a37
commit
cad2fe1f39
@ -234,7 +234,7 @@ func (s *SharedSocket) read(receiver receiver) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// ReadFrom reads packets received in the packetDemux channel
|
// ReadFrom reads packets received in the packetDemux channel
|
||||||
func (s *SharedSocket) ReadFrom(b []byte) (n int, addr net.Addr, err error) {
|
func (s *SharedSocket) ReadFrom(b []byte) (int, net.Addr, error) {
|
||||||
var pkt rcvdPacket
|
var pkt rcvdPacket
|
||||||
select {
|
select {
|
||||||
case <-s.ctx.Done():
|
case <-s.ctx.Done():
|
||||||
@ -263,8 +263,7 @@ func (s *SharedSocket) ReadFrom(b []byte) (n int, addr net.Addr, err error) {
|
|||||||
|
|
||||||
decodedLayers := make([]gopacket.LayerType, 0, 3)
|
decodedLayers := make([]gopacket.LayerType, 0, 3)
|
||||||
|
|
||||||
err = parser.DecodeLayers(pkt.buf, &decodedLayers)
|
if err := parser.DecodeLayers(pkt.buf, &decodedLayers); err != nil {
|
||||||
if err != nil {
|
|
||||||
return 0, nil, err
|
return 0, nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -273,8 +272,8 @@ func (s *SharedSocket) ReadFrom(b []byte) (n int, addr net.Addr, err error) {
|
|||||||
Port: int(udp.SrcPort),
|
Port: int(udp.SrcPort),
|
||||||
}
|
}
|
||||||
|
|
||||||
copy(b, payload)
|
n := copy(b, payload)
|
||||||
return int(udp.Length), remoteAddr, nil
|
return n, remoteAddr, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// WriteTo builds a UDP packet and writes it using the specific IP version writer
|
// WriteTo builds a UDP packet and writes it using the specific IP version writer
|
||||||
|
Loading…
x
Reference in New Issue
Block a user