|
@@ -67,9 +67,42 @@
|
|
|
#include <asm/system.h>
|
|
|
#include <asm/uaccess.h>
|
|
|
|
|
|
+/* Uncomment to enable debugging */
|
|
|
+/* #define TUN_DEBUG 1 */
|
|
|
+
|
|
|
#ifdef TUN_DEBUG
|
|
|
static int 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
|
|
|
+};
|
|
|
|
|
|
/* Network device part of the driver */
|
|
|
|