aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2000-06-11 12:27:58 +0000
committerDr. Stephen Henson <steve@openssl.org>2000-06-11 12:27:58 +0000
commitfd75eb50c0460f13dc58d6884c14e4010478953f (patch)
treeff96b6a573995160cfba0bba07a474a274897b67
parenta91dedca48ec58e6baab75839753121fb725c9e1 (diff)
downloadopenssl-fd75eb50c0460f13dc58d6884c14e4010478953f.tar.gz
Make EVP_SealInit() and EVP_OpenInit() check EVP_EncryptInit() and
EVP_DecryptInit() return values. Update docs.
-rw-r--r--crypto/evp/p_open.c4
-rw-r--r--crypto/evp/p_seal.c2
-rw-r--r--doc/crypto/EVP_OpenInit.pod2
-rw-r--r--doc/crypto/EVP_SealInit.pod3
4 files changed, 5 insertions, 6 deletions
diff --git a/crypto/evp/p_open.c b/crypto/evp/p_open.c
index dbf83b250a..2760c00fec 100644
--- a/crypto/evp/p_open.c
+++ b/crypto/evp/p_open.c
@@ -71,7 +71,7 @@ int EVP_OpenInit(EVP_CIPHER_CTX *ctx, EVP_CIPHER *type, unsigned char *ek,
if(type) {
EVP_CIPHER_CTX_init(ctx);
- EVP_DecryptInit(ctx,type,NULL,NULL);
+ if(!EVP_DecryptInit(ctx,type,NULL,NULL)) return 0;
}
if(!priv) return 1;
@@ -79,7 +79,6 @@ int EVP_OpenInit(EVP_CIPHER_CTX *ctx, EVP_CIPHER *type, unsigned char *ek,
if (priv->type != EVP_PKEY_RSA)
{
EVPerr(EVP_F_EVP_OPENINIT,EVP_R_PUBLIC_KEY_NOT_RSA);
- ret= -1;
goto err;
}
@@ -89,7 +88,6 @@ int EVP_OpenInit(EVP_CIPHER_CTX *ctx, EVP_CIPHER *type, unsigned char *ek,
{
/* ERROR */
EVPerr(EVP_F_EVP_OPENINIT,ERR_R_MALLOC_FAILURE);
- ret= -1;
goto err;
}
diff --git a/crypto/evp/p_seal.c b/crypto/evp/p_seal.c
index be021ee3cf..2fd1d7e0c2 100644
--- a/crypto/evp/p_seal.c
+++ b/crypto/evp/p_seal.c
@@ -74,7 +74,7 @@ int EVP_SealInit(EVP_CIPHER_CTX *ctx, EVP_CIPHER *type, unsigned char **ek,
if(type) {
EVP_CIPHER_CTX_init(ctx);
- EVP_EncryptInit(ctx,type,NULL,NULL);
+ if(!EVP_EncryptInit(ctx,type,NULL,NULL)) return 0;
}
if (npubk <= 0) return(0);
if (RAND_bytes(key,EVP_MAX_KEY_LENGTH) <= 0)
diff --git a/doc/crypto/EVP_OpenInit.pod b/doc/crypto/EVP_OpenInit.pod
index 48be966b4d..cd587ea651 100644
--- a/doc/crypto/EVP_OpenInit.pod
+++ b/doc/crypto/EVP_OpenInit.pod
@@ -48,7 +48,7 @@ key length must match the fixed cipher length.
EVP_OpenInit() returns -1 on error or a non zero integer (actually the
recovered secret key size) if successful.
-EVP_OpenUpdate() does not return a value.
+EVP_OpenUpdate() returns 1 for success of 0 for failure.
EVP_OpenFinal() returns 0 if the decrypt failed or 1 for success.
diff --git a/doc/crypto/EVP_SealInit.pod b/doc/crypto/EVP_SealInit.pod
index feeba36569..038bf9746f 100644
--- a/doc/crypto/EVP_SealInit.pod
+++ b/doc/crypto/EVP_SealInit.pod
@@ -43,7 +43,8 @@ page.
EVP_SealInit() returns -1 on error or B<npubk> if successful.
-EVP_SealUpdate() and EVP_SealFinal() do not return values.
+EVP_SealUpdate() and EVP_SealFinal() return 1 for success and 0 for
+failure.
=head1 NOTES