Update Messenger.c

Offer more meaningful returns so appropriate actions can be taken by the GUI.
This commit is contained in:
Astonex 2013-07-31 00:13:31 +01:00
parent d97db7fcb8
commit cd0518a45c

View File

@ -99,16 +99,19 @@ int getclient_id(int friend_id, uint8_t *client_id)
client_id is the client id of the friend client_id is the client id of the friend
data is the data and length is the length data is the data and length is the length
returns the friend number if success returns the friend number if success
return -1 if failure. */ return -1 if key length is wrong.
return -2 if user's own key
return -3 if already a friend
return -4 for other*/
int m_addfriend(uint8_t *client_id, uint8_t *data, uint16_t length) int m_addfriend(uint8_t *client_id, uint8_t *data, uint16_t length)
{ {
if (length == 0 || length >= if (length == 0 || length >=
(MAX_DATA_SIZE - crypto_box_PUBLICKEYBYTES - crypto_box_NONCEBYTES - crypto_box_BOXZEROBYTES + crypto_box_ZEROBYTES)) (MAX_DATA_SIZE - crypto_box_PUBLICKEYBYTES - crypto_box_NONCEBYTES - crypto_box_BOXZEROBYTES + crypto_box_ZEROBYTES))
return -1; return -1;
if (memcmp(client_id, self_public_key, crypto_box_PUBLICKEYBYTES) == 0) if (memcmp(client_id, self_public_key, crypto_box_PUBLICKEYBYTES) == 0)
return -1; return -2;
if (getfriend_id(client_id) != -1) if (getfriend_id(client_id) != -1)
return -1; return -3;
uint32_t i; uint32_t i;
for (i = 0; i <= numfriends; ++i) { for (i = 0; i <= numfriends; ++i) {
if(friendlist[i].status == 0) { if(friendlist[i].status == 0) {
@ -126,7 +129,7 @@ int m_addfriend(uint8_t *client_id, uint8_t *data, uint16_t length)
return i; return i;
} }
} }
return -1; return -4;
} }
int m_addfriend_norequest(uint8_t * client_id) int m_addfriend_norequest(uint8_t * client_id)