Use EVP_CIPHER_CTX_legacy_clear() internally
authortb <tb@openbsd.org>
Sun, 18 Feb 2024 15:44:10 +0000 (15:44 +0000)
committertb <tb@openbsd.org>
Sun, 18 Feb 2024 15:44:10 +0000 (15:44 +0000)
ok jsing

lib/libcrypto/asn1/p5_pbev2.c
lib/libcrypto/evp/bio_enc.c
lib/libcrypto/evp/p_legacy.c
lib/libcrypto/pem/pem_lib.c
lib/libcrypto/pkcs12/p12_decr.c

index 8b6d192..8ee752c 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: p5_pbev2.c,v 1.30 2023/07/07 19:37:52 beck Exp $ */
+/* $OpenBSD: p5_pbev2.c,v 1.31 2024/02/18 15:44:10 tb Exp $ */
 /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
  * project 1999-2004.
  */
@@ -218,7 +218,7 @@ PKCS5_pbe2_set_iv(const EVP_CIPHER *cipher, int iter, unsigned char *salt,
                        arc4random_buf(iv, EVP_CIPHER_iv_length(cipher));
        }
 
-       EVP_CIPHER_CTX_init(&ctx);
+       EVP_CIPHER_CTX_legacy_clear(&ctx);
 
        /* Dummy cipherinit to just setup the IV, and PRF */
        if (!EVP_CipherInit_ex(&ctx, cipher, NULL, NULL, iv, 0))
index d2132ad..dd38400 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: bio_enc.c,v 1.29 2023/07/07 19:37:53 beck Exp $ */
+/* $OpenBSD: bio_enc.c,v 1.30 2024/02/18 15:44:10 tb Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -115,7 +115,7 @@ enc_new(BIO *bi)
        ctx = malloc(sizeof(BIO_ENC_CTX));
        if (ctx == NULL)
                return (0);
-       EVP_CIPHER_CTX_init(&ctx->cipher);
+       EVP_CIPHER_CTX_legacy_clear(&ctx->cipher);
 
        ctx->buf_len = 0;
        ctx->buf_off = 0;
@@ -360,7 +360,7 @@ again:
        case BIO_CTRL_DUP:
                dbio = (BIO *)ptr;
                dctx = (BIO_ENC_CTX *)dbio->ptr;
-               EVP_CIPHER_CTX_init(&dctx->cipher);
+               EVP_CIPHER_CTX_legacy_clear(&dctx->cipher);
                ret = EVP_CIPHER_CTX_copy(&dctx->cipher, &ctx->cipher);
                if (ret)
                        dbio->init = 1;
index f73a6a9..2036258 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: p_legacy.c,v 1.2 2023/12/20 13:52:17 tb Exp $ */
+/*     $OpenBSD: p_legacy.c,v 1.3 2024/02/18 15:44:10 tb Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -99,7 +99,7 @@ EVP_OpenInit(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *type,
        int i, size = 0, ret = 0;
 
        if (type) {
-               EVP_CIPHER_CTX_init(ctx);
+               EVP_CIPHER_CTX_legacy_clear(ctx);
                if (!EVP_DecryptInit_ex(ctx, type, NULL, NULL, NULL))
                        return 0;
        }
@@ -154,7 +154,7 @@ EVP_SealInit(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *type, unsigned char **ek,
        int i, iv_len;
 
        if (type) {
-               EVP_CIPHER_CTX_init(ctx);
+               EVP_CIPHER_CTX_legacy_clear(ctx);
                if (!EVP_EncryptInit_ex(ctx, type, NULL, NULL, NULL))
                        return 0;
        }
index d4e6599..30db092 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: pem_lib.c,v 1.55 2023/11/29 21:35:57 tb Exp $ */
+/* $OpenBSD: pem_lib.c,v 1.56 2024/02/18 15:44:10 tb Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -412,7 +412,7 @@ PEM_ASN1_write_bio(i2d_of_void *i2d, const char *name, BIO *bp, void *x,
                PEM_dek_info(buf, objstr, enc->iv_len, (char *)iv);
                /* k=strlen(buf); */
 
-               EVP_CIPHER_CTX_init(&ctx);
+               EVP_CIPHER_CTX_legacy_clear(&ctx);
                ret = 1;
                if (!EVP_EncryptInit_ex(&ctx, enc, NULL, key, iv) ||
                    !EVP_EncryptUpdate(&ctx, data, &j, data, i) ||
@@ -466,7 +466,7 @@ PEM_do_header(EVP_CIPHER_INFO *cipher, unsigned char *data, long *plen,
                return 0;
 
        j = (int)len;
-       EVP_CIPHER_CTX_init(&ctx);
+       EVP_CIPHER_CTX_legacy_clear(&ctx);
        o = EVP_DecryptInit_ex(&ctx, cipher->cipher, NULL, key,
            &(cipher->iv[0]));
        if (o)
index ea7f6a5..04818ac 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: p12_decr.c,v 1.24 2023/02/16 08:38:17 tb Exp $ */
+/* $OpenBSD: p12_decr.c,v 1.25 2024/02/18 15:44:10 tb Exp $ */
 /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
  * project 1999.
  */
@@ -77,7 +77,7 @@ PKCS12_pbe_crypt(const X509_ALGOR *algor, const char *pass, int passlen,
        int outlen, i;
        EVP_CIPHER_CTX ctx;
 
-       EVP_CIPHER_CTX_init(&ctx);
+       EVP_CIPHER_CTX_legacy_clear(&ctx);
        /* Decrypt data */
        if (!EVP_PBE_CipherInit(algor->algorithm, pass, passlen,
            algor->parameter, &ctx, en_de)) {