X-Git-Url: http://git.cascardo.eti.br/?p=cascardo%2Ff2fchat.git;a=blobdiff_plain;f=friend.c;h=60569c1e9cb645ad10d3e429a7a924c36a21ccec;hp=5abd50cc344c1235c21787297ac06e8e4a75786a;hb=HEAD;hpb=c933b71022bdf459bb5afde727c18001436db5e6 diff --git a/friend.c b/friend.c index 5abd50c..60569c1 100644 --- a/friend.c +++ b/friend.c @@ -90,10 +90,7 @@ void friend_got_message(struct friend *friend, char *buffer, size_t len) } static void friend_list(gchar **args, GSocketAddress *address); - -static void friend_add(gchar **args, GSocketAddress *address) -{ -} +static void friend_add(gchar **args, GSocketAddress *address); struct menu_item cmds[] = { { "list", friend_list }, @@ -140,6 +137,21 @@ static void friend_list(gchar **args, GSocketAddress *address) g_socket_send_to(usock, address, buffer, 0, NULL, NULL); } +static void friend_add(gchar **args, GSocketAddress *address) +{ + char *name; + char *addr; + char *sport; + uint16_t port; + if (args[2] == NULL || args[3] == NULL || args[4] == NULL) + return; + name = args[2]; + addr = args[3]; + sport = args[4]; + port = atoi(sport); + cache_add_friend(ucache, name, addr, port); +} + struct friend *friend_get_by_address(GInetAddress *address, uint16_t port) { GList *l;