conn: simplify supportsUDPOffload
This allows a kernel to support UDP_GRO while not supporting UDP_SEGMENT. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
This commit is contained in:
parent
42ec952ead
commit
177caa7e44
@ -18,15 +18,9 @@ func supportsUDPOffload(conn *net.UDPConn) (txOffload, rxOffload bool) {
|
||||
}
|
||||
err = rc.Control(func(fd uintptr) {
|
||||
_, errSyscall := unix.GetsockoptInt(int(fd), unix.IPPROTO_UDP, unix.UDP_SEGMENT)
|
||||
if errSyscall != nil {
|
||||
return
|
||||
}
|
||||
txOffload = true
|
||||
txOffload = errSyscall == nil
|
||||
opt, errSyscall := unix.GetsockoptInt(int(fd), unix.IPPROTO_UDP, unix.UDP_GRO)
|
||||
if errSyscall != nil {
|
||||
return
|
||||
}
|
||||
rxOffload = opt == 1
|
||||
rxOffload = errSyscall == nil && opt == 1
|
||||
})
|
||||
if err != nil {
|
||||
return false, false
|
||||
|
Loading…
Reference in New Issue
Block a user