X-Git-Url: http://git.meshlink.io/?a=blobdiff_plain;ds=sidebyside;f=src%2Fnet_packet.c;h=bb81081d25fafc3089beb320da9d44da2e6b4947;hb=0f6f54ff8aa96d981f68b5b71c7126b8fdbead6c;hp=8b877c21a93e59349695fac2aef00542b3db1522;hpb=412f3fb5101514d9a7d4d9e5729ee9c665a07cb6;p=meshlink diff --git a/src/net_packet.c b/src/net_packet.c index 8b877c21..bb81081d 100644 --- a/src/net_packet.c +++ b/src/net_packet.c @@ -29,14 +29,14 @@ #include #include -#include +#include LZO1X_H #include "avl_tree.h" #include "conf.h" #include "connection.h" #include "device.h" #include "ethernet.h" -#include "event.h" +#include "tevent.h" #include "graph.h" #include "list.h" #include "logger.h" @@ -96,11 +96,11 @@ void send_mtu_probe(node_t *n) send_udppacket(n, &packet); } - n->mtuevent = xmalloc(sizeof(*n->mtuevent)); + n->mtuevent = new_tevent(); n->mtuevent->handler = (event_handler_t)send_mtu_probe; n->mtuevent->data = n; n->mtuevent->time = now + 1; - event_add(n->mtuevent); + tevent_add(n->mtuevent); } void mtu_probe_h(node_t *n, vpn_packet_t *packet) { @@ -484,7 +484,7 @@ void flush_queue(node_t *n) } } -void handle_incoming_vpn_data(int sock) +void handle_incoming_vpn_data(int sock, short events, void *data) { vpn_packet_t pkt; char *hostname; @@ -515,3 +515,11 @@ void handle_incoming_vpn_data(int sock) receive_udppacket(n, &pkt); } + +void handle_device_data(int sock, short events, void *data) +{ + vpn_packet_t packet; + + if(read_packet(&packet)) + route(myself, &packet); +}