providers/implementations/signature/slh_dsa_sig.c
providers/implementations/signature/sm2_sig.c
providers/implementations/skeymgmt/generic.inc
-providers/implementations/storemgmt/file_store_any2obj.c
-providers/implementations/storemgmt/file_store.c
-providers/implementations/storemgmt/winstore_store.c
+providers/implementations/storemgmt/file_store_any2obj.inc
+providers/implementations/storemgmt/file_store.inc
+providers/implementations/storemgmt/winstore_store.inc
providers/implementations/ciphers/cipher_aes_cbc_hmac_sha.c
providers/implementations/ciphers/cipher_aes_cbc_hmac_sha_etm.c
providers/implementations/ciphers/cipher_aes_gcm_siv.c
providers/implementations/signature/slh_dsa_sig.c \
providers/implementations/signature/sm2_sig.c \
providers/implementations/skeymgmt/generic.inc \
- providers/implementations/storemgmt/file_store_any2obj.c \
- providers/implementations/storemgmt/file_store.c \
- providers/implementations/storemgmt/winstore_store.c \
+ providers/implementations/storemgmt/file_store_any2obj.inc \
+ providers/implementations/storemgmt/file_store.inc \
+ providers/implementations/storemgmt/winstore_store.inc \
providers/implementations/ciphers/cipher_aes_cbc_hmac_sha.c \
providers/implementations/ciphers/cipher_aes_cbc_hmac_sha_etm.c \
providers/implementations/ciphers/cipher_aes_gcm_siv.c \
providers/implementations/signature/slh_dsa_sig.c \
providers/implementations/signature/sm2_sig.c \
providers/implementations/skeymgmt/generic.inc \
- providers/implementations/storemgmt/file_store_any2obj.c \
- providers/implementations/storemgmt/file_store.c \
- providers/implementations/storemgmt/winstore_store.c \
+ providers/implementations/storemgmt/file_store_any2obj.inc \
+ providers/implementations/storemgmt/file_store.inc \
+ providers/implementations/storemgmt/winstore_store.inc \
providers/implementations/ciphers/cipher_aes_cbc_hmac_sha.c \
providers/implementations/ciphers/cipher_aes_cbc_hmac_sha_etm.c \
providers/implementations/ciphers/cipher_aes_gcm_siv.c \
providers/implementations/signature/sm2_sig.c.in
GENERATE[providers/implementations/skeymgmt/generic.inc]=\
providers/implementations/skeymgmt/generic.inc.in
-GENERATE[providers/implementations/storemgmt/file_store_any2obj.c]=\
- providers/implementations/storemgmt/file_store_any2obj.c.in
-GENERATE[providers/implementations/storemgmt/file_store.c]=\
- providers/implementations/storemgmt/file_store.c.in
-GENERATE[providers/implementations/storemgmt/winstore_store.c]=\
- providers/implementations/storemgmt/winstore_store.c.in
+GENERATE[providers/implementations/storemgmt/file_store_any2obj.inc]=\
+ providers/implementations/storemgmt/file_store_any2obj.inc.in
+GENERATE[providers/implementations/storemgmt/file_store.inc]=\
+ providers/implementations/storemgmt/file_store.inc.in
+GENERATE[providers/implementations/storemgmt/winstore_store.inc]=\
+ providers/implementations/storemgmt/winstore_store.inc.in
GENERATE[providers/implementations/ciphers/cipher_aes_cbc_hmac_sha.c]=\
providers/implementations/ciphers/cipher_aes_cbc_hmac_sha.c.in
GENERATE[providers/implementations/ciphers/cipher_aes_cbc_hmac_sha_etm.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);
--}
/* This file has quite some overlap with engines/e_loader_attic.c */
#include "prov/providercommon.h"
#include "prov/file_store_local.h"
+#include "providers/implementations/storemgmt/file_store.inc"
+
DEFINE_STACK_OF(OSSL_STORE_INFO)
#ifdef _WIN32
* ------------------
*/
-{- produce_param_decoder('file_set_ctx_params',
- (['OSSL_STORE_PARAM_PROPERTIES', 'propq', 'utf8_string'],
- ['OSSL_STORE_PARAM_EXPECT', 'expect', 'int'],
- ['OSSL_STORE_PARAM_SUBJECT', 'sub', 'octet_string'],
- ['OSSL_STORE_PARAM_INPUT_TYPE', 'type', 'utf8_string'],
- )); -}
-
static const OSSL_PARAM *file_settable_ctx_params(void *provctx)
{
return file_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('file_set_ctx_params',
+ (['OSSL_STORE_PARAM_PROPERTIES', 'propq', 'utf8_string'],
+ ['OSSL_STORE_PARAM_EXPECT', 'expect', 'int'],
+ ['OSSL_STORE_PARAM_SUBJECT', 'sub', 'octet_string'],
+ ['OSSL_STORE_PARAM_INPUT_TYPE', 'type', '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);
--}
/*
* This is a decoder that's completely internal to the 'file:' store
#include "crypto/pem.h" /* For internal PVK and "blob" headers */
#include "prov/bio.h"
#include "prov/file_store_local.h"
+#include "providers/implementations/storemgmt/file_store_any2obj.inc"
/*
* newctx and freectx are not strictly necessary. However, the method creator,
OPENSSL_free(ctx);
}
-{- produce_param_decoder('any2obj_set_ctx_params',
- (['OSSL_OBJECT_PARAM_DATA_STRUCTURE', 'datastruct', 'utf8_string'],
- )); -}
-
static int any2obj_set_ctx_params(void *vctx, const OSSL_PARAM params[])
{
struct any2obj_ctx_st *ctx = vctx;
if (!ok)
goto next;
-
ERR_set_mark();
p = (unsigned char *)&mem->data[0];
ok = ossl_do_blob_header(&p, 16, &magic, &bitlen, &isdss, &ispub) > 0;
if (!ok)
goto next;
-
ERR_set_mark();
p = (unsigned char *)&mem->data[0];
ok = ossl_do_PVK_header(&p, 24, 0, &isdss, &saltlen, &keylen) > 0;
--- /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('any2obj_set_ctx_params',
+ (['OSSL_OBJECT_PARAM_DATA_STRUCTURE', 'datastruct', '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/store.h>
#include <openssl/core_dispatch.h>
# include <windows.h>
#endif
#include <wincrypt.h>
+#include "providers/implementations/storemgmt/winstore_store.inc"
enum {
STATE_IDLE,
return NULL; /* not supported */
}
-{- produce_param_decoder('winstore_set_ctx_params',
- (['OSSL_STORE_PARAM_SUBJECT', 'sub', 'octet_string'],
- ['OSSL_STORE_PARAM_PROPERTIES', 'propq', 'utf8_string'],
- )); -}
-
static const OSSL_PARAM *winstore_settable_ctx_params(void *loaderctx, const OSSL_PARAM params[])
{
return winstore_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('winstore_set_ctx_params',
+ (['OSSL_STORE_PARAM_SUBJECT', 'sub', 'octet_string'],
+ ['OSSL_STORE_PARAM_PROPERTIES', 'propq', 'utf8_string'],
+ )); -}