diff options
author | Rainer Gerhards <rgerhards@adiscon.com> | 2013-04-11 09:57:18 +0200 |
---|---|---|
committer | Rainer Gerhards <rgerhards@adiscon.com> | 2013-04-11 09:57:18 +0200 |
commit | 078b010af6317ad325a9f10a901f8a279c8d0899 (patch) | |
tree | ee5a5e773ad492dd884baa27a27ab0edd4b83f7c /runtime/libgcry.c | |
parent | 7748d6678771ab8ce32f8990b7bf586578b872e0 (diff) | |
download | rsyslog-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.c | 4 |
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); |