X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fpalacios%2Fvmm_packet.c;h=7d90d3eb9777a7b228f0e4828817a24c59a11a18;hb=95290c36e27daf208b8e61e6c6f26325db8b6b4d;hp=f6fd6bb5dec2ca79271861543aa225f37978adc3;hpb=5759b7f644b659d0dbde6f5a7e21a88514cbe32d;p=palacios.git diff --git a/palacios/src/palacios/vmm_packet.c b/palacios/src/palacios/vmm_packet.c index f6fd6bb..7d90d3e 100644 --- a/palacios/src/palacios/vmm_packet.c +++ b/palacios/src/palacios/vmm_packet.c @@ -24,14 +24,32 @@ static struct v3_packet_hooks * packet_hooks = 0; -int V3_send_raw(const char * pkt, const int len) { - V3_ASSERT(packet_hooks); - V3_ASSERT(packet_hooks->send); +int V3_send_raw(const char * pkt, uint32_t len) { + if(packet_hooks != NULL && packet_hooks->send != NULL){ + return packet_hooks->send(pkt, len, NULL); + } - return packet_hooks->send(pkt, len, NULL); + return -1; } +int V3_packet_add_recver(const char * mac, struct v3_vm_info * vm){ + if(packet_hooks != NULL && packet_hooks->add_recver != NULL){ + return packet_hooks->add_recver(mac, vm); + } + + return -1; +} + + +int V3_packet_del_recver(const char * mac, struct v3_vm_info * vm){ + if(packet_hooks != NULL && packet_hooks->del_recver != NULL){ + return packet_hooks->del_recver(mac, vm); + } + + return -1; +} + void V3_Init_Packet(struct v3_packet_hooks * hooks) { packet_hooks = hooks; PrintDebug("V3 raw packet interface inited\n");