aboutsummaryrefslogtreecommitdiffstats
path: root/xen-2.4.16/include/xeno/vif.h
diff options
context:
space:
mode:
Diffstat (limited to 'xen-2.4.16/include/xeno/vif.h')
-rw-r--r--xen-2.4.16/include/xeno/vif.h13
1 files changed, 9 insertions, 4 deletions
diff --git a/xen-2.4.16/include/xeno/vif.h b/xen-2.4.16/include/xeno/vif.h
index 6c1a1807a5..1bef565c32 100644
--- a/xen-2.4.16/include/xeno/vif.h
+++ b/xen-2.4.16/include/xeno/vif.h
@@ -1,7 +1,9 @@
/* vif.h
*
- * this is the hypervisor end of the network code. The net_ring structure
+ * This is the hypervisor end of the network code. The net_ring structure
* stored in each vif is placed on a shared page to interact with the guest VM.
+ *
+ * Copyright (c) 2002, A K Warfield and K A Fraser
*/
/* virtual network interface struct and associated defines. */
@@ -20,18 +22,21 @@ typedef struct net_vif_st {
net_ring_t *net_ring;
int id;
struct sk_buff_head skb_list;
+ unsigned int domain;
// rules table goes here in next revision.
} net_vif_t;
/* VIF-related defines. */
#define MAX_GUEST_VIFS 2 // each VIF is a small overhead in task_struct
-#define MAX_SYSTEM_VIFS 256 // trying to avoid dynamic allocation
+#define MAX_SYSTEM_VIFS 256
/* vif globals */
extern int sys_vif_count;
extern net_vif_t *sys_vif_list[];
/* vif prototypes */
-net_ring_t *create_net_vif(int domain);
+net_vif_t *create_net_vif(int domain);
void destroy_net_vif(struct task_struct *p);
-
+void add_default_net_rule(int vif_id, u32 ipaddr);
+int net_get_target_vif(struct sk_buff *skb);
+void add_default_net_rule(int vif_id, u32 ipaddr);