diff options
Diffstat (limited to 'net/tap-linux.c')
-rw-r--r-- | net/tap-linux.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/net/tap-linux.c b/net/tap-linux.c index b6f1fad5e4..0f621a2315 100644 --- a/net/tap-linux.c +++ b/net/tap-linux.c @@ -112,6 +112,18 @@ int tap_probe_vnet_hdr(int fd) return ifr.ifr_flags & IFF_VNET_HDR; } +int tap_probe_has_ufo(int fd) +{ + unsigned offload; + + offload = TUN_F_CSUM | TUN_F_UFO; + + if (ioctl(fd, TUNSETOFFLOAD, offload) < 0) + return 0; + + return 1; +} + void tap_fd_set_offload(int fd, int csum, int tso4, int tso6, int ecn, int ufo) { |