X-Git-Url: http://git.silcnet.org/gitweb/?p=silc.git;a=blobdiff_plain;f=apps%2Fsilcd%2Fidlist.c;fp=apps%2Fsilcd%2Fidlist.c;h=1c75d7181bf0b8a73af4a9ed3c5562771a8ec2eb;hp=e302b6e6bf3ddfed204cdd7fee49e633c4dff14e;hb=805fddcf6431e784f9f77114782a90c9d12f9cbe;hpb=faa97fdb56d0b85042a5d0149b73ce7022f04398 diff --git a/apps/silcd/idlist.c b/apps/silcd/idlist.c index e302b6e6..1c75d718 100644 --- a/apps/silcd/idlist.c +++ b/apps/silcd/idlist.c @@ -55,8 +55,6 @@ void silc_idlist_del_data(void *entry) if (idata->hash) silc_hash_free(idata->hash); - if (idata->public_key) - silc_pkcs_public_key_free(idata->public_key); idata->hash = NULL; idata->public_key = NULL; @@ -328,7 +326,7 @@ silc_idlist_add_client(SilcIDList id_list, char *nickname, char *username, int ret; ret = silc_parse_userfqdn(username, u, sizeof(u), h, sizeof(h)); - if (!u) + if (!ret) return NULL; if (!silc_identifier_verify(u, strlen(u), SILC_STRING_UTF8, 128)) return NULL; @@ -338,6 +336,8 @@ silc_idlist_add_client(SilcIDList id_list, char *nickname, char *username, } client = silc_calloc(1, sizeof(*client)); + if (!client) + return NULL; client->nickname = nickname; client->username = username ? strdup(username) : NULL; client->userinfo = userinfo;