/src/openssl31/providers/common/provider_ctx.c
Line | Count | Source (jump to first uncovered line) |
1 | | /* |
2 | | * Copyright 2020 The OpenSSL Project Authors. All Rights Reserved. |
3 | | * |
4 | | * Licensed under the Apache License 2.0 (the "License"). You may not use |
5 | | * this file except in compliance with the License. You can obtain a copy |
6 | | * in the file LICENSE in the source distribution or at |
7 | | * https://www.openssl.org/source/license.html |
8 | | */ |
9 | | |
10 | | #include <stdlib.h> |
11 | | #include "prov/provider_ctx.h" |
12 | | #include "prov/bio.h" |
13 | | |
14 | | PROV_CTX *ossl_prov_ctx_new(void) |
15 | 45 | { |
16 | 45 | return OPENSSL_zalloc(sizeof(PROV_CTX)); |
17 | 45 | } |
18 | | |
19 | | void ossl_prov_ctx_free(PROV_CTX *ctx) |
20 | 43 | { |
21 | 43 | OPENSSL_free(ctx); |
22 | 43 | } |
23 | | |
24 | | void ossl_prov_ctx_set0_libctx(PROV_CTX *ctx, OSSL_LIB_CTX *libctx) |
25 | 45 | { |
26 | 45 | if (ctx != NULL) |
27 | 45 | ctx->libctx = libctx; |
28 | 45 | } |
29 | | |
30 | | void ossl_prov_ctx_set0_handle(PROV_CTX *ctx, const OSSL_CORE_HANDLE *handle) |
31 | 45 | { |
32 | 45 | if (ctx != NULL) |
33 | 45 | ctx->handle = handle; |
34 | 45 | } |
35 | | |
36 | | void ossl_prov_ctx_set0_core_bio_method(PROV_CTX *ctx, BIO_METHOD *corebiometh) |
37 | 45 | { |
38 | 45 | if (ctx != NULL) |
39 | 45 | ctx->corebiometh = corebiometh; |
40 | 45 | } |
41 | | |
42 | | OSSL_LIB_CTX *ossl_prov_ctx_get0_libctx(PROV_CTX *ctx) |
43 | 3.57M | { |
44 | 3.57M | if (ctx == NULL) |
45 | 0 | return NULL; |
46 | 3.57M | return ctx->libctx; |
47 | 3.57M | } |
48 | | |
49 | | const OSSL_CORE_HANDLE *ossl_prov_ctx_get0_handle(PROV_CTX *ctx) |
50 | 616 | { |
51 | 616 | if (ctx == NULL) |
52 | 0 | return NULL; |
53 | 616 | return ctx->handle; |
54 | 616 | } |
55 | | |
56 | | BIO_METHOD *ossl_prov_ctx_get0_core_bio_method(PROV_CTX *ctx) |
57 | 3.87M | { |
58 | 3.87M | if (ctx == NULL) |
59 | 0 | return NULL; |
60 | 3.87M | return ctx->corebiometh; |
61 | 3.87M | } |