From: Pekka Riikonen Date: Sun, 22 Apr 2007 18:18:52 +0000 (+0000) Subject: malloc checks. X-Git-Tag: 1.2.beta1~393 X-Git-Url: http://git.silcnet.org/gitweb/?a=commitdiff_plain;h=655735cb7f6272fc2e5e556766e8a0d2bd41fc47;p=crypto.git malloc checks. --- diff --git a/lib/silccrypt/silccipher.c b/lib/silccrypt/silccipher.c index ee722690..efb4b76a 100644 --- a/lib/silccrypt/silccipher.c +++ b/lib/silccrypt/silccipher.c @@ -95,7 +95,13 @@ SilcBool silc_cipher_register(const SilcCipherObject *cipher) } new = silc_calloc(1, sizeof(*new)); + if (!new) + return FALSE; new->name = strdup(cipher->name); + if (!new->name) { + silc_free(new); + return FALSE; + } new->key_len = cipher->key_len; new->block_len = cipher->block_len; new->iv_len = cipher->iv_len; @@ -215,8 +221,14 @@ SilcBool silc_cipher_alloc(const unsigned char *name, SilcCipher *new_cipher) if (entry) { *new_cipher = silc_calloc(1, sizeof(**new_cipher)); + if (!(*new_cipher)) + return FALSE; (*new_cipher)->cipher = entry; (*new_cipher)->context = silc_calloc(1, entry->context_len()); + if (!(*new_cipher)->context) { + silc_free(*new_cipher); + return FALSE; + } return TRUE; }