* 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 <palacios/vmm_ethernet.h>
+#include <vnet/vnet_base.h>
#include <vnet/vnet_host.h>
#include <vnet/vnet_vmm.h>
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);
-int v3_vnet_send_pkt(struct v3_vnet_pkt * pkt, void * private_data, int synchronize);
+void v3_vnet_del_route(uint32_t route_idx);
+
+int v3_vnet_send_pkt(struct v3_vnet_pkt * pkt, void * private_data);
int v3_vnet_find_dev(uint8_t * mac);
int v3_vnet_stat(struct vnet_stat * stats);
int (*input)(struct v3_vm_info * vm,
struct v3_vnet_pkt * pkt,
void * dev_data);
+
+ /* return >0 means there are more pkts in the queue to be sent */
+ int (*poll)(struct v3_vm_info * vm,
+ int quote,
+ void * dev_data);
};
int v3_init_vnet(void);
void v3_deinit_vnet(void);
int v3_vnet_add_dev(struct v3_vm_info * info, uint8_t * mac,
- struct v3_vnet_dev_ops * ops,
+ struct v3_vnet_dev_ops * ops, int quote, int poll_state,
void * priv_data);
int v3_vnet_del_dev(int dev_id);