IFF_VNET_HDR
ifr.ifr_flags = IFF_TAP | IFF_NO_PI | IFF_VNET_HDR;
if ((features & IFF_VNET_HDR) == 0) {
if (q->flags & IFF_VNET_HDR)
if (q->flags & IFF_VNET_HDR)
#define TAP_IFFEATURES (IFF_VNET_HDR | IFF_MULTI_QUEUE)
q->flags = IFF_VNET_HDR | IFF_NO_PI | IFF_TAP;
if (q->flags & IFF_VNET_HDR) {
if (q->flags & IFF_VNET_HDR) {
#define TUN_FEATURES (IFF_NO_PI | IFF_ONE_QUEUE | IFF_VNET_HDR | \
if (tun->flags & IFF_VNET_HDR) {
if (tun->flags & IFF_VNET_HDR) {
if (tun->flags & IFF_VNET_HDR)
if (nla_put_u8(skb, IFLA_TUN_VNET_HDR, !!(tun->flags & IFF_VNET_HDR)))
ifr.ifr_flags = IFF_TAP | IFF_NO_PI | IFF_VNET_HDR | IFF_MULTI_QUEUE;
flags = (variant->is_tap ? IFF_TAP : IFF_TUN) | IFF_VNET_HDR |
ifr.ifr_flags = IFF_TAP | IFF_NO_PI | IFF_VNET_HDR;