Line | Source | Count |
1 | | - |
2 | | - |
3 | | - |
4 | | - |
5 | | - |
6 | | - |
7 | | - |
8 | | - |
9 | | - |
10 | #include "internal/cryptlib.h" | - |
11 | #include <openssl/x509.h> | - |
12 | #include <openssl/x509v3.h> | - |
13 | | - |
14 | #include "pcy_int.h" | - |
15 | | - |
16 | | - |
17 | | - |
18 | void policy_data_free(X509_POLICY_DATA *data) | - |
19 | { | - |
20 | if (data == NULL)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
21 | return; never executed: return; | 0 |
22 | ASN1_OBJECT_free(data->valid_policy); | - |
23 | | - |
24 | if (!(data->flags & POLICY_DATA_FLAG_SHARED_QUALIFIERS))TRUE | never evaluated | FALSE | never evaluated |
| 0 |
25 | sk_POLICYQUALINFO_pop_free(data->qualifier_set, POLICYQUALINFO_free); never executed: sk_POLICYQUALINFO_pop_free(data->qualifier_set, POLICYQUALINFO_free); | 0 |
26 | sk_ASN1_OBJECT_pop_free(data->expected_policy_set, ASN1_OBJECT_free); | - |
27 | OPENSSL_free(data); | - |
28 | } never executed: end of block | 0 |
29 | | - |
30 | | - |
31 | | - |
32 | | - |
33 | | - |
34 | | - |
35 | | - |
36 | | - |
37 | | - |
38 | X509_POLICY_DATA *policy_data_new(POLICYINFO *policy, | - |
39 | const ASN1_OBJECT *cid, int crit) | - |
40 | { | - |
41 | X509_POLICY_DATA *ret; | - |
42 | ASN1_OBJECT *id; | - |
43 | | - |
44 | if (policy == NULL && cid == NULL)TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
45 | return NULL; never executed: return ((void *)0) ; | 0 |
46 | if (cid) {TRUE | never evaluated | FALSE | never evaluated |
| 0 |
47 | id = OBJ_dup(cid); | - |
48 | if (id == NULL)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
49 | return NULL; never executed: return ((void *)0) ; | 0 |
50 | } else never executed: end of block | 0 |
51 | id = NULL; never executed: id = ((void *)0) ; | 0 |
52 | ret = OPENSSL_zalloc(sizeof(*ret)); | - |
53 | if (ret == NULL) {TRUE | never evaluated | FALSE | never evaluated |
| 0 |
54 | X509V3err(X509V3_F_POLICY_DATA_NEW, ERR_R_MALLOC_FAILURE); | - |
55 | return NULL; never executed: return ((void *)0) ; | 0 |
56 | } | - |
57 | ret->expected_policy_set = sk_ASN1_OBJECT_new_null(); | - |
58 | if (ret->expected_policy_set == NULL) {TRUE | never evaluated | FALSE | never evaluated |
| 0 |
59 | OPENSSL_free(ret); | - |
60 | ASN1_OBJECT_free(id); | - |
61 | X509V3err(X509V3_F_POLICY_DATA_NEW, ERR_R_MALLOC_FAILURE); | - |
62 | return NULL; never executed: return ((void *)0) ; | 0 |
63 | } | - |
64 | | - |
65 | if (crit)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
66 | ret->flags = POLICY_DATA_FLAG_CRITICAL; never executed: ret->flags = 0x10; | 0 |
67 | | - |
68 | if (id)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
69 | ret->valid_policy = id; never executed: ret->valid_policy = id; | 0 |
70 | else { | - |
71 | ret->valid_policy = policy->policyid; | - |
72 | policy->policyid = NULL; | - |
73 | } never executed: end of block | 0 |
74 | | - |
75 | if (policy) {TRUE | never evaluated | FALSE | never evaluated |
| 0 |
76 | ret->qualifier_set = policy->qualifiers; | - |
77 | policy->qualifiers = NULL; | - |
78 | } never executed: end of block | 0 |
79 | | - |
80 | return ret; never executed: return ret; | 0 |
81 | } | - |
| | |