diff options
Diffstat (limited to 'glougloud')
-rw-r--r-- | glougloud/glougloud.c | 38 |
1 files changed, 36 insertions, 2 deletions
diff --git a/glougloud/glougloud.c b/glougloud/glougloud.c index 45fca17..95a32ef 100644 --- a/glougloud/glougloud.c +++ b/glougloud/glougloud.c @@ -21,6 +21,11 @@ struct gg_server *ggserv_probes; struct gg_server *ggserv_clients; struct event_base *ev_base; +int prb_handle_conn(struct gg_server *, struct gg_user *); +int cli_handle_conn(struct gg_server *, struct gg_user *); +int prb_handle_packet(struct gg_server *, struct gg_user *, struct gg_packet *); +int cli_handle_packet(struct gg_server *, struct gg_user *, struct gg_packet *); + #if defined(__OPENBSD__) void __dead #else @@ -65,10 +70,39 @@ main(int argc, char **argv) ev_base = event_base_new(); - ggserv_probes = gg_server_start(ev_base, "127.0.0.1", 4430, NULL, NULL, NULL); - ggserv_clients = gg_server_start(ev_base, "127.0.0.1", 4431, NULL, NULL, NULL); + ggserv_probes = gg_server_start(ev_base, "127.0.0.1", 4430, + prb_handle_conn, prb_handle_packet, NULL); + ggserv_clients = gg_server_start(ev_base, "127.0.0.1", 4431, + cli_handle_conn, cli_handle_packet, NULL); event_base_dispatch(ev_base); return 0; } + +int +prb_handle_conn(struct gg_server *srv, struct gg_user *usr) +{ + return 0; +} + +int +cli_handle_conn(struct gg_server *srv, struct gg_user *usr) +{ + return 0; +} + +int +prb_handle_packet(struct gg_server *srv, struct gg_user *usr, struct gg_packet *pkt) +{ + gg_server_send(ggserv_clients, pkt, NULL); + return 0; +} + +int +cli_handle_packet(struct gg_server *srv, struct gg_user *usr, struct gg_packet *pkt) +{ + gg_server_send(ggserv_probes, pkt, NULL); + return 0; +} + |