From d45087c672bd24467e6aea4ef05dbe6a5c420d5a Mon Sep 17 00:00:00 2001 From: "Dr. Stephen Henson" Date: Mon, 7 Feb 2011 18:04:27 +0000 Subject: [PATCH] Use 0 not -1 (since type is size_t) for finalisation argument to do_cipher: the NULL value for the input buffer is sufficient to notice this case. --- CHANGES | 2 +- crypto/evp/evp_enc.c | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/CHANGES b/CHANGES index 2b052dd850..2375076ae6 100644 --- a/CHANGES +++ b/CHANGES @@ -11,7 +11,7 @@ do_cipher is subtly changed if this flag is set: the return value is the number of characters written to the output buffer (zero is no longer an error code) or a negative error code. Also if the - input buffer is NULL and length -1 finalisation should be performed. + input buffer is NULL and length 0 finalisation should be performed. [Steve Henson] *) If a candidate issuer certificate is already part of the constructed diff --git a/crypto/evp/evp_enc.c b/crypto/evp/evp_enc.c index 3f8473b348..c016d1ed62 100644 --- a/crypto/evp/evp_enc.c +++ b/crypto/evp/evp_enc.c @@ -368,10 +368,10 @@ int EVP_EncryptFinal_ex(EVP_CIPHER_CTX *ctx, unsigned char *out, int *outl) if (ctx->cipher->flags & EVP_CIPH_FLAG_CUSTOM_CIPHER) { - i = ctx->cipher->do_cipher(ctx, out, NULL, -1); + i = ctx->cipher->do_cipher(ctx, out, NULL, 0); if (i < 0) return 0; - else + else *outl = i; return 1; } @@ -483,7 +483,7 @@ int EVP_DecryptFinal_ex(EVP_CIPHER_CTX *ctx, unsigned char *out, int *outl) if (ctx->cipher->flags & EVP_CIPH_FLAG_CUSTOM_CIPHER) { - i = ctx->cipher->do_cipher(ctx, out, NULL, -1); + i = ctx->cipher->do_cipher(ctx, out, NULL, 0); if (i < 0) return 0; else