summaryrefslogtreecommitdiffstats
path: root/runtime/libgcry.c
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2013-04-11 09:57:18 +0200
committerRainer Gerhards <rgerhards@adiscon.com>2013-04-11 09:57:18 +0200
commit078b010af6317ad325a9f10a901f8a279c8d0899 (patch)
treeee5a5e773ad492dd884baa27a27ab0edd4b83f7c /runtime/libgcry.c
parent7748d6678771ab8ce32f8990b7bf586578b872e0 (diff)
downloadrsyslog-078b010af6317ad325a9f10a901f8a279c8d0899.tar.gz
rsyslog-078b010af6317ad325a9f10a901f8a279c8d0899.tar.bz2
rsyslog-078b010af6317ad325a9f10a901f8a279c8d0899.zip
log encryption: check length of "key" parameter
Diffstat (limited to 'runtime/libgcry.c')
-rw-r--r--runtime/libgcry.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/runtime/libgcry.c b/runtime/libgcry.c
index 5f1dbf58..c1ab3abf 100644
--- a/runtime/libgcry.c
+++ b/runtime/libgcry.c
@@ -108,8 +108,10 @@ rsgcrySetKey(gcryctx ctx, unsigned char *key, uint16_t keyLen)
uint16_t reqKeyLen = gcry_cipher_get_algo_keylen(GCRY_CIPHER);
int r;
- if(keyLen != reqKeyLen)
+ if(keyLen != reqKeyLen) {
r = reqKeyLen;
+ goto done;
+ }
ctx->keyLen = keyLen;
ctx->key = malloc(keyLen);
memcpy(ctx->key, key, keyLen);