]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/linux/if_tun.h
tun: Allow GSO using virtio_net_hdr
[linux-2.6-omap-h63xx.git] / include / linux / if_tun.h
index 8c71fe2fb1f56820b391be62de8979b6c80bc126..563fae542da621c90017f623af2da3478030e2b5 100644 (file)
@@ -11,8 +11,6 @@
  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  *  GNU General Public License for more details.
- *
- *  $Id: if_tun.h,v 1.2 2001/06/01 18:39:47 davem Exp $
  */
 
 #ifndef __IF_TUN_H
@@ -33,6 +31,7 @@
 #define TUN_NO_PI      0x0040
 #define TUN_ONE_QUEUE  0x0080
 #define TUN_PERSIST    0x0100  
+#define TUN_VNET_HDR   0x0200
 
 /* Ioctl defines */
 #define TUNSETNOCSUM  _IOW('T', 200, int) 
 #define TUNSETOWNER   _IOW('T', 204, int)
 #define TUNSETLINK    _IOW('T', 205, int)
 #define TUNSETGROUP   _IOW('T', 206, int)
+#define TUNGETFEATURES _IOR('T', 207, unsigned int)
+#define TUNSETOFFLOAD _IOW('T', 208, unsigned int)
 
 /* TUNSETIFF ifr flags */
 #define IFF_TUN                0x0001
 #define IFF_TAP                0x0002
 #define IFF_NO_PI      0x1000
 #define IFF_ONE_QUEUE  0x2000
+#define IFF_VNET_HDR   0x4000
+
+/* Features for GSO (TUNSETOFFLOAD). */
+#define TUN_F_CSUM     0x01    /* You can hand me unchecksummed packets. */
+#define TUN_F_TSO4     0x02    /* I can handle TSO for IPv4 packets */
+#define TUN_F_TSO6     0x04    /* I can handle TSO for IPv6 packets */
+#define TUN_F_TSO_ECN  0x08    /* I can handle TSO with ECN bits. */
 
 struct tun_pi {
        unsigned short flags;