From 0ff5700527431d9372ae56179f541bcea2a72f97 Mon Sep 17 00:00:00 2001 From: Patrick Hornecker Date: Mon, 4 Jan 2010 17:05:27 +0100 Subject: more position features --- friendfinder/receiver.c | 48 +++++++++++++++++------------------------------- 1 file changed, 17 insertions(+), 31 deletions(-) (limited to 'friendfinder/receiver.c') diff --git a/friendfinder/receiver.c b/friendfinder/receiver.c index c9a030f..63552ce 100644 --- a/friendfinder/receiver.c +++ b/friendfinder/receiver.c @@ -11,9 +11,11 @@ static irc_session_t *session; irc_callbacks_t callbacks; int counter = 0; char sender_name[100]; +char *lat, *lon; int ret; - +int got_lat = 0; +int got_lon = 0; BF_KEY key; int init_connection_receiver(char* server_ip, char* user) @@ -60,49 +62,33 @@ void get_position(irc_session_t * session, const char * event, const char * orig char *decrypted_lat = (char*) malloc(sizeof(params[1])); char *decrypted_lon = (char*) malloc(sizeof(params[1])); - decrypted_lat = NULL; - decrypted_lon = NULL; - irc_target_get_nick(origin, sender_name, sizeof(sender_name)); - if (sender_name != NULL && strcmp(sender_name, "_s") == 1) + if (sender_name != NULL && strcmp(sender_name, "_s") > 0) { - - //first message is the ret param, which is needed for message decryption - if (counter == 0) - { - //BF_set_key(&key, 5, "abcde"); - } - - //dump_event(session, event, origin, params, count); - if (counter % 2 == 0) + if (counter % 2 != 0) { BF_ecb_encrypt(params[1], decrypted_lat, &key, BF_DECRYPT); - printf("RECEIVER: lat %s, origin: %s \n", decrypted_lat, sender_name); + lat = decrypted_lat; + got_lat = 1; } - if (counter % 2 != 0) + if (counter % 2 == 0) { BF_ecb_encrypt(params[1], decrypted_lon, &key, BF_DECRYPT); - printf("RECEIVER: lon %s , origin: %s \n", decrypted_lon, sender_name); - printf("====\n"); + lon = decrypted_lon; + got_lon = 1; } - if(decrypted_lon != NULL && decrypted_lat != NULL) + if(got_lon == 1 && got_lat == 1) { - dump_data(decrypted_lat, decrypted_lon, sender_name); - decrypted_lon = NULL; - decrypted_lat = NULL; + dump_data(lat, lon, sender_name); + got_lon = 0; + got_lat = 0; } - // if (strcmp(params[1], "128") != 0) - { - irc_cmd_msg(session, "#test", sender_name); - counter++; - } - // else - { - // counter++; - } + + irc_cmd_msg(session, "#test", sender_name); + counter++; } } -- cgit v1.2.3-55-g7522