aboutsummaryrefslogtreecommitdiff
path: root/include/openssl/provider.h
diff options
context:
space:
mode:
authorBobTheBob9 <for.oliver.kirkham@gmail.com>2023-01-04 18:08:13 +0000
committerBobTheBob9 <for.oliver.kirkham@gmail.com>2023-01-04 18:08:13 +0000
commite9f8a34dc3ca736f307cf195390aee7c8f5cb456 (patch)
treee65d1c2b1888895baf65bbde73e0a1a02cbb091a /include/openssl/provider.h
parent6c45c7e94634c340019d12615b7eae8f3c0f49b3 (diff)
parent4fb1ae07d8f078e7abde99900c6a8286148a380a (diff)
downloadNorthstarLauncher-e9f8a34dc3ca736f307cf195390aee7c8f5cb456.tar.gz
NorthstarLauncher-e9f8a34dc3ca736f307cf195390aee7c8f5cb456.zip
Merge remote-tracking branch 'origin/main' into experimental-bots-pr
Diffstat (limited to 'include/openssl/provider.h')
-rw-r--r--include/openssl/provider.h60
1 files changed, 60 insertions, 0 deletions
diff --git a/include/openssl/provider.h b/include/openssl/provider.h
new file mode 100644
index 00000000..dc86ff58
--- /dev/null
+++ b/include/openssl/provider.h
@@ -0,0 +1,60 @@
+/*
+ * Copyright 2019-2021 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
+ */
+
+#ifndef OPENSSL_PROVIDER_H
+# define OPENSSL_PROVIDER_H
+# pragma once
+
+# include <openssl/core.h>
+
+# ifdef __cplusplus
+extern "C" {
+# endif
+
+/* Set the default provider search path */
+int OSSL_PROVIDER_set_default_search_path(OSSL_LIB_CTX *, const char *path);
+
+/* Load and unload a provider */
+OSSL_PROVIDER *OSSL_PROVIDER_load(OSSL_LIB_CTX *, const char *name);
+OSSL_PROVIDER *OSSL_PROVIDER_try_load(OSSL_LIB_CTX *, const char *name,
+ int retain_fallbacks);
+int OSSL_PROVIDER_unload(OSSL_PROVIDER *prov);
+int OSSL_PROVIDER_available(OSSL_LIB_CTX *, const char *name);
+int OSSL_PROVIDER_do_all(OSSL_LIB_CTX *ctx,
+ int (*cb)(OSSL_PROVIDER *provider, void *cbdata),
+ void *cbdata);
+
+const OSSL_PARAM *OSSL_PROVIDER_gettable_params(const OSSL_PROVIDER *prov);
+int OSSL_PROVIDER_get_params(const OSSL_PROVIDER *prov, OSSL_PARAM params[]);
+int OSSL_PROVIDER_self_test(const OSSL_PROVIDER *prov);
+int OSSL_PROVIDER_get_capabilities(const OSSL_PROVIDER *prov,
+ const char *capability,
+ OSSL_CALLBACK *cb,
+ void *arg);
+
+const OSSL_ALGORITHM *OSSL_PROVIDER_query_operation(const OSSL_PROVIDER *prov,
+ int operation_id,
+ int *no_cache);
+void OSSL_PROVIDER_unquery_operation(const OSSL_PROVIDER *prov,
+ int operation_id, const OSSL_ALGORITHM *algs);
+void *OSSL_PROVIDER_get0_provider_ctx(const OSSL_PROVIDER *prov);
+const OSSL_DISPATCH *OSSL_PROVIDER_get0_dispatch(const OSSL_PROVIDER *prov);
+
+/* Add a built in providers */
+int OSSL_PROVIDER_add_builtin(OSSL_LIB_CTX *, const char *name,
+ OSSL_provider_init_fn *init_fn);
+
+/* Information */
+const char *OSSL_PROVIDER_get0_name(const OSSL_PROVIDER *prov);
+
+# ifdef __cplusplus
+}
+# endif
+
+#endif