Line | Source | Count |
1 | | - |
2 | static GENERAL_NAMES *v2i_subject_alt(X509V3_EXT_METHOD *method, | - |
3 | X509V3_CTX *ctx, | - |
4 | struct stack_st_CONF_VALUE *nval); | - |
5 | static GENERAL_NAMES *v2i_issuer_alt(X509V3_EXT_METHOD *method, | - |
6 | X509V3_CTX *ctx, | - |
7 | struct stack_st_CONF_VALUE *nval); | - |
8 | static int copy_email(X509V3_CTX *ctx, GENERAL_NAMES *gens, int move_p); | - |
9 | static int copy_issuer(X509V3_CTX *ctx, GENERAL_NAMES *gens); | - |
10 | static int do_othername(GENERAL_NAME *gen, const char *value, X509V3_CTX *ctx); | - |
11 | static int do_dirname(GENERAL_NAME *gen, const char *value, X509V3_CTX *ctx); | - |
12 | | - |
13 | const X509V3_EXT_METHOD v3_alt[3] = { | - |
14 | {85, 0, (&(GENERAL_NAMES_it)), | - |
15 | 0, 0, 0, 0, | - |
16 | 0, 0, | - |
17 | (X509V3_EXT_I2V) i2v_GENERAL_NAMES, | - |
18 | (X509V3_EXT_V2I)v2i_subject_alt, | - |
19 | | - |
20 | ((void *)0) | - |
21 | , | - |
22 | ((void *)0) | - |
23 | , | - |
24 | ((void *)0) | - |
25 | }, | - |
26 | | - |
27 | {86, 0, (&(GENERAL_NAMES_it)), | - |
28 | 0, 0, 0, 0, | - |
29 | 0, 0, | - |
30 | (X509V3_EXT_I2V) i2v_GENERAL_NAMES, | - |
31 | (X509V3_EXT_V2I)v2i_issuer_alt, | - |
32 | | - |
33 | ((void *)0) | - |
34 | , | - |
35 | ((void *)0) | - |
36 | , | - |
37 | ((void *)0) | - |
38 | }, | - |
39 | | - |
40 | {771, 0, (&(GENERAL_NAMES_it)), | - |
41 | 0, 0, 0, 0, | - |
42 | 0, 0, | - |
43 | (X509V3_EXT_I2V) i2v_GENERAL_NAMES, | - |
44 | | - |
45 | ((void *)0) | - |
46 | , | - |
47 | ((void *)0) | - |
48 | , | - |
49 | ((void *)0) | - |
50 | , | - |
51 | ((void *)0) | - |
52 | }, | - |
53 | }; | - |
54 | | - |
55 | struct stack_st_CONF_VALUE *i2v_GENERAL_NAMES(X509V3_EXT_METHOD *method, | - |
56 | GENERAL_NAMES *gens, | - |
57 | struct stack_st_CONF_VALUE *ret) | - |
58 | { | - |
59 | int i; | - |
60 | GENERAL_NAME *gen; | - |
61 | for (i = 0; i < sk_GENERAL_NAME_num(gens)TRUE | evaluated 7477 times by 1 test | FALSE | evaluated 3794 times by 1 test |
; i++) { | 3794-7477 |
62 | gen = sk_GENERAL_NAME_value(gens, i); | - |
63 | ret = i2v_GENERAL_NAME(method, gen, ret); | - |
64 | }executed 7477 times by 1 test: end of block | 7477 |
65 | if (!retTRUE | evaluated 617 times by 1 test | FALSE | evaluated 3177 times by 1 test |
) | 617-3177 |
66 | returnexecuted 617 times by 1 test: return sk_CONF_VALUE_new_null(); sk_CONF_VALUE_new_null();executed 617 times by 1 test: return sk_CONF_VALUE_new_null(); | 617 |
67 | returnexecuted 3177 times by 1 test: return ret; ret;executed 3177 times by 1 test: return ret; | 3177 |
68 | } | - |
69 | | - |
70 | struct stack_st_CONF_VALUE *i2v_GENERAL_NAME(X509V3_EXT_METHOD *method, | - |
71 | GENERAL_NAME *gen, | - |
72 | struct stack_st_CONF_VALUE *ret) | - |
73 | { | - |
74 | unsigned char *p; | - |
75 | char oline[256], htmp[5]; | - |
76 | int i; | - |
77 | | - |
78 | switch (gen->type) { | - |
79 | caseexecuted 110 times by 1 test: case 0: 0:executed 110 times by 1 test: case 0: | 110 |
80 | if (!X509V3_add_value("othername", "<unsupported>", &ret)TRUE | never evaluated | FALSE | evaluated 110 times by 1 test |
) | 0-110 |
81 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
82 | ((void *)0) never executed: return ((void *)0) ; | 0 |
83 | ; never executed: return ((void *)0) ; | 0 |
84 | break;executed 110 times by 1 test: break; | 110 |
85 | | - |
86 | caseexecuted 485 times by 1 test: case 3: 3:executed 485 times by 1 test: case 3: | 485 |
87 | if (!X509V3_add_value("X400Name", "<unsupported>", &ret)TRUE | never evaluated | FALSE | evaluated 485 times by 1 test |
) | 0-485 |
88 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
89 | ((void *)0) never executed: return ((void *)0) ; | 0 |
90 | ; never executed: return ((void *)0) ; | 0 |
91 | break;executed 485 times by 1 test: break; | 485 |
92 | | - |
93 | caseexecuted 426 times by 1 test: case 5: 5:executed 426 times by 1 test: case 5: | 426 |
94 | if (!X509V3_add_value("EdiPartyName", "<unsupported>", &ret)TRUE | never evaluated | FALSE | evaluated 426 times by 1 test |
) | 0-426 |
95 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
96 | ((void *)0) never executed: return ((void *)0) ; | 0 |
97 | ; never executed: return ((void *)0) ; | 0 |
98 | break;executed 426 times by 1 test: break; | 426 |
99 | | - |
100 | caseexecuted 1739 times by 1 test: case 1: 1:executed 1739 times by 1 test: case 1: | 1739 |
101 | if (!X509V3_add_value_uchar("email", gen->d.ia5->data, &ret)TRUE | never evaluated | FALSE | evaluated 1739 times by 1 test |
) | 0-1739 |
102 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
103 | ((void *)0) never executed: return ((void *)0) ; | 0 |
104 | ; never executed: return ((void *)0) ; | 0 |
105 | break;executed 1739 times by 1 test: break; | 1739 |
106 | | - |
107 | caseexecuted 786 times by 1 test: case 2: 2:executed 786 times by 1 test: case 2: | 786 |
108 | if (!X509V3_add_value_uchar("DNS", gen->d.ia5->data, &ret)TRUE | never evaluated | FALSE | evaluated 786 times by 1 test |
) | 0-786 |
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 | break;executed 786 times by 1 test: break; | 786 |
113 | | - |
114 | caseexecuted 1086 times by 1 test: case 6: 6:executed 1086 times by 1 test: case 6: | 1086 |
115 | if (!X509V3_add_value_uchar("URI", gen->d.ia5->data, &ret)TRUE | never evaluated | FALSE | evaluated 1086 times by 1 test |
) | 0-1086 |
116 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
117 | ((void *)0) never executed: return ((void *)0) ; | 0 |
118 | ; never executed: return ((void *)0) ; | 0 |
119 | break;executed 1086 times by 1 test: break; | 1086 |
120 | | - |
121 | caseexecuted 461 times by 1 test: case 4: 4:executed 461 times by 1 test: case 4: | 461 |
122 | if (X509_NAME_oneline(gen->d.dirn, oline, sizeof(oline)) == TRUE | never evaluated | FALSE | evaluated 461 times by 1 test |
| 0-461 |
123 | ((void *)0)TRUE | never evaluated | FALSE | evaluated 461 times by 1 test |
| 0-461 |
124 | | - |
125 | || !X509V3_add_value("DirName", oline, &ret)TRUE | never evaluated | FALSE | evaluated 461 times by 1 test |
) | 0-461 |
126 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
127 | ((void *)0) never executed: return ((void *)0) ; | 0 |
128 | ; never executed: return ((void *)0) ; | 0 |
129 | break;executed 461 times by 1 test: break; | 461 |
130 | | - |
131 | caseexecuted 2009 times by 1 test: case 7: 7:executed 2009 times by 1 test: case 7: | 2009 |
132 | p = gen->d.ip->data; | - |
133 | if (gen->d.ip->length == 4TRUE | evaluated 827 times by 1 test | FALSE | evaluated 1182 times by 1 test |
) | 827-1182 |
134 | BIO_snprintf(oline, sizeof(oline), "%d.%d.%d.%d",executed 827 times by 1 test: BIO_snprintf(oline, sizeof(oline), "%d.%d.%d.%d", p[0], p[1], p[2], p[3]); | 827 |
135 | p[0], p[1], p[2], p[3]);executed 827 times by 1 test: BIO_snprintf(oline, sizeof(oline), "%d.%d.%d.%d", p[0], p[1], p[2], p[3]); | 827 |
136 | else if (gen->d.ip->length == 16TRUE | evaluated 628 times by 1 test | FALSE | evaluated 554 times by 1 test |
) { | 554-628 |
137 | oline[0] = 0; | - |
138 | for (i = 0; i < 8TRUE | evaluated 5024 times by 1 test | FALSE | evaluated 628 times by 1 test |
; i++) { | 628-5024 |
139 | BIO_snprintf(htmp, sizeof(htmp), "%X", p[0] << 8 | p[1]); | - |
140 | p += 2; | - |
141 | strcat(oline, htmp); | - |
142 | if (i != 7TRUE | evaluated 4396 times by 1 test | FALSE | evaluated 628 times by 1 test |
) | 628-4396 |
143 | strcat(oline, ":");executed 4396 times by 1 test: strcat(oline, ":"); | 4396 |
144 | }executed 5024 times by 1 test: end of block | 5024 |
145 | }executed 628 times by 1 test: end of block else { | 628 |
146 | if (!X509V3_add_value("IP Address", "<invalid>", &ret)TRUE | never evaluated | FALSE | evaluated 554 times by 1 test |
) | 0-554 |
147 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
148 | ((void *)0) never executed: return ((void *)0) ; | 0 |
149 | ; never executed: return ((void *)0) ; | 0 |
150 | break;executed 554 times by 1 test: break; | 554 |
151 | } | - |
152 | if (!X509V3_add_value("IP Address", oline, &ret)TRUE | never evaluated | FALSE | evaluated 1455 times by 1 test |
) | 0-1455 |
153 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
154 | ((void *)0) never executed: return ((void *)0) ; | 0 |
155 | ; never executed: return ((void *)0) ; | 0 |
156 | break;executed 1455 times by 1 test: break; | 1455 |
157 | | - |
158 | caseexecuted 520 times by 1 test: case 8: 8:executed 520 times by 1 test: case 8: | 520 |
159 | i2t_ASN1_OBJECT(oline, 256, gen->d.rid); | - |
160 | if (!X509V3_add_value("Registered ID", oline, &ret)TRUE | never evaluated | FALSE | evaluated 520 times by 1 test |
) | 0-520 |
161 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
162 | ((void *)0) never executed: return ((void *)0) ; | 0 |
163 | ; never executed: return ((void *)0) ; | 0 |
164 | break;executed 520 times by 1 test: break; | 520 |
165 | } | - |
166 | returnexecuted 7622 times by 1 test: return ret; ret;executed 7622 times by 1 test: return ret; | 7622 |
167 | } | - |
168 | | - |
169 | int GENERAL_NAME_print(BIO *out, GENERAL_NAME *gen) | - |
170 | { | - |
171 | unsigned char *p; | - |
172 | int i; | - |
173 | switch (gen->type) { | - |
174 | caseexecuted 207 times by 1 test: case 0: 0:executed 207 times by 1 test: case 0: | 207 |
175 | BIO_printf(out, "othername:<unsupported>"); | - |
176 | break;executed 207 times by 1 test: break; | 207 |
177 | | - |
178 | caseexecuted 463 times by 1 test: case 3: 3:executed 463 times by 1 test: case 3: | 463 |
179 | BIO_printf(out, "X400Name:<unsupported>"); | - |
180 | break;executed 463 times by 1 test: break; | 463 |
181 | | - |
182 | caseexecuted 601 times by 1 test: case 5: 5:executed 601 times by 1 test: case 5: | 601 |
183 | | - |
184 | BIO_printf(out, "EdiPartyName:<unsupported>"); | - |
185 | break;executed 601 times by 1 test: break; | 601 |
186 | | - |
187 | caseexecuted 1105 times by 1 test: case 1: 1:executed 1105 times by 1 test: case 1: | 1105 |
188 | BIO_printf(out, "email:%s", gen->d.ia5->data); | - |
189 | break;executed 1105 times by 1 test: break; | 1105 |
190 | | - |
191 | caseexecuted 504 times by 1 test: case 2: 2:executed 504 times by 1 test: case 2: | 504 |
192 | BIO_printf(out, "DNS:%s", gen->d.ia5->data); | - |
193 | break;executed 504 times by 1 test: break; | 504 |
194 | | - |
195 | caseexecuted 648 times by 1 test: case 6: 6:executed 648 times by 1 test: case 6: | 648 |
196 | BIO_printf(out, "URI:%s", gen->d.ia5->data); | - |
197 | break;executed 648 times by 1 test: break; | 648 |
198 | | - |
199 | caseexecuted 778 times by 1 test: case 4: 4:executed 778 times by 1 test: case 4: | 778 |
200 | BIO_printf(out, "DirName:"); | - |
201 | X509_NAME_print_ex(out, gen->d.dirn, 0, ((1 | 2 | 4 | 0x10 | 0x100 | 0x200) | 8 | (2 << 16) | (1 << 23) | 0)); | - |
202 | break;executed 778 times by 1 test: break; | 778 |
203 | | - |
204 | caseexecuted 2302 times by 1 test: case 7: 7:executed 2302 times by 1 test: case 7: | 2302 |
205 | p = gen->d.ip->data; | - |
206 | if (gen->d.ip->length == 4TRUE | evaluated 531 times by 1 test | FALSE | evaluated 1771 times by 1 test |
) | 531-1771 |
207 | BIO_printf(out, "IP Address:%d.%d.%d.%d", p[0], p[1], p[2], p[3]);executed 531 times by 1 test: BIO_printf(out, "IP Address:%d.%d.%d.%d", p[0], p[1], p[2], p[3]); | 531 |
208 | else if (gen->d.ip->length == 16TRUE | evaluated 631 times by 1 test | FALSE | evaluated 1140 times by 1 test |
) { | 631-1140 |
209 | BIO_printf(out, "IP Address"); | - |
210 | for (i = 0; i < 8TRUE | evaluated 5048 times by 1 test | FALSE | evaluated 631 times by 1 test |
; i++) { | 631-5048 |
211 | BIO_printf(out, ":%X", p[0] << 8 | p[1]); | - |
212 | p += 2; | - |
213 | }executed 5048 times by 1 test: end of block | 5048 |
214 | BIO_puts(out, "\n"); | - |
215 | }executed 631 times by 1 test: end of block else { | 631 |
216 | BIO_printf(out, "IP Address:<invalid>"); | - |
217 | break;executed 1140 times by 1 test: break; | 1140 |
218 | } | - |
219 | break;executed 1162 times by 1 test: break; | 1162 |
220 | | - |
221 | caseexecuted 518 times by 1 test: case 8: 8:executed 518 times by 1 test: case 8: | 518 |
222 | BIO_printf(out, "Registered ID:"); | - |
223 | i2a_ASN1_OBJECT(out, gen->d.rid); | - |
224 | break;executed 518 times by 1 test: break; | 518 |
225 | } | - |
226 | returnexecuted 7126 times by 1 test: return 1; 1;executed 7126 times by 1 test: return 1; | 7126 |
227 | } | - |
228 | | - |
229 | static GENERAL_NAMES *v2i_issuer_alt(X509V3_EXT_METHOD *method, | - |
230 | X509V3_CTX *ctx, | - |
231 | struct stack_st_CONF_VALUE *nval) | - |
232 | { | - |
233 | const int num = sk_CONF_VALUE_num(nval); | - |
234 | GENERAL_NAMES *gens = sk_GENERAL_NAME_new_reserve( | - |
235 | ((void *)0) | - |
236 | , num); | - |
237 | int i; | - |
238 | | - |
239 | if (gens == TRUE | never evaluated | FALSE | evaluated 4 times by 1 test |
| 0-4 |
240 | ((void *)0)TRUE | never evaluated | FALSE | evaluated 4 times by 1 test |
| 0-4 |
241 | ) { | - |
242 | ERR_put_error(34,(153),((1|64)),__FILE__,210); | - |
243 | sk_GENERAL_NAME_free(gens); | - |
244 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
245 | ((void *)0) never executed: return ((void *)0) ; | 0 |
246 | ; never executed: return ((void *)0) ; | 0 |
247 | } | - |
248 | for (i = 0; i < numTRUE | evaluated 4 times by 1 test | FALSE | evaluated 4 times by 1 test |
; i++) { | 4 |
249 | CONF_VALUE *cnf = sk_CONF_VALUE_value(nval, i); | - |
250 | | - |
251 | if (!name_cmp(cnf->name, "issuer")TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
252 | && cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
&& | 0-4 |
253 | __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
254 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
255 | ) && __builtin_constant_p (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
256 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
257 | ) && (__s1_len = __builtin_strlen (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
258 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
259 | ), __s2_len = __builtin_strlen (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
260 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
261 | ), (!((size_t)(const void *)((TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
262 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
263 | ) + 1) - (size_t)(const void *)(TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
264 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
265 | ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
266 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
267 | ) + 1) - (size_t)(const void *)(TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
268 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
269 | ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
270 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
271 | , TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
272 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
273 | ) : (__builtin_constant_p (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
274 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
275 | ) && ((size_t)(const void *)((TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
276 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
277 | ) + 1) - (size_t)(const void *)(TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
278 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
279 | ) == 1) && (__s1_len = __builtin_strlen (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
280 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
281 | ), __s1_len < 4) ? (__builtin_constant_p (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
282 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
283 | ) && ((size_t)(const void *)((TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
284 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
285 | ) + 1) - (size_t)(const void *)(TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
286 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
287 | ) == 1) ? __builtin_strcmp (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
288 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
289 | , TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
290 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
291 | ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
292 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
293 | ); int __result = (((const unsigned char *) (const char *) (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
294 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
295 | ))[0] - __s2[0]); if (__s1_len > 0TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
296 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
297 | ))[1] - __s2[1]); if (__s1_len > 1TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
298 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
299 | ))[2] - __s2[2]); if (__s1_len > 2TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) __result = (((const unsigned char *) (const char *) (never executed: __result = (((const unsigned char *) (const char *) ( cnf->value ))[3] - __s2[3]); TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
300 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( cnf->value ))[3] - __s2[3]); | 0-4 |
301 | ))[3] - __s2[3]);TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( cnf->value ))[3] - __s2[3]); }never executed: end of block }never executed: end of block __result; }))) : (__builtin_constant_p (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
302 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
303 | ) && ((size_t)(const void *)((TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
304 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
305 | ) + 1) - (size_t)(const void *)(TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
306 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
307 | ) == 1) && (__s2_len = __builtin_strlen (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
308 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
309 | ), __s2_len < 4) ? (__builtin_constant_p (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
310 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
311 | ) && ((size_t)(const void *)((TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
312 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
313 | ) + 1) - (size_t)(const void *)(TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
314 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
315 | ) == 1) ? __builtin_strcmp (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
316 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
317 | , TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
318 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
319 | ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
320 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
321 | ); int __result = (((const unsigned char *) (const char *) (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
322 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
323 | ))[0] - __s2[0]); if (__s2_len > 0TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
324 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
325 | ))[1] - __s2[1]); if (__s2_len > 1TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
326 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
327 | ))[2] - __s2[2]); if (__s2_len > 2TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) __result = (((const unsigned char *) (const char *) (never executed: __result = (((const unsigned char *) (const char *) ( "copy" ))[3] - __s2[3]); TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
328 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( "copy" ))[3] - __s2[3]); | 0-4 |
329 | ))[3] - __s2[3]);TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( "copy" ))[3] - __s2[3]); }never executed: end of block }never executed: end of block __result; }))) : __builtin_strcmp (TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
330 | cnf->valueTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
331 | , TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
332 | "copy"TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
333 | )))); }) TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
| 0-4 |
334 | == 0TRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
) { | 0-4 |
335 | if (!copy_issuer(ctx, gens)TRUE | never evaluated | FALSE | evaluated 4 times by 1 test |
) | 0-4 |
336 | goto never executed: goto err; err;never executed: goto err; | 0 |
337 | }executed 4 times by 1 test: end of block else { | 4 |
338 | GENERAL_NAME *gen = v2i_GENERAL_NAME(method, ctx, cnf); | - |
339 | | - |
340 | if (gen == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
341 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
342 | ) | - |
343 | goto never executed: goto err; err;never executed: goto err; | 0 |
344 | sk_GENERAL_NAME_push(gens, gen); | - |
345 | } never executed: end of block | 0 |
346 | } | - |
347 | returnexecuted 4 times by 1 test: return gens; gens;executed 4 times by 1 test: return gens; | 4 |
348 | err: | - |
349 | sk_GENERAL_NAME_pop_free(gens, GENERAL_NAME_free); | - |
350 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
351 | ((void *)0) never executed: return ((void *)0) ; | 0 |
352 | ; never executed: return ((void *)0) ; | 0 |
353 | } | - |
354 | | - |
355 | | - |
356 | | - |
357 | static int copy_issuer(X509V3_CTX *ctx, GENERAL_NAMES *gens) | - |
358 | { | - |
359 | GENERAL_NAMES *ialt; | - |
360 | GENERAL_NAME *gen; | - |
361 | X509_EXTENSION *ext; | - |
362 | int i, num; | - |
363 | | - |
364 | if (ctxTRUE | evaluated 4 times by 1 test | FALSE | never evaluated |
&& (TRUE | evaluated 2 times by 1 test | FALSE | evaluated 2 times by 1 test |
ctx->flags == 0x1)TRUE | evaluated 2 times by 1 test | FALSE | evaluated 2 times by 1 test |
) | 0-4 |
365 | returnexecuted 2 times by 1 test: return 1; 1;executed 2 times by 1 test: return 1; | 2 |
366 | if (!ctxTRUE | never evaluated | FALSE | evaluated 2 times by 1 test |
|| !ctx->issuer_certTRUE | never evaluated | FALSE | evaluated 2 times by 1 test |
) { | 0-2 |
367 | ERR_put_error(34,(123),(127),__FILE__,247); | - |
368 | goto never executed: goto err; err;never executed: goto err; | 0 |
369 | } | - |
370 | i = X509_get_ext_by_NID(ctx->issuer_cert, 85, -1); | - |
371 | if (i < 0TRUE | evaluated 2 times by 1 test | FALSE | never evaluated |
) | 0-2 |
372 | returnexecuted 2 times by 1 test: return 1; 1;executed 2 times by 1 test: return 1; | 2 |
373 | if ((TRUE | never evaluated | FALSE | never evaluated |
ext = X509_get_ext(ctx->issuer_cert, i)) == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
374 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
375 | | - |
376 | || (TRUE | never evaluated | FALSE | never evaluated |
ialt = X509V3_EXT_d2i(ext)) == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
377 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
378 | ) { | - |
379 | ERR_put_error(34,(123),(126),__FILE__,255); | - |
380 | goto never executed: goto err; err;never executed: goto err; | 0 |
381 | } | - |
382 | | - |
383 | num = sk_GENERAL_NAME_num(ialt); | - |
384 | if (!sk_GENERAL_NAME_reserve(gens, num)TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
385 | ERR_put_error(34,(123),((1|64)),__FILE__,261); | - |
386 | goto never executed: goto err; err;never executed: goto err; | 0 |
387 | } | - |
388 | | - |
389 | for (i = 0; i < numTRUE | never evaluated | FALSE | never evaluated |
; i++) { | 0 |
390 | gen = sk_GENERAL_NAME_value(ialt, i); | - |
391 | sk_GENERAL_NAME_push(gens, gen); | - |
392 | } never executed: end of block | 0 |
393 | sk_GENERAL_NAME_free(ialt); | - |
394 | | - |
395 | return never executed: return 1; 1;never executed: return 1; | 0 |
396 | | - |
397 | err: | - |
398 | return never executed: return 0; 0;never executed: return 0; | 0 |
399 | | - |
400 | } | - |
401 | | - |
402 | static GENERAL_NAMES *v2i_subject_alt(X509V3_EXT_METHOD *method, | - |
403 | X509V3_CTX *ctx, | - |
404 | struct stack_st_CONF_VALUE *nval) | - |
405 | { | - |
406 | GENERAL_NAMES *gens; | - |
407 | CONF_VALUE *cnf; | - |
408 | const int num = sk_CONF_VALUE_num(nval); | - |
409 | int i; | - |
410 | | - |
411 | gens = sk_GENERAL_NAME_new_reserve( | - |
412 | ((void *)0) | - |
413 | , num); | - |
414 | if (gens == TRUE | never evaluated | FALSE | evaluated 2 times by 1 test |
| 0-2 |
415 | ((void *)0)TRUE | never evaluated | FALSE | evaluated 2 times by 1 test |
| 0-2 |
416 | ) { | - |
417 | ERR_put_error(34,(154),((1|64)),__FILE__,289); | - |
418 | sk_GENERAL_NAME_free(gens); | - |
419 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
420 | ((void *)0) never executed: return ((void *)0) ; | 0 |
421 | ; never executed: return ((void *)0) ; | 0 |
422 | } | - |
423 | | - |
424 | for (i = 0; i < numTRUE | evaluated 2 times by 1 test | FALSE | evaluated 2 times by 1 test |
; i++) { | 2 |
425 | cnf = sk_CONF_VALUE_value(nval, i); | - |
426 | if (!name_cmp(cnf->name, "email")TRUE | never evaluated | FALSE | evaluated 2 times by 1 test |
| 0-2 |
427 | && cnf->valueTRUE | never evaluated | FALSE | never evaluated |
&& | 0 |
428 | __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
429 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
430 | ) && __builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
431 | "copy"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
432 | ) && (__s1_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
433 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
434 | ), __s2_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
435 | "copy"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
436 | ), (!((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
437 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
438 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
439 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
440 | ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
441 | "copy"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
442 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
443 | "copy"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
444 | ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
445 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
446 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
447 | "copy"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
448 | ) : (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
449 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
450 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
451 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
452 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
453 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
454 | ) == 1) && (__s1_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
455 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
456 | ), __s1_len < 4) ? (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
457 | "copy"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
458 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
459 | "copy"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
460 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
461 | "copy"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
462 | ) == 1) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
463 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
464 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
465 | "copy"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
466 | ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
467 | "copy"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
468 | ); int __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
469 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
470 | ))[0] - __s2[0]); if (__s1_len > 0TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
471 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
472 | ))[1] - __s2[1]); if (__s1_len > 1TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
473 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
474 | ))[2] - __s2[2]); if (__s1_len > 2TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) __result = (((const unsigned char *) (const char *) (never executed: __result = (((const unsigned char *) (const char *) ( cnf->value ))[3] - __s2[3]); | 0 |
475 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( cnf->value ))[3] - __s2[3]); | 0 |
476 | ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
477 | "copy"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
478 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
479 | "copy"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
480 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
481 | "copy"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
482 | ) == 1) && (__s2_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
483 | "copy"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
484 | ), __s2_len < 4) ? (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
485 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
486 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
487 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
488 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
489 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
490 | ) == 1) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
491 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
492 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
493 | "copy"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
494 | ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
495 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
496 | ); int __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
497 | "copy"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
498 | ))[0] - __s2[0]); if (__s2_len > 0TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
499 | "copy"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
500 | ))[1] - __s2[1]); if (__s2_len > 1TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
501 | "copy"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
502 | ))[2] - __s2[2]); if (__s2_len > 2TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) __result = (((const unsigned char *) (const char *) (never executed: __result = (((const unsigned char *) (const char *) ( "copy" ))[3] - __s2[3]); | 0 |
503 | "copy"TRUE | never evaluated | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( "copy" ))[3] - __s2[3]); | 0 |
504 | ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
505 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
506 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
507 | "copy"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
508 | )))); }) TRUE | never evaluated | FALSE | never evaluated |
| 0 |
509 | == 0TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
510 | if (!copy_email(ctx, gens, 0)TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
511 | goto never executed: goto err; err;never executed: goto err; | 0 |
512 | } never executed: end of block else if (!name_cmp(cnf->name, "email")TRUE | never evaluated | FALSE | evaluated 2 times by 1 test |
| 0-2 |
513 | && cnf->valueTRUE | never evaluated | FALSE | never evaluated |
&& | 0 |
514 | __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
515 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
516 | ) && __builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
517 | "move"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
518 | ) && (__s1_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
519 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
520 | ), __s2_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
521 | "move"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
522 | ), (!((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
523 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
524 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
525 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
526 | ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
527 | "move"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
528 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
529 | "move"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
530 | ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
531 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
532 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
533 | "move"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
534 | ) : (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
535 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
536 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
537 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
538 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
539 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
540 | ) == 1) && (__s1_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
541 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
542 | ), __s1_len < 4) ? (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
543 | "move"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
544 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
545 | "move"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
546 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
547 | "move"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
548 | ) == 1) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
549 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
550 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
551 | "move"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
552 | ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
553 | "move"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
554 | ); int __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
555 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
556 | ))[0] - __s2[0]); if (__s1_len > 0TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
557 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
558 | ))[1] - __s2[1]); if (__s1_len > 1TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
559 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
560 | ))[2] - __s2[2]); if (__s1_len > 2TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) __result = (((const unsigned char *) (const char *) (never executed: __result = (((const unsigned char *) (const char *) ( cnf->value ))[3] - __s2[3]); | 0 |
561 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( cnf->value ))[3] - __s2[3]); | 0 |
562 | ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
563 | "move"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
564 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
565 | "move"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
566 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
567 | "move"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
568 | ) == 1) && (__s2_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
569 | "move"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
570 | ), __s2_len < 4) ? (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
571 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
572 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
573 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
574 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
575 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
576 | ) == 1) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
577 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
578 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
579 | "move"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
580 | ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
581 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
582 | ); int __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
583 | "move"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
584 | ))[0] - __s2[0]); if (__s2_len > 0TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
585 | "move"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
586 | ))[1] - __s2[1]); if (__s2_len > 1TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
587 | "move"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
588 | ))[2] - __s2[2]); if (__s2_len > 2TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) __result = (((const unsigned char *) (const char *) (never executed: __result = (((const unsigned char *) (const char *) ( "move" ))[3] - __s2[3]); | 0 |
589 | "move"TRUE | never evaluated | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( "move" ))[3] - __s2[3]); | 0 |
590 | ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
591 | cnf->valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
592 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
593 | "move"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
594 | )))); }) TRUE | never evaluated | FALSE | never evaluated |
| 0 |
595 | == 0TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
596 | if (!copy_email(ctx, gens, 1)TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
597 | goto never executed: goto err; err;never executed: goto err; | 0 |
598 | } never executed: end of block else { | 0 |
599 | GENERAL_NAME *gen; | - |
600 | if ((TRUE | never evaluated | FALSE | evaluated 2 times by 1 test |
gen = v2i_GENERAL_NAME(method, ctx, cnf)) == TRUE | never evaluated | FALSE | evaluated 2 times by 1 test |
| 0-2 |
601 | ((void *)0)TRUE | never evaluated | FALSE | evaluated 2 times by 1 test |
| 0-2 |
602 | ) | - |
603 | goto never executed: goto err; err;never executed: goto err; | 0 |
604 | sk_GENERAL_NAME_push(gens, gen); | - |
605 | }executed 2 times by 1 test: end of block | 2 |
606 | } | - |
607 | returnexecuted 2 times by 1 test: return gens; gens;executed 2 times by 1 test: return gens; | 2 |
608 | err: | - |
609 | sk_GENERAL_NAME_pop_free(gens, GENERAL_NAME_free); | - |
610 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
611 | ((void *)0) never executed: return ((void *)0) ; | 0 |
612 | ; never executed: return ((void *)0) ; | 0 |
613 | } | - |
614 | | - |
615 | | - |
616 | | - |
617 | | - |
618 | | - |
619 | static int copy_email(X509V3_CTX *ctx, GENERAL_NAMES *gens, int move_p) | - |
620 | { | - |
621 | X509_NAME *nm; | - |
622 | ASN1_IA5STRING *email = | - |
623 | ((void *)0) | - |
624 | ; | - |
625 | X509_NAME_ENTRY *ne; | - |
626 | GENERAL_NAME *gen = | - |
627 | ((void *)0) | - |
628 | ; | - |
629 | int i = -1; | - |
630 | | - |
631 | if (ctx != TRUE | never evaluated | FALSE | never evaluated |
| 0 |
632 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
633 | && ctx->flags == 0x1TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
634 | return never executed: return 1; 1;never executed: return 1; | 0 |
635 | if (ctx == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
636 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
637 | | - |
638 | || (ctx->subject_cert == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
639 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
640 | && ctx->subject_req == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
641 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
642 | )) { | - |
643 | ERR_put_error(34,(122),(125),__FILE__,333); | - |
644 | goto never executed: goto err; err;never executed: goto err; | 0 |
645 | } | - |
646 | | - |
647 | if (ctx->subject_certTRUE | never evaluated | FALSE | never evaluated |
) | 0 |
648 | nm = X509_get_subject_name(ctx->subject_cert); never executed: nm = X509_get_subject_name(ctx->subject_cert); | 0 |
649 | else | - |
650 | nm = X509_REQ_get_subject_name(ctx->subject_req); never executed: nm = X509_REQ_get_subject_name(ctx->subject_req); | 0 |
651 | | - |
652 | | - |
653 | while ((TRUE | never evaluated | FALSE | never evaluated |
i = X509_NAME_get_index_by_NID(nm,TRUE | never evaluated | FALSE | never evaluated |
| 0 |
654 | 48, i)) >= 0TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
655 | ne = X509_NAME_get_entry(nm, i); | - |
656 | email = ASN1_STRING_dup(X509_NAME_ENTRY_get_data(ne)); | - |
657 | if (move_pTRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
658 | X509_NAME_delete_entry(nm, i); | - |
659 | X509_NAME_ENTRY_free(ne); | - |
660 | i--; | - |
661 | } never executed: end of block | 0 |
662 | if (email == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
663 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
664 | || (TRUE | never evaluated | FALSE | never evaluated |
gen = GENERAL_NAME_new()) == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
665 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
666 | ) { | - |
667 | ERR_put_error(34,(122),((1|64)),__FILE__,353); | - |
668 | goto never executed: goto err; err;never executed: goto err; | 0 |
669 | } | - |
670 | gen->d.ia5 = email; | - |
671 | email = | - |
672 | ((void *)0) | - |
673 | ; | - |
674 | gen->type = 1; | - |
675 | if (!sk_GENERAL_NAME_push(gens, gen)TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
676 | ERR_put_error(34,(122),((1|64)),__FILE__,360); | - |
677 | goto never executed: goto err; err;never executed: goto err; | 0 |
678 | } | - |
679 | gen = | - |
680 | ((void *)0) | - |
681 | ; | - |
682 | } never executed: end of block | 0 |
683 | | - |
684 | return never executed: return 1; 1;never executed: return 1; | 0 |
685 | | - |
686 | err: | - |
687 | GENERAL_NAME_free(gen); | - |
688 | ASN1_IA5STRING_free(email); | - |
689 | return never executed: return 0; 0;never executed: return 0; | 0 |
690 | | - |
691 | } | - |
692 | | - |
693 | GENERAL_NAMES *v2i_GENERAL_NAMES(const X509V3_EXT_METHOD *method, | - |
694 | X509V3_CTX *ctx, struct stack_st_CONF_VALUE *nval) | - |
695 | { | - |
696 | GENERAL_NAME *gen; | - |
697 | GENERAL_NAMES *gens; | - |
698 | CONF_VALUE *cnf; | - |
699 | const int num = sk_CONF_VALUE_num(nval); | - |
700 | int i; | - |
701 | | - |
702 | gens = sk_GENERAL_NAME_new_reserve( | - |
703 | ((void *)0) | - |
704 | , num); | - |
705 | if (gens == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
706 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
707 | ) { | - |
708 | ERR_put_error(34,(118),((1|64)),__FILE__,386); | - |
709 | sk_GENERAL_NAME_free(gens); | - |
710 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
711 | ((void *)0) never executed: return ((void *)0) ; | 0 |
712 | ; never executed: return ((void *)0) ; | 0 |
713 | } | - |
714 | | - |
715 | for (i = 0; i < numTRUE | never evaluated | FALSE | never evaluated |
; i++) { | 0 |
716 | cnf = sk_CONF_VALUE_value(nval, i); | - |
717 | if ((TRUE | never evaluated | FALSE | never evaluated |
gen = v2i_GENERAL_NAME(method, ctx, cnf)) == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
718 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
719 | ) | - |
720 | goto never executed: goto err; err;never executed: goto err; | 0 |
721 | sk_GENERAL_NAME_push(gens, gen); | - |
722 | } never executed: end of block | 0 |
723 | return never executed: return gens; gens;never executed: return gens; | 0 |
724 | err: | - |
725 | sk_GENERAL_NAME_pop_free(gens, GENERAL_NAME_free); | - |
726 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
727 | ((void *)0) never executed: return ((void *)0) ; | 0 |
728 | ; never executed: return ((void *)0) ; | 0 |
729 | } | - |
730 | | - |
731 | GENERAL_NAME *v2i_GENERAL_NAME(const X509V3_EXT_METHOD *method, | - |
732 | X509V3_CTX *ctx, CONF_VALUE *cnf) | - |
733 | { | - |
734 | returnexecuted 2 times by 1 test: return v2i_GENERAL_NAME_ex( ((void *)0) , method, ctx, cnf, 0); v2i_GENERAL_NAME_ex(executed 2 times by 1 test: return v2i_GENERAL_NAME_ex( ((void *)0) , method, ctx, cnf, 0); | 2 |
735 | ((void *)0)executed 2 times by 1 test: return v2i_GENERAL_NAME_ex( ((void *)0) , method, ctx, cnf, 0); | 2 |
736 | , method, ctx, cnf, 0);executed 2 times by 1 test: return v2i_GENERAL_NAME_ex( ((void *)0) , method, ctx, cnf, 0); | 2 |
737 | } | - |
738 | | - |
739 | GENERAL_NAME *a2i_GENERAL_NAME(GENERAL_NAME *out, | - |
740 | const X509V3_EXT_METHOD *method, | - |
741 | X509V3_CTX *ctx, int gen_type, const char *value, | - |
742 | int is_nc) | - |
743 | { | - |
744 | char is_string = 0; | - |
745 | GENERAL_NAME *gen = | - |
746 | ((void *)0) | - |
747 | ; | - |
748 | | - |
749 | if (!valueTRUE | never evaluated | FALSE | evaluated 3 times by 1 test |
) { | 0-3 |
750 | ERR_put_error(34,(164),(124),__FILE__,418); | - |
751 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
752 | ((void *)0) never executed: return ((void *)0) ; | 0 |
753 | ; never executed: return ((void *)0) ; | 0 |
754 | } | - |
755 | | - |
756 | if (outTRUE | never evaluated | FALSE | evaluated 3 times by 1 test |
) | 0-3 |
757 | gen = out; never executed: gen = out; | 0 |
758 | else { | - |
759 | gen = GENERAL_NAME_new(); | - |
760 | if (gen == TRUE | never evaluated | FALSE | evaluated 3 times by 1 test |
| 0-3 |
761 | ((void *)0)TRUE | never evaluated | FALSE | evaluated 3 times by 1 test |
| 0-3 |
762 | ) { | - |
763 | ERR_put_error(34,(164),((1|64)),__FILE__,427); | - |
764 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
765 | ((void *)0) never executed: return ((void *)0) ; | 0 |
766 | ; never executed: return ((void *)0) ; | 0 |
767 | } | - |
768 | }executed 3 times by 1 test: end of block | 3 |
769 | | - |
770 | switch (gen_type) { | - |
771 | case never executed: case 6: 6:never executed: case 6: | 0 |
772 | caseexecuted 1 time by 1 test: case 1: 1:executed 1 time by 1 test: case 1: | 1 |
773 | caseexecuted 2 times by 1 test: case 2: 2:executed 2 times by 1 test: case 2: | 2 |
774 | is_string = 1; | - |
775 | break;executed 3 times by 1 test: break; | 3 |
776 | | - |
777 | case never executed: case 8: 8:never executed: case 8: | 0 |
778 | { | - |
779 | ASN1_OBJECT *obj; | - |
780 | if ((TRUE | never evaluated | FALSE | never evaluated |
obj = OBJ_txt2obj(value, 0)) == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
781 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
782 | ) { | - |
783 | ERR_put_error(34,(164),(119),__FILE__,443); | - |
784 | ERR_add_error_data(2, "value=", value); | - |
785 | goto never executed: goto err; err;never executed: goto err; | 0 |
786 | } | - |
787 | gen->d.rid = obj; | - |
788 | } | - |
789 | break; never executed: break; | 0 |
790 | | - |
791 | case never executed: case 7: 7:never executed: case 7: | 0 |
792 | if (is_ncTRUE | never evaluated | FALSE | never evaluated |
) | 0 |
793 | gen->d.ip = a2i_IPADDRESS_NC(value); never executed: gen->d.ip = a2i_IPADDRESS_NC(value); | 0 |
794 | else | - |
795 | gen->d.ip = a2i_IPADDRESS(value); never executed: gen->d.ip = a2i_IPADDRESS(value); | 0 |
796 | if (gen->d.ip == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
797 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
798 | ) { | - |
799 | ERR_put_error(34,(164),(118),__FILE__,457); | - |
800 | ERR_add_error_data(2, "value=", value); | - |
801 | goto never executed: goto err; err;never executed: goto err; | 0 |
802 | } | - |
803 | break; never executed: break; | 0 |
804 | | - |
805 | case never executed: case 4: 4:never executed: case 4: | 0 |
806 | if (!do_dirname(gen, value, ctx)TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
807 | ERR_put_error(34,(164),(149),__FILE__,465); | - |
808 | goto never executed: goto err; err;never executed: goto err; | 0 |
809 | } | - |
810 | break; never executed: break; | 0 |
811 | | - |
812 | case never executed: case 0: 0:never executed: case 0: | 0 |
813 | if (!do_othername(gen, value, ctx)TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
814 | ERR_put_error(34,(164),(147),__FILE__,472); | - |
815 | goto never executed: goto err; err;never executed: goto err; | 0 |
816 | } | - |
817 | break; never executed: break; | 0 |
818 | default never executed: default: :never executed: default: | 0 |
819 | ERR_put_error(34,(164),(167),__FILE__,477); | - |
820 | goto never executed: goto err; err;never executed: goto err; | 0 |
821 | } | - |
822 | | - |
823 | if (is_stringTRUE | evaluated 3 times by 1 test | FALSE | never evaluated |
) { | 0-3 |
824 | if ((TRUE | never evaluated | FALSE | evaluated 3 times by 1 test |
gen->d.ia5 = ASN1_IA5STRING_new()) == TRUE | never evaluated | FALSE | evaluated 3 times by 1 test |
| 0-3 |
825 | ((void *)0)TRUE | never evaluated | FALSE | evaluated 3 times by 1 test |
| 0-3 |
826 | || | - |
827 | !ASN1_STRING_set(gen->d.ia5, (unsigned char *)value,TRUE | never evaluated | FALSE | evaluated 3 times by 1 test |
| 0-3 |
828 | strlen(value))TRUE | never evaluated | FALSE | evaluated 3 times by 1 test |
) { | 0-3 |
829 | ERR_put_error(34,(164),((1|64)),__FILE__,485); | - |
830 | goto never executed: goto err; err;never executed: goto err; | 0 |
831 | } | - |
832 | }executed 3 times by 1 test: end of block | 3 |
833 | | - |
834 | gen->type = gen_type; | - |
835 | | - |
836 | returnexecuted 3 times by 1 test: return gen; gen;executed 3 times by 1 test: return gen; | 3 |
837 | | - |
838 | err: | - |
839 | if (!outTRUE | never evaluated | FALSE | never evaluated |
) | 0 |
840 | GENERAL_NAME_free(gen); never executed: GENERAL_NAME_free(gen); | 0 |
841 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
842 | ((void *)0) never executed: return ((void *)0) ; | 0 |
843 | ; never executed: return ((void *)0) ; | 0 |
844 | } | - |
845 | | - |
846 | GENERAL_NAME *v2i_GENERAL_NAME_ex(GENERAL_NAME *out, | - |
847 | const X509V3_EXT_METHOD *method, | - |
848 | X509V3_CTX *ctx, CONF_VALUE *cnf, int is_nc) | - |
849 | { | - |
850 | int type; | - |
851 | | - |
852 | char *name, *value; | - |
853 | | - |
854 | name = cnf->name; | - |
855 | value = cnf->value; | - |
856 | | - |
857 | if (!valueTRUE | never evaluated | FALSE | evaluated 2 times by 1 test |
) { | 0-2 |
858 | ERR_put_error(34,(117),(124),__FILE__,512); | - |
859 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
860 | ((void *)0) never executed: return ((void *)0) ; | 0 |
861 | ; never executed: return ((void *)0) ; | 0 |
862 | } | - |
863 | | - |
864 | if (!name_cmp(name, "email")TRUE | never evaluated | FALSE | evaluated 2 times by 1 test |
) | 0-2 |
865 | type = 1; never executed: type = 1; | 0 |
866 | else if (!name_cmp(name, "URI")TRUE | never evaluated | FALSE | evaluated 2 times by 1 test |
) | 0-2 |
867 | type = 6; never executed: type = 6; | 0 |
868 | else if (!name_cmp(name, "DNS")TRUE | evaluated 2 times by 1 test | FALSE | never evaluated |
) | 0-2 |
869 | type = 2;executed 2 times by 1 test: type = 2; | 2 |
870 | else if (!name_cmp(name, "RID")TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
871 | type = 8; never executed: type = 8; | 0 |
872 | else if (!name_cmp(name, "IP")TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
873 | type = 7; never executed: type = 7; | 0 |
874 | else if (!name_cmp(name, "dirName")TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
875 | type = 4; never executed: type = 4; | 0 |
876 | else if (!name_cmp(name, "otherName")TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
877 | type = 0; never executed: type = 0; | 0 |
878 | else { | - |
879 | ERR_put_error(34,(117),(117),__FILE__,531); | - |
880 | ERR_add_error_data(2, "name=", name); | - |
881 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
882 | ((void *)0) never executed: return ((void *)0) ; | 0 |
883 | ; never executed: return ((void *)0) ; | 0 |
884 | } | - |
885 | | - |
886 | returnexecuted 2 times by 1 test: return a2i_GENERAL_NAME(out, method, ctx, type, value, is_nc); a2i_GENERAL_NAME(out, method, ctx, type, value, is_nc);executed 2 times by 1 test: return a2i_GENERAL_NAME(out, method, ctx, type, value, is_nc); | 2 |
887 | | - |
888 | } | - |
889 | | - |
890 | static int do_othername(GENERAL_NAME *gen, const char *value, X509V3_CTX *ctx) | - |
891 | { | - |
892 | char *objtmp = | - |
893 | ((void *)0) | - |
894 | , *p; | - |
895 | int objlen; | - |
896 | | - |
897 | if ((TRUE | never evaluated | FALSE | never evaluated |
p = TRUE | never evaluated | FALSE | never evaluated |
| 0 |
898 | (__extension__ (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
899 | ';'TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
900 | )TRUE | never evaluated | FALSE | never evaluated |
&& !__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
901 | valueTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
902 | )TRUE | never evaluated | FALSE | never evaluated |
&& (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
903 | ';'TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
904 | ) == '\0'TRUE | never evaluated | FALSE | never evaluated |
? (char *) __rawmemchr (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
905 | valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
906 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
907 | ';'TRUE | never evaluated | FALSE | never evaluated |
| 0 |
908 | ) : __builtin_strchr (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
909 | valueTRUE | never evaluated | FALSE | never evaluated |
| 0 |
910 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
911 | ';'TRUE | never evaluated | FALSE | never evaluated |
| 0 |
912 | )))TRUE | never evaluated | FALSE | never evaluated |
| 0 |
913 | ) == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
914 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
915 | ) | - |
916 | return never executed: return 0; 0;never executed: return 0; | 0 |
917 | if ((TRUE | never evaluated | FALSE | never evaluated |
gen->d.otherName = OTHERNAME_new()) == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
918 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
919 | ) | - |
920 | return never executed: return 0; 0;never executed: return 0; | 0 |
921 | | - |
922 | | - |
923 | | - |
924 | | - |
925 | ASN1_TYPE_free(gen->d.otherName->value); | - |
926 | if ((TRUE | never evaluated | FALSE | never evaluated |
gen->d.otherName->value = ASN1_generate_v3(p + 1, ctx)) == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
927 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
928 | ) | - |
929 | return never executed: return 0; 0;never executed: return 0; | 0 |
930 | objlen = p - value; | - |
931 | objtmp = CRYPTO_strndup(value, objlen, __FILE__, 557); | - |
932 | if (objtmp == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
933 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
934 | ) | - |
935 | return never executed: return 0; 0;never executed: return 0; | 0 |
936 | gen->d.otherName->type_id = OBJ_txt2obj(objtmp, 0); | - |
937 | CRYPTO_free(objtmp, __FILE__, 561); | - |
938 | if (!gen->d.otherName->type_idTRUE | never evaluated | FALSE | never evaluated |
) | 0 |
939 | return never executed: return 0; 0;never executed: return 0; | 0 |
940 | return never executed: return 1; 1;never executed: return 1; | 0 |
941 | } | - |
942 | | - |
943 | static int do_dirname(GENERAL_NAME *gen, const char *value, X509V3_CTX *ctx) | - |
944 | { | - |
945 | int ret = 0; | - |
946 | struct stack_st_CONF_VALUE *sk = | - |
947 | ((void *)0) | - |
948 | ; | - |
949 | X509_NAME *nm; | - |
950 | | - |
951 | if ((TRUE | never evaluated | FALSE | never evaluated |
nm = X509_NAME_new()) == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
952 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
953 | ) | - |
954 | goto never executed: goto err; err;never executed: goto err; | 0 |
955 | sk = X509V3_get_section(ctx, value); | - |
956 | if (!skTRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
957 | ERR_put_error(34,(144),(150),__FILE__,577); | - |
958 | ERR_add_error_data(2, "section=", value); | - |
959 | goto never executed: goto err; err;never executed: goto err; | 0 |
960 | } | - |
961 | | - |
962 | ret = X509V3_NAME_from_section(nm, sk, (0x1000|1)); | - |
963 | if (!retTRUE | never evaluated | FALSE | never evaluated |
) | 0 |
964 | goto never executed: goto err; err;never executed: goto err; | 0 |
965 | gen->d.dirn = nm; | - |
966 | | - |
967 | err: code before this statement never executed: err: | 0 |
968 | if (ret == 0TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
969 | X509_NAME_free(nm); never executed: X509_NAME_free(nm); | 0 |
970 | X509V3_section_free(ctx, sk); | - |
971 | return never executed: return ret; ret;never executed: return ret; | 0 |
972 | } | - |
| | |