X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fpalacios%2Fvmm_packet.c;h=7d90d3eb9777a7b228f0e4828817a24c59a11a18;hb=305267e8eaabf7dffadd86abc323f7d1b231e388;hp=252bf11a42ce42f5c1e8f97624183cde1c0d4401;hpb=bc5ee3e07affac4810227d61c407011c05298518;p=palacios.git diff --git a/palacios/src/palacios/vmm_packet.c b/palacios/src/palacios/vmm_packet.c index 252bf11..7d90d3e 100644 --- a/palacios/src/palacios/vmm_packet.c +++ b/palacios/src/palacios/vmm_packet.c @@ -25,13 +25,31 @@ static struct v3_packet_hooks * packet_hooks = 0; int V3_send_raw(const char * pkt, uint32_t len) { - V3_ASSERT(packet_hooks); - V3_ASSERT(packet_hooks->send); + 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");