Palacios Public Git Repository

To checkout Palacios execute

  git clone http://v3vee.org/palacios/palacios.web/palacios.git
This will give you the master branch. You probably want the devel branch or one of the release branches. To switch to the devel branch, simply execute
  cd palacios
  git checkout --track -b devel origin/devel
The other branches are similar.


Merge branch 'devel' of newskysaw.cs.northwestern.edu:/home/palacios/palacios into...
[palacios.git] / linux_module / palacios-vnet.h
1 /*
2  * Lei Xia 2010
3  */
4
5 #ifndef __PALACIOS_VNET_H__
6 #define __PALACIOS_VNET_H__
7
8 #include <vnet/vnet.h>
9
10
11 typedef enum {UDP, TCP, RAW, NONE} vnet_brg_proto_t;
12
13 struct vnet_brg_stats{
14     uint64_t pkt_from_vmm;
15     uint64_t pkt_to_vmm;
16     uint64_t pkt_drop_vmm;
17     uint64_t pkt_from_phy;
18     uint64_t pkt_to_phy;
19     uint64_t pkt_drop_phy;
20 };
21
22 void vnet_brg_delete_link(uint32_t idx);
23 uint32_t vnet_brg_add_link(uint32_t ip, uint16_t port, vnet_brg_proto_t proto);
24 int vnet_brg_link_stats(uint32_t link_idx, struct nic_statistics * stats);
25 int vnet_brg_stats(struct vnet_brg_stats * stats);
26
27
28 int  vnet_bridge_init(void);
29 void vnet_bridge_deinit(void);
30
31
32 int vnet_ctrl_init(void);
33 void vnet_ctrl_deinit(void);
34
35
36 #endif
37