X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Finclude%2Fvnet%2Fvnet.h;h=949f0b28382922fd67dcc6a8a4ebe0608da4c980;hb=cbf36cf51a895acc4dc7242ae9ec483b363d26d6;hp=0776972514b25c7b044b38fdacff747af9b1919c;hpb=6cff7c8b0ec58e3b94d9583f709ca9056ae928dd;p=palacios-OLD.git diff --git a/palacios/include/vnet/vnet.h b/palacios/include/vnet/vnet.h index 0776972..949f0b2 100644 --- a/palacios/include/vnet/vnet.h +++ b/palacios/include/vnet/vnet.h @@ -1,3 +1,4 @@ + /* * This file is part of the Palacios Virtual Machine Monitor developed * by the V3VEE Project with funding from the United States National @@ -19,10 +20,11 @@ * redistribute, and modify it as specified in the file "V3VEE_LICENSE". */ -#ifndef __VNET_CORE_H__ -#define __VNET_CORE_H__ +#ifndef __VNET_H__ +#define __VNET_H__ #include +#include #include #include @@ -86,20 +88,25 @@ struct vnet_stat{ struct v3_vnet_bridge_ops { int (*input)(struct v3_vm_info * vm, - struct v3_vnet_pkt * pkt, - void * private_data); + struct v3_vnet_pkt * pkt, + void * private_data); void (*poll)(struct v3_vm_info * vm, - void * private_data); + void * private_data); }; #define HOST_LNX_BRIDGE 1 #define CTL_VM_BRIDGE 2 int v3_vnet_add_bridge(struct v3_vm_info * vm, - struct v3_vnet_bridge_ops * ops, - uint8_t type, - void * priv_data); + struct v3_vnet_bridge_ops * ops, + uint8_t type, + void * priv_data); + +void v3_vnet_del_bridge(uint8_t type); + int v3_vnet_add_route(struct v3_vnet_route route); +void v3_vnet_del_route(uint32_t route_idx); + int v3_vnet_send_pkt(struct v3_vnet_pkt * pkt, void * private_data, int synchronize); int v3_vnet_find_dev(uint8_t * mac); int v3_vnet_stat(struct vnet_stat * stats); @@ -108,8 +115,8 @@ int v3_vnet_stat(struct vnet_stat * stats); struct v3_vnet_dev_ops { int (*input)(struct v3_vm_info * vm, - struct v3_vnet_pkt * pkt, - void * dev_data); + struct v3_vnet_pkt * pkt, + void * dev_data); }; int v3_init_vnet(void);