]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/linux/if_tun.h
tun: Interface to query tun/tap features.
[linux-2.6-omap-h63xx.git] / include / linux / if_tun.h
index 33e489d5bb33ed4e476360577474a90f580e2b2c..94f76a11230339753e7a3558f1d76677a6c04261 100644 (file)
  *  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
 #define __IF_TUN_H
 
-/* Uncomment to enable debugging */
-/* #define TUN_DEBUG 1 */
-
-#ifdef __KERNEL__
-
-#ifdef TUN_DEBUG
-#define DBG  if(tun->debug)printk
-#define DBG1 if(debug==2)printk
-#else
-#define DBG( a... )
-#define DBG1( a... )
-#endif
-
-struct tun_struct {
-       struct list_head        list;
-       unsigned long           flags;
-       int                     attached;
-       uid_t                   owner;
-       gid_t                   group;
-
-       wait_queue_head_t       read_wait;
-       struct sk_buff_head     readq;
-
-       struct net_device       *dev;
-
-       struct fasync_struct    *fasync;
-
-       unsigned long if_flags;
-       u8 dev_addr[ETH_ALEN];
-       u32 chr_filter[2];
-       u32 net_filter[2];
-
-#ifdef TUN_DEBUG       
-       int debug;
-#endif  
-};
-
-#endif /* __KERNEL__ */
+#include <linux/types.h>
 
 /* Read queue size */
 #define TUN_READQ_SIZE 500
@@ -79,6 +40,7 @@ struct tun_struct {
 #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)
 
 /* TUNSETIFF ifr flags */
 #define IFF_TUN                0x0001
@@ -88,7 +50,7 @@ struct tun_struct {
 
 struct tun_pi {
        unsigned short flags;
-       unsigned short proto;
+       __be16 proto;
 };
 #define TUN_PKT_STRIP  0x0001