X-Git-Url: http://git.cascardo.info/?p=cascardo%2Fsgp.git;a=blobdiff_plain;f=src%2Fgroup.c;fp=src%2Fgroup.c;h=d8046a1545556813ecc1fab13edeba50d4d18f20;hp=41bfb07083dd48e3c1975ad1f37d87f9e3728297;hb=97412b6c5891a2e8bc0811046a38935a48371ac1;hpb=b6e274e6ea10779cccaf46974d2898318e9a3136 diff --git a/src/group.c b/src/group.c index 41bfb07..d8046a1 100644 --- a/src/group.c +++ b/src/group.c @@ -22,17 +22,39 @@ #include struct sgp_group { + char *name; struct sgp_friend **friends; int nr_friends; }; -struct sgp_group * sgp_group_new() +struct sgp_group * sgp_group_new(char *name) { struct sgp_group *group; group = malloc(sizeof(*group)); + if (!group) + return NULL; + group->name = strdup(name); + if (!group->name) + goto out; group->nr_friends = 0; group->friends = NULL; return group; +out: + free(group); + return NULL; +} + +void sgp_group_destroy(struct sgp_group *group) +{ + if (group->friends) + free(group->friends); + free(group->name); + free(group); +} + +char * sgp_group_get_name(struct sgp_group *group) +{ + return group->name; } /*