Absolute File Name: | /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ts/ts_verify_ctx.c |
Switch to Source code | Preprocessed file |
Line | Source | Count | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | - | |||||||||||||
2 | - | |||||||||||||
3 | TS_VERIFY_CTX * | - | ||||||||||||
4 | TS_VERIFY_CTX_new(void) | - | ||||||||||||
5 | { | - | ||||||||||||
6 | TS_VERIFY_CTX *ctx = calloc(1, sizeof(TS_VERIFY_CTX)); | - | ||||||||||||
7 | - | |||||||||||||
8 | if (!ctx
| 0 | ||||||||||||
9 | ERR_put_error(47,(0xfff),((1|64)),__FILE__,71); never executed: ERR_put_error(47,(0xfff),((1|64)),__FILE__,71); | 0 | ||||||||||||
10 | - | |||||||||||||
11 | return never executed: ctx;return ctx; never executed: return ctx; | 0 | ||||||||||||
12 | } | - | ||||||||||||
13 | - | |||||||||||||
14 | void | - | ||||||||||||
15 | TS_VERIFY_CTX_init(TS_VERIFY_CTX *ctx) | - | ||||||||||||
16 | { | - | ||||||||||||
17 | memset(ctx, 0, sizeof(TS_VERIFY_CTX)); | - | ||||||||||||
18 | } never executed: end of block | 0 | ||||||||||||
19 | - | |||||||||||||
20 | void | - | ||||||||||||
21 | TS_VERIFY_CTX_free(TS_VERIFY_CTX *ctx) | - | ||||||||||||
22 | { | - | ||||||||||||
23 | if (!ctx
| 0-1 | ||||||||||||
24 | return; executed 1 time by 1 test: return; Executed by:
| 1 | ||||||||||||
25 | - | |||||||||||||
26 | TS_VERIFY_CTX_cleanup(ctx); | - | ||||||||||||
27 | free(ctx); | - | ||||||||||||
28 | } never executed: end of block | 0 | ||||||||||||
29 | - | |||||||||||||
30 | void | - | ||||||||||||
31 | TS_VERIFY_CTX_cleanup(TS_VERIFY_CTX *ctx) | - | ||||||||||||
32 | { | - | ||||||||||||
33 | if (!ctx
| 0 | ||||||||||||
34 | return; never executed: return; | 0 | ||||||||||||
35 | - | |||||||||||||
36 | X509_STORE_free(ctx->store); | - | ||||||||||||
37 | sk_pop_free(((_STACK*) (1 ? (ctx->certs) : (struct stack_st_X509*)0)), ((void (*)(void *)) ((1 ? (X509_free) : (void (*)(X509 *))0)))); | - | ||||||||||||
38 | - | |||||||||||||
39 | ASN1_OBJECT_free(ctx->policy); | - | ||||||||||||
40 | - | |||||||||||||
41 | X509_ALGOR_free(ctx->md_alg); | - | ||||||||||||
42 | free(ctx->imprint); | - | ||||||||||||
43 | - | |||||||||||||
44 | BIO_free_all(ctx->data); | - | ||||||||||||
45 | - | |||||||||||||
46 | ASN1_INTEGER_free(ctx->nonce); | - | ||||||||||||
47 | - | |||||||||||||
48 | GENERAL_NAME_free(ctx->tsa_name); | - | ||||||||||||
49 | - | |||||||||||||
50 | TS_VERIFY_CTX_init(ctx); | - | ||||||||||||
51 | } never executed: end of block | 0 | ||||||||||||
52 | - | |||||||||||||
53 | TS_VERIFY_CTX * | - | ||||||||||||
54 | TS_REQ_to_TS_VERIFY_CTX(TS_REQ *req, TS_VERIFY_CTX *ctx) | - | ||||||||||||
55 | { | - | ||||||||||||
56 | TS_VERIFY_CTX *ret = ctx; | - | ||||||||||||
57 | ASN1_OBJECT *policy; | - | ||||||||||||
58 | TS_MSG_IMPRINT *imprint; | - | ||||||||||||
59 | X509_ALGOR *md_alg; | - | ||||||||||||
60 | ASN1_OCTET_STRING *msg; | - | ||||||||||||
61 | const ASN1_INTEGER *nonce; | - | ||||||||||||
62 | - | |||||||||||||
63 | if (ret
| 0 | ||||||||||||
64 | TS_VERIFY_CTX_cleanup(ret); never executed: TS_VERIFY_CTX_cleanup(ret); | 0 | ||||||||||||
65 | else if (!(ret = TS_VERIFY_CTX_new())
| 0 | ||||||||||||
66 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 | ||||||||||||
67 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||
68 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||
69 | - | |||||||||||||
70 | - | |||||||||||||
71 | ret->flags = ((1u << 0) | (1u << 1) | (1u << 2) | (1u << 3) | (1u << 5) | (1u << 6) | (1u << 7)) & ~((1u << 7) | (1u << 0)); | - | ||||||||||||
72 | - | |||||||||||||
73 | - | |||||||||||||
74 | if ((
| 0 | ||||||||||||
75 | ((void *)0)
| 0 | ||||||||||||
76 | ) { | - | ||||||||||||
77 | if (!(ret->policy = OBJ_dup(policy))
| 0 | ||||||||||||
78 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||
79 | } never executed: elseend of block | 0 | ||||||||||||
80 | ret->flags &= ~(1u << 2); never executed: ret->flags &= ~(1u << 2); | 0 | ||||||||||||
81 | - | |||||||||||||
82 | - | |||||||||||||
83 | imprint = TS_REQ_get_msg_imprint(req); | - | ||||||||||||
84 | md_alg = TS_MSG_IMPRINT_get_algo(imprint); | - | ||||||||||||
85 | if (!(ret->md_alg = X509_ALGOR_dup(md_alg))
| 0 | ||||||||||||
86 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||
87 | msg = TS_MSG_IMPRINT_get_msg(imprint); | - | ||||||||||||
88 | ret->imprint_len = ASN1_STRING_length(msg); | - | ||||||||||||
89 | if (!(ret->imprint = malloc(ret->imprint_len))
| 0 | ||||||||||||
90 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||
91 | memcpy(ret->imprint, ASN1_STRING_data(msg), ret->imprint_len); | - | ||||||||||||
92 | - | |||||||||||||
93 | - | |||||||||||||
94 | if ((
| 0 | ||||||||||||
95 | ((void *)0)
| 0 | ||||||||||||
96 | ) { | - | ||||||||||||
97 | if (!(ret->nonce = ASN1_INTEGER_dup(nonce))
| 0 | ||||||||||||
98 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||
99 | } never executed: elseend of block | 0 | ||||||||||||
100 | ret->flags &= ~(1u << 5); never executed: ret->flags &= ~(1u << 5); | 0 | ||||||||||||
101 | - | |||||||||||||
102 | return never executed: ret;return ret; never executed: return ret; | 0 | ||||||||||||
103 | - | |||||||||||||
104 | err: | - | ||||||||||||
105 | if (ctx
| 0 | ||||||||||||
106 | TS_VERIFY_CTX_cleanup(ctx); never executed: TS_VERIFY_CTX_cleanup(ctx); | 0 | ||||||||||||
107 | else | - | ||||||||||||
108 | TS_VERIFY_CTX_free(ret); never executed: TS_VERIFY_CTX_free(ret); | 0 | ||||||||||||
109 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 | ||||||||||||
110 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||
111 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||
112 | } | - | ||||||||||||
Switch to Source code | Preprocessed file |