X-Git-Url: http://git.cascardo.eti.br/?p=cascardo%2Fsgp.git;a=blobdiff_plain;f=src%2Ffriend.c;fp=src%2Ffriend.c;h=a8c1fc68f7294ab82c06d07d1034b6760b9ea0cd;hp=db5c4575e546ee08b49236df173692e063327cbd;hb=f153e712c52cf6d1922915fc735ba290dcf9bae1;hpb=97412b6c5891a2e8bc0811046a38935a48371ac1 diff --git a/src/friend.c b/src/friend.c index db5c457..a8c1fc6 100644 --- a/src/friend.c +++ b/src/friend.c @@ -21,6 +21,7 @@ #include struct sgp_friend { + char *alias; struct sgp_channel *channel; }; @@ -28,8 +29,27 @@ struct sgp_friend * sgp_friend_new(char *alias) { struct sgp_friend *friend; friend = malloc(sizeof(*friend)); + if (!friend) + return NULL; + friend->alias = strdup(alias); + if (!friend->alias) + goto out; friend->channel = NULL; return friend; +out: + free(friend); + return NULL; +} + +void sgp_friend_destroy(struct sgp_friend *friend) +{ + free(friend->alias); + free(friend); +} + +char * sgp_friend_get_alias(struct sgp_friend *friend) +{ + return friend->alias; } /*