summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/ct/ct_x509v3.c
diff options
context:
space:
mode:
authorbeck <>2021-10-28 11:55:43 +0000
committerbeck <>2021-10-28 11:55:43 +0000
commitec2d356d7b85eac502fd0bf0af74ea37d008b0e9 (patch)
tree1f2e0d435ff5311db6957d62b59e97937f97ecbc /src/lib/libcrypto/ct/ct_x509v3.c
parentf15d6960d6008073b238e45bb377f5a72d1161fc (diff)
downloadopenbsd-ec2d356d7b85eac502fd0bf0af74ea37d008b0e9.tar.gz
openbsd-ec2d356d7b85eac502fd0bf0af74ea37d008b0e9.tar.bz2
openbsd-ec2d356d7b85eac502fd0bf0af74ea37d008b0e9.zip
Mechanical KNF in preparation for changing
Diffstat (limited to '')
-rw-r--r--src/lib/libcrypto/ct/ct_x509v3.c126
1 files changed, 64 insertions, 62 deletions
diff --git a/src/lib/libcrypto/ct/ct_x509v3.c b/src/lib/libcrypto/ct/ct_x509v3.c
index 19c2a852d2..32312e2c6b 100644
--- a/src/lib/libcrypto/ct/ct_x509v3.c
+++ b/src/lib/libcrypto/ct/ct_x509v3.c
@@ -13,92 +13,94 @@
13 13
14#include "ct_local.h" 14#include "ct_local.h"
15 15
16static char *i2s_poison(const X509V3_EXT_METHOD *method, void *val) 16static char *
17i2s_poison(const X509V3_EXT_METHOD *method, void *val)
17{ 18{
18 return OPENSSL_strdup("NULL"); 19 return OPENSSL_strdup("NULL");
19} 20}
20 21
21static void *s2i_poison(const X509V3_EXT_METHOD *method, X509V3_CTX *ctx, const char *str) 22static void *
23s2i_poison(const X509V3_EXT_METHOD *method, X509V3_CTX *ctx, const char *str)
22{ 24{
23 return ASN1_NULL_new(); 25 return ASN1_NULL_new();
24} 26}
25 27
26static int i2r_SCT_LIST(X509V3_EXT_METHOD *method, STACK_OF(SCT) *sct_list, 28static int
27 BIO *out, int indent) 29i2r_SCT_LIST(X509V3_EXT_METHOD *method, STACK_OF(SCT) *sct_list, BIO *out,
30 int indent)
28{ 31{
29 SCT_LIST_print(sct_list, out, indent, "\n", NULL); 32 SCT_LIST_print(sct_list, out, indent, "\n", NULL);
30 return 1; 33 return 1;
31} 34}
32 35
33static int set_sct_list_source(STACK_OF(SCT) *s, sct_source_t source) 36static int
37set_sct_list_source(STACK_OF(SCT) *s, sct_source_t source)
34{ 38{
35 if (s != NULL) { 39 if (s != NULL) {
36 int i; 40 int i;
37 41
38 for (i = 0; i < sk_SCT_num(s); i++) { 42 for (i = 0; i < sk_SCT_num(s); i++) {
39 int res = SCT_set_source(sk_SCT_value(s, i), source); 43 int res = SCT_set_source(sk_SCT_value(s, i), source);
40 44
41 if (res != 1) { 45 if (res != 1) {
42 return 0; 46 return 0;
43 } 47 }
44 } 48 }
45 } 49 }
46 return 1; 50 return 1;
47} 51}
48 52
49static STACK_OF(SCT) *x509_ext_d2i_SCT_LIST(STACK_OF(SCT) **a, 53static STACK_OF(SCT) *
50 const unsigned char **pp, 54x509_ext_d2i_SCT_LIST(STACK_OF(SCT) **a, const unsigned char **pp, long len)
51 long len)
52{ 55{
53 STACK_OF(SCT) *s = d2i_SCT_LIST(a, pp, len); 56 STACK_OF(SCT) *s = d2i_SCT_LIST(a, pp, len);
54 57
55 if (set_sct_list_source(s, SCT_SOURCE_X509V3_EXTENSION) != 1) { 58 if (set_sct_list_source(s, SCT_SOURCE_X509V3_EXTENSION) != 1) {
56 SCT_LIST_free(s); 59 SCT_LIST_free(s);
57 *a = NULL; 60 *a = NULL;
58 return NULL; 61 return NULL;
59 } 62 }
60 return s; 63 return s;
61} 64}
62 65
63static STACK_OF(SCT) *ocsp_ext_d2i_SCT_LIST(STACK_OF(SCT) **a, 66static STACK_OF(SCT) *o
64 const unsigned char **pp, 67csp_ext_d2i_SCT_LIST(STACK_OF(SCT) **a, const unsigned char **pp, long len)
65 long len)
66{ 68{
67 STACK_OF(SCT) *s = d2i_SCT_LIST(a, pp, len); 69 STACK_OF(SCT) *s = d2i_SCT_LIST(a, pp, len);
68 70
69 if (set_sct_list_source(s, SCT_SOURCE_OCSP_STAPLED_RESPONSE) != 1) { 71 if (set_sct_list_source(s, SCT_SOURCE_OCSP_STAPLED_RESPONSE) != 1) {
70 SCT_LIST_free(s); 72 SCT_LIST_free(s);
71 *a = NULL; 73 *a = NULL;
72 return NULL; 74 return NULL;
73 } 75 }
74 return s; 76 return s;
75} 77}
76 78
77/* Handlers for X509v3/OCSP Certificate Transparency extensions */ 79/* Handlers for X509v3/OCSP Certificate Transparency extensions */
78const X509V3_EXT_METHOD v3_ct_scts[3] = { 80const X509V3_EXT_METHOD v3_ct_scts[3] = {
79 /* X509v3 extension in certificates that contains SCTs */ 81 /* X509v3 extension in certificates that contains SCTs */
80 { NID_ct_precert_scts, 0, NULL, 82 { NID_ct_precert_scts, 0, NULL,
81 NULL, (X509V3_EXT_FREE)SCT_LIST_free, 83 NULL, (X509V3_EXT_FREE)SCT_LIST_free,
82 (X509V3_EXT_D2I)x509_ext_d2i_SCT_LIST, (X509V3_EXT_I2D)i2d_SCT_LIST, 84 (X509V3_EXT_D2I)x509_ext_d2i_SCT_LIST, (X509V3_EXT_I2D)i2d_SCT_LIST,
83 NULL, NULL, 85 NULL, NULL,
84 NULL, NULL, 86 NULL, NULL,
85 (X509V3_EXT_I2R)i2r_SCT_LIST, NULL, 87 (X509V3_EXT_I2R)i2r_SCT_LIST, NULL,
86 NULL }, 88 NULL },
87 89
88 /* X509v3 extension to mark a certificate as a pre-certificate */ 90 /* X509v3 extension to mark a certificate as a pre-certificate */
89 { NID_ct_precert_poison, 0, ASN1_ITEM_ref(ASN1_NULL), 91 { NID_ct_precert_poison, 0, ASN1_ITEM_ref(ASN1_NULL),
90 NULL, NULL, NULL, NULL, 92 NULL, NULL, NULL, NULL,
91 i2s_poison, s2i_poison, 93 i2s_poison, s2i_poison,
92 NULL, NULL, 94 NULL, NULL,
93 NULL, NULL, 95 NULL, NULL,
94 NULL }, 96 NULL },
95 97
96 /* OCSP extension that contains SCTs */ 98 /* OCSP extension that contains SCTs */
97 { NID_ct_cert_scts, 0, NULL, 99 { NID_ct_cert_scts, 0, NULL,
98 0, (X509V3_EXT_FREE)SCT_LIST_free, 100 0, (X509V3_EXT_FREE)SCT_LIST_free,
99 (X509V3_EXT_D2I)ocsp_ext_d2i_SCT_LIST, (X509V3_EXT_I2D)i2d_SCT_LIST, 101 (X509V3_EXT_D2I)ocsp_ext_d2i_SCT_LIST, (X509V3_EXT_I2D)i2d_SCT_LIST,
100 NULL, NULL, 102 NULL, NULL,
101 NULL, NULL, 103 NULL, NULL,
102 (X509V3_EXT_I2R)i2r_SCT_LIST, NULL, 104 (X509V3_EXT_I2R)i2r_SCT_LIST, NULL,
103 NULL }, 105 NULL },
104}; 106};