providers/implementations/exchange/dh_exch.c
providers/implementations/exchange/ecdh_exch.c
providers/implementations/exchange/ecx_exch.c
-providers/implementations/encode_decode/decode_der2key.c
-providers/implementations/encode_decode/decode_epki2pki.c
-providers/implementations/encode_decode/decode_pem2der.c
-providers/implementations/encode_decode/decode_pvk2key.c
-providers/implementations/encode_decode/decode_spki2typespki.c
-providers/implementations/encode_decode/encode_key2any.c
-providers/implementations/encode_decode/encode_key2ms.c
+providers/implementations/encode_decode/decode_der2key.inc
+providers/implementations/encode_decode/decode_epki2pki.inc
+providers/implementations/encode_decode/decode_pem2der.inc
+providers/implementations/encode_decode/decode_pvk2key.inc
+providers/implementations/encode_decode/decode_spki2typespki.inc
+providers/implementations/encode_decode/encode_key2any.inc
+providers/implementations/encode_decode/encode_key2ms.inc
providers/implementations/kdfs/argon2.c
providers/implementations/kdfs/hkdf.c
providers/implementations/kdfs/hmacdrbg_kdf.c
providers/implementations/exchange/dh_exch.c \
providers/implementations/exchange/ecdh_exch.c \
providers/implementations/exchange/ecx_exch.c \
- providers/implementations/encode_decode/decode_der2key.c \
- providers/implementations/encode_decode/decode_epki2pki.c \
- providers/implementations/encode_decode/decode_pem2der.c \
- providers/implementations/encode_decode/decode_pvk2key.c \
- providers/implementations/encode_decode/decode_spki2typespki.c \
- providers/implementations/encode_decode/encode_key2any.c \
- providers/implementations/encode_decode/encode_key2ms.c \
+ providers/implementations/encode_decode/decode_der2key.inc \
+ providers/implementations/encode_decode/decode_epki2pki.inc \
+ providers/implementations/encode_decode/decode_pem2der.inc \
+ providers/implementations/encode_decode/decode_pvk2key.inc \
+ providers/implementations/encode_decode/decode_spki2typespki.inc \
+ providers/implementations/encode_decode/encode_key2any.inc \
+ providers/implementations/encode_decode/encode_key2ms.inc \
providers/implementations/kdfs/argon2.c \
providers/implementations/kdfs/hkdf.c \
providers/implementations/kdfs/hmacdrbg_kdf.c \
providers/implementations/exchange/dh_exch.c \
providers/implementations/exchange/ecdh_exch.c \
providers/implementations/exchange/ecx_exch.c \
- providers/implementations/encode_decode/decode_der2key.c \
- providers/implementations/encode_decode/decode_epki2pki.c \
- providers/implementations/encode_decode/decode_pem2der.c \
- providers/implementations/encode_decode/decode_pvk2key.c \
- providers/implementations/encode_decode/decode_spki2typespki.c \
- providers/implementations/encode_decode/encode_key2any.c \
- providers/implementations/encode_decode/encode_key2ms.c \
+ providers/implementations/encode_decode/decode_der2key.inc \
+ providers/implementations/encode_decode/decode_epki2pki.inc \
+ providers/implementations/encode_decode/decode_pem2der.inc \
+ providers/implementations/encode_decode/decode_pvk2key.inc \
+ providers/implementations/encode_decode/decode_spki2typespki.inc \
+ providers/implementations/encode_decode/encode_key2any.inc \
+ providers/implementations/encode_decode/encode_key2ms.inc \
providers/implementations/kdfs/argon2.c \
providers/implementations/kdfs/hkdf.c \
providers/implementations/kdfs/hmacdrbg_kdf.c \
providers/implementations/exchange/ecdh_exch.c.in
GENERATE[providers/implementations/exchange/ecx_exch.c]=\
providers/implementations/exchange/ecx_exch.c.in
-GENERATE[providers/implementations/encode_decode/decode_der2key.c]=\
- providers/implementations/encode_decode/decode_der2key.c.in
-GENERATE[providers/implementations/encode_decode/decode_epki2pki.c]=\
- providers/implementations/encode_decode/decode_epki2pki.c.in
-GENERATE[providers/implementations/encode_decode/decode_pem2der.c]=\
- providers/implementations/encode_decode/decode_pem2der.c.in
-GENERATE[providers/implementations/encode_decode/decode_pvk2key.c]=\
- providers/implementations/encode_decode/decode_pvk2key.c.in
-GENERATE[providers/implementations/encode_decode/decode_spki2typespki.c]=\
- providers/implementations/encode_decode/decode_spki2typespki.c.in
-GENERATE[providers/implementations/encode_decode/encode_key2any.c]=\
- providers/implementations/encode_decode/encode_key2any.c.in
-GENERATE[providers/implementations/encode_decode/encode_key2ms.c]=\
- providers/implementations/encode_decode/encode_key2ms.c.in
+GENERATE[providers/implementations/encode_decode/decode_der2key.inc]=\
+ providers/implementations/encode_decode/decode_der2key.inc.in
+GENERATE[providers/implementations/encode_decode/decode_epki2pki.inc]=\
+ providers/implementations/encode_decode/decode_epki2pki.inc.in
+GENERATE[providers/implementations/encode_decode/decode_pem2der.inc]=\
+ providers/implementations/encode_decode/decode_pem2der.inc.in
+GENERATE[providers/implementations/encode_decode/decode_pvk2key.inc]=\
+ providers/implementations/encode_decode/decode_pvk2key.inc.in
+GENERATE[providers/implementations/encode_decode/decode_spki2typespki.inc]=\
+ providers/implementations/encode_decode/decode_spki2typespki.inc.in
+GENERATE[providers/implementations/encode_decode/encode_key2any.inc]=\
+ providers/implementations/encode_decode/encode_key2any.inc.in
+GENERATE[providers/implementations/encode_decode/encode_key2ms.inc]=\
+ providers/implementations/encode_decode/encode_key2ms.inc.in
GENERATE[providers/implementations/kdfs/argon2.c]=\
providers/implementations/kdfs/argon2.c.in
GENERATE[providers/implementations/kdfs/hkdf.c]=\
* in the file LICENSE in the source distribution or at
* https://www.openssl.org/source/license.html
*/
-{-
-use OpenSSL::paramnames qw(produce_param_decoder);
--}
/*
* low level APIs are deprecated for public use, but still ok for
#include "internal/nelem.h"
#include "prov/ml_dsa_codecs.h"
#include "prov/ml_kem_codecs.h"
+#include "providers/implementations/encode_decode/decode_der2key.inc"
#ifndef OPENSSL_NO_SLH_DSA
typedef struct {
return ctx;
}
-{- produce_param_decoder('der2key_set_ctx_params',
- (['OSSL_DECODER_PARAM_PROPERTIES', 'propq', 'utf8_string'],
- )); -}
-
static const OSSL_PARAM *der2key_settable_ctx_params(ossl_unused void *provctx)
{
return der2key_set_ctx_params_list;
--- /dev/null
+/*
+ * Copyright 2025 The OpenSSL Project Authors. All Rights Reserved.
+ *
+ * Licensed under the Apache License 2.0 (the \"License\"). You may not use
+ * this file except in compliance with the License. You can obtain a copy
+ * in the file LICENSE in the source distribution or at
+ * https://www.openssl.org/source/license.html
+ */
+
+{-
+use OpenSSL::paramnames qw(produce_param_decoder);
+-}
+
+{- produce_param_decoder('der2key_set_ctx_params',
+ (['OSSL_DECODER_PARAM_PROPERTIES', 'propq', 'utf8_string'],
+ )); -}
* in the file LICENSE in the source distribution or at
* https://www.openssl.org/source/license.html
*/
-{-
-use OpenSSL::paramnames qw(produce_param_decoder);
--}
#include <openssl/core.h>
#include <openssl/core_dispatch.h>
#include "prov/decoders.h"
#include "prov/implementations.h"
#include "prov/endecoder_local.h"
+#include "providers/implementations/encode_decode/decode_epki2pki.inc"
static OSSL_FUNC_decoder_newctx_fn epki2pki_newctx;
static OSSL_FUNC_decoder_freectx_fn epki2pki_freectx;
OPENSSL_free(ctx);
}
-{- produce_param_decoder('epki2pki_set_ctx_params',
- (['OSSL_DECODER_PARAM_PROPERTIES', 'propq', 'utf8_string'],
- )); -}
-
static const OSSL_PARAM *epki2pki_settable_ctx_params(ossl_unused void *provctx)
{
return epki2pki_set_ctx_params_list;
--- /dev/null
+/*
+ * Copyright 2025 The OpenSSL Project Authors. All Rights Reserved.
+ *
+ * Licensed under the Apache License 2.0 (the \"License\"). You may not use
+ * this file except in compliance with the License. You can obtain a copy
+ * in the file LICENSE in the source distribution or at
+ * https://www.openssl.org/source/license.html
+ */
+
+{-
+use OpenSSL::paramnames qw(produce_param_decoder);
+-}
+
+{- produce_param_decoder('epki2pki_set_ctx_params',
+ (['OSSL_DECODER_PARAM_PROPERTIES', 'propq', 'utf8_string'],
+ )); -}
* in the file LICENSE in the source distribution or at
* https://www.openssl.org/source/license.html
*/
-{-
-use OpenSSL::paramnames qw(produce_param_decoder);
--}
/*
* RSA low level APIs are deprecated for public use, but still ok for
#include "prov/decoders.h"
#include "prov/implementations.h"
#include "prov/endecoder_local.h"
+#include "providers/implementations/encode_decode/decode_pem2der.inc"
static int read_pem(PROV_CTX *provctx, OSSL_CORE_BIO *cin,
char **pem_name, char **pem_header,
OPENSSL_free(ctx);
}
-{- produce_param_decoder('pem2der_set_ctx_params',
- (['OSSL_DECODER_PARAM_PROPERTIES', 'propq', 'utf8_string'],
- ['OSSL_OBJECT_PARAM_DATA_STRUCTURE', 'ds', 'utf8_string'],
- )); -}
-
static const OSSL_PARAM *pem2der_settable_ctx_params(ossl_unused void *provctx)
{
return pem2der_set_ctx_params_list;
--- /dev/null
+/*
+ * Copyright 2025 The OpenSSL Project Authors. All Rights Reserved.
+ *
+ * Licensed under the Apache License 2.0 (the \"License\"). You may not use
+ * this file except in compliance with the License. You can obtain a copy
+ * in the file LICENSE in the source distribution or at
+ * https://www.openssl.org/source/license.html
+ */
+
+{-
+use OpenSSL::paramnames qw(produce_param_decoder);
+-}
+
+{- produce_param_decoder('pem2der_set_ctx_params',
+ (['OSSL_DECODER_PARAM_PROPERTIES', 'propq', 'utf8_string'],
+ ['OSSL_OBJECT_PARAM_DATA_STRUCTURE', 'ds', 'utf8_string'],
+ )); -}
* in the file LICENSE in the source distribution or at
* https://www.openssl.org/source/license.html
*/
-{-
-use OpenSSL::paramnames qw(produce_param_decoder);
--}
/*
* low level APIs are deprecated for public use, but still ok for
#include "prov/bio.h"
#include "prov/implementations.h"
#include "prov/endecoder_local.h"
+#include "providers/implementations/encode_decode/decode_pvk2key.inc"
struct pvk2key_ctx_st; /* Forward declaration */
typedef int check_key_fn(void *, struct pvk2key_ctx_st *ctx);
OPENSSL_free(ctx);
}
-{- produce_param_decoder('pvk2key_set_ctx_params',
- (['OSSL_DECODER_PARAM_PROPERTIES', 'propq', 'utf8_string'],
- )); -}
-
static const OSSL_PARAM *pvk2key_settable_ctx_params(ossl_unused void *provctx)
{
return pvk2key_set_ctx_params_list;
--- /dev/null
+/*
+ * Copyright 2025 The OpenSSL Project Authors. All Rights Reserved.
+ *
+ * Licensed under the Apache License 2.0 (the \"License\"). You may not use
+ * this file except in compliance with the License. You can obtain a copy
+ * in the file LICENSE in the source distribution or at
+ * https://www.openssl.org/source/license.html
+ */
+
+{-
+use OpenSSL::paramnames qw(produce_param_decoder);
+-}
+
+{- produce_param_decoder('pvk2key_set_ctx_params',
+ (['OSSL_DECODER_PARAM_PROPERTIES', 'propq', 'utf8_string'],
+ )); -}
* in the file LICENSE in the source distribution or at
* https://www.openssl.org/source/license.html
*/
-{-
-use OpenSSL::paramnames qw(produce_param_decoder);
--}
#include <string.h>
#include <openssl/asn1t.h>
#include "prov/decoders.h"
#include "prov/implementations.h"
#include "prov/endecoder_local.h"
+#include "providers/implementations/encode_decode/decode_spki2typespki.inc"
static OSSL_FUNC_decoder_newctx_fn spki2typespki_newctx;
static OSSL_FUNC_decoder_freectx_fn spki2typespki_freectx;
OPENSSL_free(ctx);
}
-{- produce_param_decoder('spki2typespki_set_ctx_params',
- (['OSSL_DECODER_PARAM_PROPERTIES', 'propq', 'utf8_string'],
- )); -}
-
static const OSSL_PARAM *spki2typespki_settable_ctx_params(ossl_unused void *provctx)
{
return spki2typespki_set_ctx_params_list;
--- /dev/null
+/*
+ * Copyright 2025 The OpenSSL Project Authors. All Rights Reserved.
+ *
+ * Licensed under the Apache License 2.0 (the \"License\"). You may not use
+ * this file except in compliance with the License. You can obtain a copy
+ * in the file LICENSE in the source distribution or at
+ * https://www.openssl.org/source/license.html
+ */
+
+{-
+use OpenSSL::paramnames qw(produce_param_decoder);
+-}
+
+{- produce_param_decoder('spki2typespki_set_ctx_params',
+ (['OSSL_DECODER_PARAM_PROPERTIES', 'propq', 'utf8_string'],
+ )); -}
* in the file LICENSE in the source distribution or at
* https://www.openssl.org/source/license.html
*/
-{-
-use OpenSSL::paramnames qw(produce_param_decoder);
--}
/*
* Low level APIs are deprecated for public use, but still ok for internal use.
#include "prov/endecoder_local.h"
#include "prov/ml_dsa_codecs.h"
#include "prov/ml_kem_codecs.h"
+#include "providers/implementations/encode_decode/encode_key2any.inc"
#if defined(OPENSSL_NO_DH) && defined(OPENSSL_NO_DSA) && defined(OPENSSL_NO_EC)
# define OPENSSL_NO_KEYPARAMS
OSSL_i2d_of_void_ctx *k2d, KEY2ANY_CTX *ctx);
typedef int write_bio_of_void_fn(BIO *bp, const void *x);
-
/* Free the blob allocated during key_to_paramstring_fn */
static void free_asn1_data(int type, void *data)
{
/* The final X509_PUBKEY */
X509_PUBKEY *xpk = NULL;
-
if ((xpk = X509_PUBKEY_new()) == NULL
|| (derlen = k2d(key, &der, (void *)ctx)) <= 0
|| !X509_PUBKEY_set0_param(xpk, OBJ_nid2obj(key_nid),
OPENSSL_free(ctx);
}
-{- produce_param_decoder('key2any_set_ctx_params',
- (['OSSL_ENCODER_PARAM_CIPHER', 'cipher', 'utf8_string'],
- ['OSSL_ENCODER_PARAM_PROPERTIES', 'propq', 'utf8_string'],
- ['OSSL_ENCODER_PARAM_SAVE_PARAMETERS', 'svprm', 'int'],
- )); -}
-
static const OSSL_PARAM *key2any_settable_ctx_params(ossl_unused void *provctx)
{
return key2any_set_ctx_params_list;
--- /dev/null
+/*
+ * Copyright 2025 The OpenSSL Project Authors. All Rights Reserved.
+ *
+ * Licensed under the Apache License 2.0 (the \"License\"). You may not use
+ * this file except in compliance with the License. You can obtain a copy
+ * in the file LICENSE in the source distribution or at
+ * https://www.openssl.org/source/license.html
+ */
+
+{-
+use OpenSSL::paramnames qw(produce_param_decoder);
+-}
+
+{- produce_param_decoder('key2any_set_ctx_params',
+ (['OSSL_ENCODER_PARAM_CIPHER', 'cipher', 'utf8_string'],
+ ['OSSL_ENCODER_PARAM_PROPERTIES', 'propq', 'utf8_string'],
+ ['OSSL_ENCODER_PARAM_SAVE_PARAMETERS', 'svprm', 'int'],
+ )); -}
* in the file LICENSE in the source distribution or at
* https://www.openssl.org/source/license.html
*/
-{-
-use OpenSSL::paramnames qw(produce_param_decoder);
--}
/*
* Low level APIs are deprecated for public use, but still ok for internal use.
#include "prov/bio.h"
#include "prov/provider_ctx.h"
#include "prov/endecoder_local.h"
+#include "providers/implementations/encode_decode/encode_key2ms.inc"
struct key2ms_ctx_st {
PROV_CTX *provctx;
OPENSSL_free(ctx);
}
-{- produce_param_decoder('key2pvk_set_ctx_params',
- (['OSSL_ENCODER_PARAM_ENCRYPT_LEVEL', 'enclvl', 'int'],
- )); -}
-
static const OSSL_PARAM *key2pvk_settable_ctx_params(ossl_unused void *provctx)
{
return key2pvk_set_ctx_params_list;
--- /dev/null
+/*
+ * Copyright 2025 The OpenSSL Project Authors. All Rights Reserved.
+ *
+ * Licensed under the Apache License 2.0 (the \"License\"). You may not use
+ * this file except in compliance with the License. You can obtain a copy
+ * in the file LICENSE in the source distribution or at
+ * https://www.openssl.org/source/license.html
+ */
+
+{-
+use OpenSSL::paramnames qw(produce_param_decoder);
+-}
+
+{- produce_param_decoder('key2pvk_set_ctx_params',
+ (['OSSL_ENCODER_PARAM_ENCRYPT_LEVEL', 'enclvl', 'int'],
+ )); -}