Line | Source | Count |
1 | | - |
2 | struct tag_name_st { | - |
3 | const char *strnam; | - |
4 | int len; | - |
5 | int tag; | - |
6 | }; | - |
7 | | - |
8 | typedef struct { | - |
9 | int exp_tag; | - |
10 | int exp_class; | - |
11 | int exp_constructed; | - |
12 | int exp_pad; | - |
13 | long exp_len; | - |
14 | } tag_exp_type; | - |
15 | | - |
16 | typedef struct { | - |
17 | int imp_tag; | - |
18 | int imp_class; | - |
19 | int utype; | - |
20 | int format; | - |
21 | const char *str; | - |
22 | tag_exp_type exp_list[20]; | - |
23 | int exp_count; | - |
24 | } tag_exp_arg; | - |
25 | | - |
26 | static int bitstr_cb(const char *elem, int len, void *bitstr); | - |
27 | static int asn1_cb(const char *elem, int len, void *bitstr); | - |
28 | static int append_exp(tag_exp_arg *arg, int exp_tag, int exp_class, | - |
29 | int exp_constructed, int exp_pad, int imp_ok); | - |
30 | static int parse_tagging(const char *vstart, int vlen, int *ptag, int *pclass); | - |
31 | static ASN1_TYPE *asn1_multi(int utype, const char *section, X509V3_CTX *cnf); | - |
32 | static ASN1_TYPE *asn1_str2type(const char *str, int format, int utype); | - |
33 | static int asn1_str2tag(const char *tagstr, int len); | - |
34 | | - |
35 | ASN1_TYPE * | - |
36 | ASN1_generate_nconf(const char *str, CONF *nconf) | - |
37 | { | - |
38 | X509V3_CTX cnf; | - |
39 | | - |
40 | if (!nconfTRUE | never evaluated | FALSE | never evaluated |
) | 0 |
41 | return never executed: return ASN1_generate_v3(str, ((void *)0) ); ASN1_generate_v3(str, never executed: return ASN1_generate_v3(str, ((void *)0) ); | 0 |
42 | ((void *)0) never executed: return ASN1_generate_v3(str, ((void *)0) ); | 0 |
43 | ); never executed: return ASN1_generate_v3(str, ((void *)0) ); | 0 |
44 | | - |
45 | X509V3_set_nconf(&cnf, nconf); | - |
46 | return never executed: return ASN1_generate_v3(str, &cnf); ASN1_generate_v3(str, &cnf);never executed: return ASN1_generate_v3(str, &cnf); | 0 |
47 | } | - |
48 | | - |
49 | ASN1_TYPE * | - |
50 | ASN1_generate_v3(const char *str, X509V3_CTX *cnf) | - |
51 | { | - |
52 | ASN1_TYPE *ret; | - |
53 | tag_exp_arg asn1_tags; | - |
54 | tag_exp_type *etmp; | - |
55 | | - |
56 | int i, len; | - |
57 | | - |
58 | unsigned char *orig_der = | - |
59 | ((void *)0) | - |
60 | , *new_der = | - |
61 | ((void *)0) | - |
62 | ; | - |
63 | const unsigned char *cpy_start; | - |
64 | unsigned char *p; | - |
65 | const unsigned char *cp; | - |
66 | int cpy_len; | - |
67 | long hdr_len = 0; | - |
68 | int hdr_constructed = 0, hdr_tag, hdr_class; | - |
69 | int r; | - |
70 | | - |
71 | asn1_tags.imp_tag = -1; | - |
72 | asn1_tags.imp_class = -1; | - |
73 | asn1_tags.format = 1; | - |
74 | asn1_tags.exp_count = 0; | - |
75 | if (CONF_parse_list(str, ',', 1, asn1_cb, &asn1_tags) != 0TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
76 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
77 | ((void *)0) never executed: return ((void *)0) ; | 0 |
78 | ; never executed: return ((void *)0) ; | 0 |
79 | | - |
80 | if ((TRUE | never evaluated | FALSE | never evaluated |
asn1_tags.utype == 16)TRUE | never evaluated | FALSE | never evaluated |
|| | 0 |
81 | (TRUE | never evaluated | FALSE | never evaluated |
asn1_tags.utype == 17)TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
82 | if (!cnfTRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
83 | ERR_put_error(13,(0xfff),(192),__FILE__,163); | - |
84 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
85 | ((void *)0) never executed: return ((void *)0) ; | 0 |
86 | ; never executed: return ((void *)0) ; | 0 |
87 | } | - |
88 | ret = asn1_multi(asn1_tags.utype, asn1_tags.str, cnf); | - |
89 | } never executed: end of block else | 0 |
90 | ret = asn1_str2type(asn1_tags.str, asn1_tags.format, never executed: ret = asn1_str2type(asn1_tags.str, asn1_tags.format, asn1_tags.utype); | 0 |
91 | asn1_tags.utype); never executed: ret = asn1_str2type(asn1_tags.str, asn1_tags.format, asn1_tags.utype); | 0 |
92 | | - |
93 | if (!retTRUE | never evaluated | FALSE | never evaluated |
) | 0 |
94 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
95 | ((void *)0) never executed: return ((void *)0) ; | 0 |
96 | ; never executed: return ((void *)0) ; | 0 |
97 | | - |
98 | | - |
99 | if ((TRUE | never evaluated | FALSE | never evaluated |
asn1_tags.imp_tag == -1)TRUE | never evaluated | FALSE | never evaluated |
&& (TRUE | never evaluated | FALSE | never evaluated |
asn1_tags.exp_count == 0)TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
100 | return never executed: return ret; ret;never executed: return ret; | 0 |
101 | | - |
102 | | - |
103 | cpy_len = i2d_ASN1_TYPE(ret, &orig_der); | - |
104 | ASN1_TYPE_free(ret); | - |
105 | ret = | - |
106 | ((void *)0) | - |
107 | ; | - |
108 | | - |
109 | cpy_start = orig_der; | - |
110 | | - |
111 | | - |
112 | if (asn1_tags.imp_tag != -1TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
113 | | - |
114 | | - |
115 | r = ASN1_get_object(&cpy_start, &hdr_len, &hdr_tag, | - |
116 | &hdr_class, cpy_len); | - |
117 | if (r & 0x80TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
118 | goto never executed: goto err; err;never executed: goto err; | 0 |
119 | | - |
120 | cpy_len -= cpy_start - orig_der; | - |
121 | | - |
122 | | - |
123 | | - |
124 | | - |
125 | if (r & 0x1TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
126 | | - |
127 | hdr_constructed = 2; | - |
128 | hdr_len = 0; | - |
129 | } never executed: end of block else | 0 |
130 | | - |
131 | hdr_constructed = r & 0x20; never executed: hdr_constructed = r & 0x20; | 0 |
132 | | - |
133 | | - |
134 | | - |
135 | len = ASN1_object_size(0, hdr_len, asn1_tags.imp_tag); | - |
136 | } never executed: end of block else | 0 |
137 | len = cpy_len; never executed: len = cpy_len; | 0 |
138 | | - |
139 | | - |
140 | | - |
141 | for (i = 0, etmp = asn1_tags.exp_list + asn1_tags.exp_count - 1; | - |
142 | i < asn1_tags.exp_countTRUE | never evaluated | FALSE | never evaluated |
; i++, etmp--) { | 0 |
143 | | - |
144 | len += etmp->exp_pad; | - |
145 | etmp->exp_len = len; | - |
146 | | - |
147 | len = ASN1_object_size(0, len, etmp->exp_tag); | - |
148 | } never executed: end of block | 0 |
149 | | - |
150 | | - |
151 | | - |
152 | new_der = malloc(len); | - |
153 | if (!new_derTRUE | never evaluated | FALSE | never evaluated |
) | 0 |
154 | goto never executed: goto err; err;never executed: goto err; | 0 |
155 | | - |
156 | | - |
157 | p = new_der; | - |
158 | | - |
159 | | - |
160 | for (i = 0, etmp = asn1_tags.exp_list; i < asn1_tags.exp_countTRUE | never evaluated | FALSE | never evaluated |
; | 0 |
161 | i++, etmp++) { | - |
162 | ASN1_put_object(&p, etmp->exp_constructed, etmp->exp_len, | - |
163 | etmp->exp_tag, etmp->exp_class); | - |
164 | if (etmp->exp_padTRUE | never evaluated | FALSE | never evaluated |
) | 0 |
165 | * never executed: *p++ = 0; p++ = 0;never executed: *p++ = 0; | 0 |
166 | } never executed: end of block | 0 |
167 | | - |
168 | | - |
169 | | - |
170 | if (asn1_tags.imp_tag != -1TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
171 | if (asn1_tags.imp_class == 0x00TRUE | never evaluated | FALSE | never evaluated |
&& | 0 |
172 | (asn1_tags.imp_tag == 16TRUE | never evaluated | FALSE | never evaluated |
|| | 0 |
173 | asn1_tags.imp_tag == 17TRUE | never evaluated | FALSE | never evaluated |
)) | 0 |
174 | hdr_constructed = 0x20; never executed: hdr_constructed = 0x20; | 0 |
175 | ASN1_put_object(&p, hdr_constructed, hdr_len, | - |
176 | asn1_tags.imp_tag, asn1_tags.imp_class); | - |
177 | } never executed: end of block | 0 |
178 | | - |
179 | | - |
180 | memcpy(p, cpy_start, cpy_len); | - |
181 | | - |
182 | cp = new_der; | - |
183 | | - |
184 | | - |
185 | ret = d2i_ASN1_TYPE( | - |
186 | ((void *)0) | - |
187 | , &cp, len); | - |
188 | | - |
189 | err: code before this statement never executed: err: | 0 |
190 | free(orig_der); | - |
191 | free(new_der); | - |
192 | | - |
193 | return never executed: return ret; ret;never executed: return ret; | 0 |
194 | } | - |
195 | | - |
196 | static int | - |
197 | asn1_cb(const char *elem, int len, void *bitstr) | - |
198 | { | - |
199 | tag_exp_arg *arg = bitstr; | - |
200 | int i; | - |
201 | int utype; | - |
202 | int vlen = 0; | - |
203 | const char *p, *vstart = | - |
204 | ((void *)0) | - |
205 | ; | - |
206 | | - |
207 | int tmp_tag, tmp_class; | - |
208 | | - |
209 | for (i = 0, p = elem; i < lenTRUE | never evaluated | FALSE | never evaluated |
; p++, i++) { | 0 |
210 | | - |
211 | if (*TRUE | never evaluated | FALSE | never evaluated |
p == ':'TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
212 | vstart = p + 1; | - |
213 | vlen = len - (vstart - elem); | - |
214 | len = p - elem; | - |
215 | break; never executed: break; | 0 |
216 | } | - |
217 | } never executed: end of block | 0 |
218 | | - |
219 | utype = asn1_str2tag(elem, len); | - |
220 | | - |
221 | if (utype == -1TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
222 | ERR_put_error(13,(0xfff),(194),__FILE__,292); | - |
223 | ERR_asprintf_error_data("tag=%s", elem); | - |
224 | return never executed: return -1; -1;never executed: return -1; | 0 |
225 | } | - |
226 | | - |
227 | | - |
228 | if (!(utype & 0x10000)TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
229 | arg->utype = utype; | - |
230 | arg->str = vstart; | - |
231 | | - |
232 | if (!vstartTRUE | never evaluated | FALSE | never evaluated |
&& elem[len]TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
233 | ERR_put_error(13,(0xfff),(189),__FILE__,303); | - |
234 | return never executed: return -1; -1;never executed: return -1; | 0 |
235 | } | - |
236 | return never executed: return 0; 0;never executed: return 0; | 0 |
237 | } | - |
238 | | - |
239 | switch (utype) { | - |
240 | | - |
241 | case never executed: case (0x10000|1): (0x10000|1):never executed: case (0x10000|1): | 0 |
242 | | - |
243 | if (arg->imp_tag != -1TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
244 | ERR_put_error(13,(0xfff),(181),__FILE__,314); | - |
245 | return never executed: return -1; -1;never executed: return -1; | 0 |
246 | } | - |
247 | if (!parse_tagging(vstart, vlen, &arg->imp_tag,TRUE | never evaluated | FALSE | never evaluated |
| 0 |
248 | &arg->imp_class)TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
249 | return never executed: return -1; -1;never executed: return -1; | 0 |
250 | break; never executed: break; | 0 |
251 | | - |
252 | case never executed: case (0x10000|2): (0x10000|2):never executed: case (0x10000|2): | 0 |
253 | if (!parse_tagging(vstart, vlen, &tmp_tag, &tmp_class)TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
254 | return never executed: return -1; -1;never executed: return -1; | 0 |
255 | if (!append_exp(arg, tmp_tag, tmp_class, 1, 0, 0)TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
256 | return never executed: return -1; -1;never executed: return -1; | 0 |
257 | break; never executed: break; | 0 |
258 | | - |
259 | case never executed: case (0x10000|6): (0x10000|6):never executed: case (0x10000|6): | 0 |
260 | if (!append_exp(arg, 16, 0x00, 1, 0, 1)TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
261 | return never executed: return -1; -1;never executed: return -1; | 0 |
262 | break; never executed: break; | 0 |
263 | | - |
264 | case never executed: case (0x10000|7): (0x10000|7):never executed: case (0x10000|7): | 0 |
265 | if (!append_exp(arg, 17, 0x00, 1, 0, 1)TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
266 | return never executed: return -1; -1;never executed: return -1; | 0 |
267 | break; never executed: break; | 0 |
268 | | - |
269 | case never executed: case (0x10000|4): (0x10000|4):never executed: case (0x10000|4): | 0 |
270 | if (!append_exp(arg, 3, 0x00, 0, 1, 1)TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
271 | return never executed: return -1; -1;never executed: return -1; | 0 |
272 | break; never executed: break; | 0 |
273 | | - |
274 | case never executed: case (0x10000|5): (0x10000|5):never executed: case (0x10000|5): | 0 |
275 | if (!append_exp(arg, 4, 0x00, 0, 0, 1)TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
276 | return never executed: return -1; -1;never executed: return -1; | 0 |
277 | break; never executed: break; | 0 |
278 | | - |
279 | case never executed: case (0x10000|8): (0x10000|8):never executed: case (0x10000|8): | 0 |
280 | if (vstart == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
281 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
282 | ) { | - |
283 | ERR_put_error(13,(0xfff),(177),__FILE__,351); | - |
284 | return never executed: return -1; -1;never executed: return -1; | 0 |
285 | } | - |
286 | if (!TRUE | never evaluated | FALSE | never evaluated |
| 0 |
287 | (__extension__ (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
288 | 5TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
289 | )TRUE | never evaluated | FALSE | never evaluated |
&& ((__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
290 | vstartTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
291 | )TRUE | never evaluated | FALSE | never evaluated |
&& strlen (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
292 | vstartTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
293 | ) < ((size_t) (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
294 | 5TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
295 | ))TRUE | never evaluated | FALSE | never evaluated |
) || (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
296 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
297 | )TRUE | never evaluated | FALSE | never evaluated |
&& strlen (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
298 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
299 | ) < ((size_t) (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
300 | 5TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
301 | ))TRUE | never evaluated | FALSE | never evaluated |
)) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
302 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
303 | ) && __builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
304 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
305 | ) && (__s1_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
306 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
307 | ), __s2_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
308 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
309 | ), (!((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
310 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
311 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
312 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
313 | ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
314 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
315 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
316 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
317 | ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
318 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
319 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
320 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
321 | ) : (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
322 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
323 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
324 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
325 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
326 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
327 | ) == 1) && (__s1_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
328 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
329 | ), __s1_len < 4) ? (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
330 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
331 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
332 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
333 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
334 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
335 | ) == 1) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
336 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
337 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
338 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
339 | ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
340 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
341 | ); int __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
342 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
343 | ))[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 |
344 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
345 | ))[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 |
346 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
347 | ))[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 *) ( vstart ))[3] - __s2[3]); | 0 |
348 | vstartTRUE | never evaluated | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( vstart ))[3] - __s2[3]); | 0 |
349 | ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
350 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
351 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
352 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
353 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
354 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
355 | ) == 1) && (__s2_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
356 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
357 | ), __s2_len < 4) ? (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
358 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
359 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
360 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
361 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
362 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
363 | ) == 1) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
364 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
365 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
366 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
367 | ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
368 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
369 | ); int __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
370 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
371 | ))[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 |
372 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
373 | ))[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 |
374 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
375 | ))[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 *) ( "ASCII" ))[3] - __s2[3]); | 0 |
376 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( "ASCII" ))[3] - __s2[3]); | 0 |
377 | ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
378 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
379 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
380 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
381 | )))); }) : strncmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
382 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
383 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
384 | "ASCII"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
385 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
386 | 5TRUE | never evaluated | FALSE | never evaluated |
| 0 |
387 | )))TRUE | never evaluated | FALSE | never evaluated |
| 0 |
388 | ) | - |
389 | arg->format = 1; never executed: arg->format = 1; | 0 |
390 | else if (!TRUE | never evaluated | FALSE | never evaluated |
| 0 |
391 | (__extension__ (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
392 | 4TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
393 | )TRUE | never evaluated | FALSE | never evaluated |
&& ((__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
394 | vstartTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
395 | )TRUE | never evaluated | FALSE | never evaluated |
&& strlen (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
396 | vstartTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
397 | ) < ((size_t) (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
398 | 4TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
399 | ))TRUE | never evaluated | FALSE | never evaluated |
) || (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
400 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
401 | )TRUE | never evaluated | FALSE | never evaluated |
&& strlen (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
402 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
403 | ) < ((size_t) (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
404 | 4TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
405 | ))TRUE | never evaluated | FALSE | never evaluated |
)) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
406 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
407 | ) && __builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
408 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
409 | ) && (__s1_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
410 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
411 | ), __s2_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
412 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
413 | ), (!((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
414 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
415 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
416 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
417 | ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
418 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
419 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
420 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
421 | ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
422 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
423 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
424 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
425 | ) : (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
426 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
427 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
428 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
429 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
430 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
431 | ) == 1) && (__s1_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
432 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
433 | ), __s1_len < 4) ? (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
434 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
435 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
436 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
437 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
438 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
439 | ) == 1) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
440 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
441 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
442 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
443 | ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
444 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
445 | ); int __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
446 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
447 | ))[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 |
448 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
449 | ))[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 |
450 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
451 | ))[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 *) ( vstart ))[3] - __s2[3]); | 0 |
452 | vstartTRUE | never evaluated | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( vstart ))[3] - __s2[3]); | 0 |
453 | ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
454 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
455 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
456 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
457 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
458 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
459 | ) == 1) && (__s2_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
460 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
461 | ), __s2_len < 4) ? (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
462 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
463 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
464 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
465 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
466 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
467 | ) == 1) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
468 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
469 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
470 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
471 | ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
472 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
473 | ); int __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
474 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
475 | ))[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 |
476 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
477 | ))[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 |
478 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
479 | ))[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 *) ( "UTF8" ))[3] - __s2[3]); | 0 |
480 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( "UTF8" ))[3] - __s2[3]); | 0 |
481 | ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
482 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
483 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
484 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
485 | )))); }) : strncmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
486 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
487 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
488 | "UTF8"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
489 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
490 | 4TRUE | never evaluated | FALSE | never evaluated |
| 0 |
491 | )))TRUE | never evaluated | FALSE | never evaluated |
| 0 |
492 | ) | - |
493 | arg->format = 2; never executed: arg->format = 2; | 0 |
494 | else if (!TRUE | never evaluated | FALSE | never evaluated |
| 0 |
495 | (__extension__ (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
496 | 3TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
497 | )TRUE | never evaluated | FALSE | never evaluated |
&& ((__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
498 | vstartTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
499 | )TRUE | never evaluated | FALSE | never evaluated |
&& strlen (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
500 | vstartTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
501 | ) < ((size_t) (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
502 | 3TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
503 | ))TRUE | never evaluated | FALSE | never evaluated |
) || (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
504 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
505 | )TRUE | never evaluated | FALSE | never evaluated |
&& strlen (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
506 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
507 | ) < ((size_t) (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
508 | 3TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
509 | ))TRUE | never evaluated | FALSE | never evaluated |
)) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
510 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
511 | ) && __builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
512 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
513 | ) && (__s1_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
514 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
515 | ), __s2_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
516 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
517 | ), (!((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
518 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
519 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
520 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
521 | ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
522 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
523 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
524 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
525 | ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
526 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
527 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
528 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
529 | ) : (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
530 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
531 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
532 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
533 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
534 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
535 | ) == 1) && (__s1_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
536 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
537 | ), __s1_len < 4) ? (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
538 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
539 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
540 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
541 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
542 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
543 | ) == 1) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
544 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
545 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
546 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
547 | ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
548 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
549 | ); int __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
550 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
551 | ))[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 |
552 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
553 | ))[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 |
554 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
555 | ))[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 *) ( vstart ))[3] - __s2[3]); | 0 |
556 | vstartTRUE | never evaluated | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( vstart ))[3] - __s2[3]); | 0 |
557 | ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
558 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
559 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
560 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
561 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
562 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
563 | ) == 1) && (__s2_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
564 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
565 | ), __s2_len < 4) ? (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
566 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
567 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
568 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
569 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
570 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
571 | ) == 1) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
572 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
573 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
574 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
575 | ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
576 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
577 | ); int __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
578 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
579 | ))[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 |
580 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
581 | ))[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 |
582 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
583 | ))[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 *) ( "HEX" ))[3] - __s2[3]); | 0 |
584 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( "HEX" ))[3] - __s2[3]); | 0 |
585 | ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
586 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
587 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
588 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
589 | )))); }) : strncmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
590 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
591 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
592 | "HEX"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
593 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
594 | 3TRUE | never evaluated | FALSE | never evaluated |
| 0 |
595 | )))TRUE | never evaluated | FALSE | never evaluated |
| 0 |
596 | ) | - |
597 | arg->format = 3; never executed: arg->format = 3; | 0 |
598 | else if (!TRUE | never evaluated | FALSE | never evaluated |
| 0 |
599 | (__extension__ (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
600 | 7TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
601 | )TRUE | never evaluated | FALSE | never evaluated |
&& ((__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
602 | vstartTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
603 | )TRUE | never evaluated | FALSE | never evaluated |
&& strlen (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
604 | vstartTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
605 | ) < ((size_t) (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
606 | 7TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
607 | ))TRUE | never evaluated | FALSE | never evaluated |
) || (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
608 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
609 | )TRUE | never evaluated | FALSE | never evaluated |
&& strlen (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
610 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
611 | ) < ((size_t) (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
612 | 7TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
613 | ))TRUE | never evaluated | FALSE | never evaluated |
)) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
614 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
615 | ) && __builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
616 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
617 | ) && (__s1_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
618 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
619 | ), __s2_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
620 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
621 | ), (!((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
622 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
623 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
624 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
625 | ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
626 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
627 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
628 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
629 | ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
630 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
631 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
632 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
633 | ) : (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
634 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
635 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
636 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
637 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
638 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
639 | ) == 1) && (__s1_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
640 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
641 | ), __s1_len < 4) ? (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
642 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
643 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
644 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
645 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
646 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
647 | ) == 1) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
648 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
649 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
650 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
651 | ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
652 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
653 | ); int __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
654 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
655 | ))[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 |
656 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
657 | ))[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 |
658 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
659 | ))[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 *) ( vstart ))[3] - __s2[3]); | 0 |
660 | vstartTRUE | never evaluated | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( vstart ))[3] - __s2[3]); | 0 |
661 | ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
662 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
663 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
664 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
665 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
666 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
667 | ) == 1) && (__s2_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
668 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
669 | ), __s2_len < 4) ? (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
670 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
671 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
672 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
673 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
674 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
675 | ) == 1) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
676 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
677 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
678 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
679 | ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
680 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
681 | ); int __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
682 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
683 | ))[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 |
684 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
685 | ))[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 |
686 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
687 | ))[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 *) ( "BITLIST" ))[3] - __s2[3]); | 0 |
688 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( "BITLIST" ))[3] - __s2[3]); | 0 |
689 | ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
690 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
691 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
692 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
693 | )))); }) : strncmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
694 | vstartTRUE | never evaluated | FALSE | never evaluated |
| 0 |
695 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
696 | "BITLIST"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
697 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
698 | 7TRUE | never evaluated | FALSE | never evaluated |
| 0 |
699 | )))TRUE | never evaluated | FALSE | never evaluated |
| 0 |
700 | ) | - |
701 | arg->format = 4; never executed: arg->format = 4; | 0 |
702 | else { | - |
703 | ERR_put_error(13,(0xfff),(195),__FILE__,363); | - |
704 | return never executed: return -1; -1;never executed: return -1; | 0 |
705 | } | - |
706 | break; never executed: break; | 0 |
707 | | - |
708 | } | - |
709 | | - |
710 | return never executed: return 1; 1;never executed: return 1; | 0 |
711 | } | - |
712 | | - |
713 | static int | - |
714 | parse_tagging(const char *vstart, int vlen, int *ptag, int *pclass) | - |
715 | { | - |
716 | long tag_num; | - |
717 | char *eptr; | - |
718 | | - |
719 | if (!vstartTRUE | never evaluated | FALSE | never evaluated |
) | 0 |
720 | return never executed: return 0; 0;never executed: return 0; | 0 |
721 | tag_num = strtoul(vstart, &eptr, 10); | - |
722 | | - |
723 | if (eptrTRUE | never evaluated | FALSE | never evaluated |
&& *TRUE | never evaluated | FALSE | never evaluated |
eptrTRUE | never evaluated | FALSE | never evaluated |
&& (TRUE | never evaluated | FALSE | never evaluated |
eptr > vstart + vlen)TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
724 | return never executed: return 0; 0;never executed: return 0; | 0 |
725 | if (tag_num < 0TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
726 | ERR_put_error(13,(0xfff),(187),__FILE__,386); | - |
727 | return never executed: return 0; 0;never executed: return 0; | 0 |
728 | } | - |
729 | *ptag = tag_num; | - |
730 | | - |
731 | if (eptrTRUE | never evaluated | FALSE | never evaluated |
) | 0 |
732 | vlen -= eptr - vstart; never executed: vlen -= eptr - vstart; | 0 |
733 | else | - |
734 | vlen = 0; never executed: vlen = 0; | 0 |
735 | if (vlenTRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
736 | switch (*eptr) { | - |
737 | | - |
738 | case never executed: case 'U': 'U':never executed: case 'U': | 0 |
739 | *pclass = 0x00; | - |
740 | break; never executed: break; | 0 |
741 | | - |
742 | case never executed: case 'A': 'A':never executed: case 'A': | 0 |
743 | *pclass = 0x40; | - |
744 | break; never executed: break; | 0 |
745 | | - |
746 | case never executed: case 'P': 'P':never executed: case 'P': | 0 |
747 | *pclass = 0xc0; | - |
748 | break; never executed: break; | 0 |
749 | | - |
750 | case never executed: case 'C': 'C':never executed: case 'C': | 0 |
751 | *pclass = 0x80; | - |
752 | break; never executed: break; | 0 |
753 | | - |
754 | default never executed: default: :never executed: default: | 0 |
755 | ERR_put_error(13,(0xfff),(186),__FILE__,415); | - |
756 | ERR_asprintf_error_data("Char=%c", *eptr); | - |
757 | return never executed: return 0; 0;never executed: return 0; | 0 |
758 | break; dead code: break; | - |
759 | | - |
760 | } | - |
761 | } else | - |
762 | * never executed: *pclass = 0x80; pclass = 0x80;never executed: *pclass = 0x80; | 0 |
763 | | - |
764 | return never executed: return 1; 1;never executed: return 1; | 0 |
765 | | - |
766 | } | - |
767 | | - |
768 | | - |
769 | | - |
770 | static ASN1_TYPE * | - |
771 | asn1_multi(int utype, const char *section, X509V3_CTX *cnf) | - |
772 | { | - |
773 | ASN1_TYPE *ret = | - |
774 | ((void *)0) | - |
775 | ; | - |
776 | struct stack_st_ASN1_TYPE *sk = | - |
777 | ((void *)0) | - |
778 | ; | - |
779 | struct stack_st_CONF_VALUE *sect = | - |
780 | ((void *)0) | - |
781 | ; | - |
782 | unsigned char *der = | - |
783 | ((void *)0) | - |
784 | ; | - |
785 | int derlen; | - |
786 | int i; | - |
787 | sk = ((struct stack_st_ASN1_TYPE *)sk_new_null()); | - |
788 | if (!skTRUE | never evaluated | FALSE | never evaluated |
) | 0 |
789 | goto never executed: goto bad; bad;never executed: goto bad; | 0 |
790 | if (sectionTRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
791 | if (!cnfTRUE | never evaluated | FALSE | never evaluated |
) | 0 |
792 | goto never executed: goto bad; bad;never executed: goto bad; | 0 |
793 | sect = X509V3_get_section(cnf, (char *)section); | - |
794 | if (!sectTRUE | never evaluated | FALSE | never evaluated |
) | 0 |
795 | goto never executed: goto bad; bad;never executed: goto bad; | 0 |
796 | for (i = 0; i < sk_num(((_STACK*) (1 ? (sect) : (struct stack_st_CONF_VALUE*)0)))TRUE | never evaluated | FALSE | never evaluated |
; i++) { | 0 |
797 | ASN1_TYPE *typ = ASN1_generate_v3( | - |
798 | ((CONF_VALUE *)sk_value(((_STACK*) (1 ? (sect) : (struct stack_st_CONF_VALUE*)0)), (i)))->value, cnf); | - |
799 | if (!typTRUE | never evaluated | FALSE | never evaluated |
) | 0 |
800 | goto never executed: goto bad; bad;never executed: goto bad; | 0 |
801 | if (!sk_push(((_STACK*) (1 ? (sk) : (struct stack_st_ASN1_TYPE*)0)), ((void*) (1 ? (typ) : (ASN1_TYPE*)0)))TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
802 | goto never executed: goto bad; bad;never executed: goto bad; | 0 |
803 | } never executed: end of block | 0 |
804 | } never executed: end of block | 0 |
805 | | - |
806 | | - |
807 | | - |
808 | if (utype == 17TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
809 | derlen = i2d_ASN1_SET_ANY(sk, &der); never executed: derlen = i2d_ASN1_SET_ANY(sk, &der); | 0 |
810 | else | - |
811 | derlen = i2d_ASN1_SEQUENCE_ANY(sk, &der); never executed: derlen = i2d_ASN1_SEQUENCE_ANY(sk, &der); | 0 |
812 | | - |
813 | if (derlen < 0TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
814 | goto never executed: goto bad; bad;never executed: goto bad; | 0 |
815 | | - |
816 | if (!(ret = ASN1_TYPE_new())TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
817 | goto never executed: goto bad; bad;never executed: goto bad; | 0 |
818 | | - |
819 | if (!(ret->value.asn1_string = ASN1_STRING_type_new(utype))TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
820 | goto never executed: goto bad; bad;never executed: goto bad; | 0 |
821 | | - |
822 | ret->type = utype; | - |
823 | | - |
824 | ret->value.asn1_string->data = der; | - |
825 | ret->value.asn1_string->length = derlen; | - |
826 | | - |
827 | der = | - |
828 | ((void *)0) | - |
829 | ; | - |
830 | | - |
831 | bad: code before this statement never executed: bad: | 0 |
832 | free(der); | - |
833 | if (skTRUE | never evaluated | FALSE | never evaluated |
) | 0 |
834 | sk_pop_free(((_STACK*) (1 ? (sk) : (struct stack_st_ASN1_TYPE*)0)), ((void (*)(void *)) ((1 ? (ASN1_TYPE_free) : (void (*)(ASN1_TYPE *))0)))); never executed: sk_pop_free(((_STACK*) (1 ? (sk) : (struct stack_st_ASN1_TYPE*)0)), ((void (*)(void *)) ((1 ? (ASN1_TYPE_free) : (void (*)(ASN1_TYPE *))0)))); | 0 |
835 | if (sectTRUE | never evaluated | FALSE | never evaluated |
) | 0 |
836 | X509V3_section_free(cnf, sect); never executed: X509V3_section_free(cnf, sect); | 0 |
837 | | - |
838 | return never executed: return ret; ret;never executed: return ret; | 0 |
839 | } | - |
840 | | - |
841 | static int | - |
842 | append_exp(tag_exp_arg *arg, int exp_tag, int exp_class, int exp_constructed, | - |
843 | int exp_pad, int imp_ok) | - |
844 | { | - |
845 | tag_exp_type *exp_tmp; | - |
846 | | - |
847 | | - |
848 | if ((TRUE | never evaluated | FALSE | never evaluated |
arg->imp_tag != -1)TRUE | never evaluated | FALSE | never evaluated |
&& !imp_okTRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
849 | ERR_put_error(13,(0xfff),(179),__FILE__,499); | - |
850 | return never executed: return 0; 0;never executed: return 0; | 0 |
851 | } | - |
852 | | - |
853 | if (arg->exp_count == 20TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
854 | ERR_put_error(13,(0xfff),(174),__FILE__,504); | - |
855 | return never executed: return 0; 0;never executed: return 0; | 0 |
856 | } | - |
857 | | - |
858 | exp_tmp = &arg->exp_list[arg->exp_count++]; | - |
859 | | - |
860 | | - |
861 | | - |
862 | | - |
863 | if (arg->imp_tag != -1TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
864 | exp_tmp->exp_tag = arg->imp_tag; | - |
865 | exp_tmp->exp_class = arg->imp_class; | - |
866 | arg->imp_tag = -1; | - |
867 | arg->imp_class = -1; | - |
868 | } never executed: end of block else { | 0 |
869 | exp_tmp->exp_tag = exp_tag; | - |
870 | exp_tmp->exp_class = exp_class; | - |
871 | } never executed: end of block | 0 |
872 | exp_tmp->exp_constructed = exp_constructed; | - |
873 | exp_tmp->exp_pad = exp_pad; | - |
874 | | - |
875 | return never executed: return 1; 1;never executed: return 1; | 0 |
876 | } | - |
877 | | - |
878 | static int | - |
879 | asn1_str2tag(const char *tagstr, int len) | - |
880 | { | - |
881 | unsigned int i; | - |
882 | static const struct tag_name_st *tntmp, tnst [] = { | - |
883 | {"BOOL", sizeof("BOOL") - 1, 1}, | - |
884 | {"BOOLEAN", sizeof("BOOLEAN") - 1, 1}, | - |
885 | {"NULL", sizeof("NULL") - 1, 5}, | - |
886 | {"INT", sizeof("INT") - 1, 2}, | - |
887 | {"INTEGER", sizeof("INTEGER") - 1, 2}, | - |
888 | {"ENUM", sizeof("ENUM") - 1, 10}, | - |
889 | {"ENUMERATED", sizeof("ENUMERATED") - 1, 10}, | - |
890 | {"OID", sizeof("OID") - 1, 6}, | - |
891 | {"OBJECT", sizeof("OBJECT") - 1, 6}, | - |
892 | {"UTCTIME", sizeof("UTCTIME") - 1, 23}, | - |
893 | {"UTC", sizeof("UTC") - 1, 23}, | - |
894 | {"GENERALIZEDTIME", sizeof("GENERALIZEDTIME") - 1, 24}, | - |
895 | {"GENTIME", sizeof("GENTIME") - 1, 24}, | - |
896 | {"OCT", sizeof("OCT") - 1, 4}, | - |
897 | {"OCTETSTRING", sizeof("OCTETSTRING") - 1, 4}, | - |
898 | {"BITSTR", sizeof("BITSTR") - 1, 3}, | - |
899 | {"BITSTRING", sizeof("BITSTRING") - 1, 3}, | - |
900 | {"UNIVERSALSTRING", sizeof("UNIVERSALSTRING") - 1, 28}, | - |
901 | {"UNIV", sizeof("UNIV") - 1, 28}, | - |
902 | {"IA5", sizeof("IA5") - 1, 22}, | - |
903 | {"IA5STRING", sizeof("IA5STRING") - 1, 22}, | - |
904 | {"UTF8", sizeof("UTF8") - 1, 12}, | - |
905 | {"UTF8String", sizeof("UTF8String") - 1, 12}, | - |
906 | {"BMP", sizeof("BMP") - 1, 30}, | - |
907 | {"BMPSTRING", sizeof("BMPSTRING") - 1, 30}, | - |
908 | {"VISIBLESTRING", sizeof("VISIBLESTRING") - 1, 26}, | - |
909 | {"VISIBLE", sizeof("VISIBLE") - 1, 26}, | - |
910 | {"PRINTABLESTRING", sizeof("PRINTABLESTRING") - 1, 19}, | - |
911 | {"PRINTABLE", sizeof("PRINTABLE") - 1, 19}, | - |
912 | {"T61", sizeof("T61") - 1, 20}, | - |
913 | {"T61STRING", sizeof("T61STRING") - 1, 20}, | - |
914 | {"TELETEXSTRING", sizeof("TELETEXSTRING") - 1, 20}, | - |
915 | {"GeneralString", sizeof("GeneralString") - 1, 27}, | - |
916 | {"GENSTR", sizeof("GENSTR") - 1, 27}, | - |
917 | {"NUMERIC", sizeof("NUMERIC") - 1, 18}, | - |
918 | {"NUMERICSTRING", sizeof("NUMERICSTRING") - 1, 18}, | - |
919 | | - |
920 | | - |
921 | {"SEQUENCE", sizeof("SEQUENCE") - 1, 16}, | - |
922 | {"SEQ", sizeof("SEQ") - 1, 16}, | - |
923 | {"SET", sizeof("SET") - 1, 17}, | - |
924 | | - |
925 | | - |
926 | {"EXP", sizeof("EXP") - 1, (0x10000|2)}, | - |
927 | {"EXPLICIT", sizeof("EXPLICIT") - 1, (0x10000|2)}, | - |
928 | | - |
929 | {"IMP", sizeof("IMP") - 1, (0x10000|1)}, | - |
930 | {"IMPLICIT", sizeof("IMPLICIT") - 1, (0x10000|1)}, | - |
931 | | - |
932 | {"OCTWRAP", sizeof("OCTWRAP") - 1, (0x10000|5)}, | - |
933 | | - |
934 | {"SEQWRAP", sizeof("SEQWRAP") - 1, (0x10000|6)}, | - |
935 | | - |
936 | {"SETWRAP", sizeof("SETWRAP") - 1, (0x10000|7)}, | - |
937 | | - |
938 | {"BITWRAP", sizeof("BITWRAP") - 1, (0x10000|4)}, | - |
939 | {"FORM", sizeof("FORM") - 1, (0x10000|8)}, | - |
940 | {"FORMAT", sizeof("FORMAT") - 1, (0x10000|8)}, | - |
941 | }; | - |
942 | | - |
943 | if (len == -1TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
944 | len = strlen(tagstr); never executed: len = strlen(tagstr); | 0 |
945 | | - |
946 | tntmp = tnst; | - |
947 | for (i = 0; i < sizeof(tnst) / sizeof(struct tag_name_st)TRUE | never evaluated | FALSE | never evaluated |
; | 0 |
948 | i++, tntmp++) { | - |
949 | if ((TRUE | never evaluated | FALSE | never evaluated |
len == tntmp->len)TRUE | never evaluated | FALSE | never evaluated |
&& !TRUE | never evaluated | FALSE | never evaluated |
| 0 |
950 | (__extension__ (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
951 | lenTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
952 | )TRUE | never evaluated | FALSE | never evaluated |
&& ((__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
953 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
954 | )TRUE | never evaluated | FALSE | never evaluated |
&& strlen (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
955 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
956 | ) < ((size_t) (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
957 | lenTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
958 | ))TRUE | never evaluated | FALSE | never evaluated |
) || (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
959 | tagstrTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
960 | )TRUE | never evaluated | FALSE | never evaluated |
&& strlen (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
961 | tagstrTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
962 | ) < ((size_t) (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
963 | lenTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
964 | ))TRUE | never evaluated | FALSE | never evaluated |
)) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
965 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
966 | ) && __builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
967 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
968 | ) && (__s1_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
969 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
970 | ), __s2_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
971 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
972 | ), (!((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
973 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
974 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
975 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
976 | ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
977 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
978 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
979 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
980 | ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
981 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
982 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
983 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
984 | ) : (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
985 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
986 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
987 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
988 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
989 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
990 | ) == 1) && (__s1_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
991 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
992 | ), __s1_len < 4) ? (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
993 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
994 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
995 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
996 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
997 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
998 | ) == 1) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
999 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1000 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1001 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1002 | ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1003 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1004 | ); int __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1005 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1006 | ))[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 |
1007 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1008 | ))[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 |
1009 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1010 | ))[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 *) ( tntmp->strnam ))[3] - __s2[3]); | 0 |
1011 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( tntmp->strnam ))[3] - __s2[3]); | 0 |
1012 | ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1013 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1014 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1015 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1016 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1017 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1018 | ) == 1) && (__s2_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1019 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1020 | ), __s2_len < 4) ? (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1021 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1022 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1023 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1024 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1025 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1026 | ) == 1) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1027 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1028 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1029 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1030 | ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1031 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1032 | ); int __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1033 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1034 | ))[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 |
1035 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1036 | ))[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 |
1037 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1038 | ))[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 *) ( tagstr ))[3] - __s2[3]); | 0 |
1039 | tagstrTRUE | never evaluated | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( tagstr ))[3] - __s2[3]); | 0 |
1040 | ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1041 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1042 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1043 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1044 | )))); }) : strncmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1045 | tntmp->strnamTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1046 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1047 | tagstrTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1048 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1049 | lenTRUE | never evaluated | FALSE | never evaluated |
| 0 |
1050 | )))TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1051 | ) | - |
1052 | return never executed: return tntmp->tag; tntmp->tag;never executed: return tntmp->tag; | 0 |
1053 | } never executed: end of block | 0 |
1054 | | - |
1055 | return never executed: return -1; -1;never executed: return -1; | 0 |
1056 | } | - |
1057 | | - |
1058 | static ASN1_TYPE * | - |
1059 | asn1_str2type(const char *str, int format, int utype) | - |
1060 | { | - |
1061 | ASN1_TYPE *atmp = | - |
1062 | ((void *)0) | - |
1063 | ; | - |
1064 | CONF_VALUE vtmp; | - |
1065 | unsigned char *rdata; | - |
1066 | long rdlen; | - |
1067 | int no_unused = 1; | - |
1068 | | - |
1069 | if (!(atmp = ASN1_TYPE_new())TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1070 | ERR_put_error(13,(0xfff),((1|64)),__FILE__,616); | - |
1071 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
1072 | ((void *)0) never executed: return ((void *)0) ; | 0 |
1073 | ; never executed: return ((void *)0) ; | 0 |
1074 | } | - |
1075 | | - |
1076 | if (!strTRUE | never evaluated | FALSE | never evaluated |
) | 0 |
1077 | str = ""; never executed: str = ""; | 0 |
1078 | | - |
1079 | switch (utype) { | - |
1080 | | - |
1081 | case never executed: case 5: 5:never executed: case 5: | 0 |
1082 | if (strTRUE | never evaluated | FALSE | never evaluated |
&& *TRUE | never evaluated | FALSE | never evaluated |
strTRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1083 | ERR_put_error(13,(0xfff),(182),__FILE__,627); | - |
1084 | goto never executed: goto bad_form; bad_form;never executed: goto bad_form; | 0 |
1085 | } | - |
1086 | break; never executed: break; | 0 |
1087 | | - |
1088 | case never executed: case 1: 1:never executed: case 1: | 0 |
1089 | if (format != 1TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1090 | ERR_put_error(13,(0xfff),(190),__FILE__,634); | - |
1091 | goto never executed: goto bad_form; bad_form;never executed: goto bad_form; | 0 |
1092 | } | - |
1093 | vtmp.name = | - |
1094 | ((void *)0) | - |
1095 | ; | - |
1096 | vtmp.section = | - |
1097 | ((void *)0) | - |
1098 | ; | - |
1099 | vtmp.value = (char *)str; | - |
1100 | if (!X509V3_get_value_bool(&vtmp, &atmp->value.boolean)TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1101 | ERR_put_error(13,(0xfff),(176),__FILE__,641); | - |
1102 | goto never executed: goto bad_str; bad_str;never executed: goto bad_str; | 0 |
1103 | } | - |
1104 | break; never executed: break; | 0 |
1105 | | - |
1106 | case never executed: case 2: 2:never executed: case 2: | 0 |
1107 | case never executed: case 10: 10:never executed: case 10: | 0 |
1108 | if (format != 1TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1109 | ERR_put_error(13,(0xfff),(185),__FILE__,649); | - |
1110 | goto never executed: goto bad_form; bad_form;never executed: goto bad_form; | 0 |
1111 | } | - |
1112 | if (!(atmp->value.integer =TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1113 | s2i_ASN1_INTEGER(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1114 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1115 | , (char *)str))TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1116 | ERR_put_error(13,(0xfff),(180),__FILE__,654); | - |
1117 | goto never executed: goto bad_str; bad_str;never executed: goto bad_str; | 0 |
1118 | } | - |
1119 | break; never executed: break; | 0 |
1120 | | - |
1121 | case never executed: case 6: 6:never executed: case 6: | 0 |
1122 | if (format != 1TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1123 | ERR_put_error(13,(0xfff),(191),__FILE__,661); | - |
1124 | goto never executed: goto bad_form; bad_form;never executed: goto bad_form; | 0 |
1125 | } | - |
1126 | if (!(atmp->value.object = OBJ_txt2obj(str, 0))TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1127 | ERR_put_error(13,(0xfff),(183),__FILE__,665); | - |
1128 | goto never executed: goto bad_str; bad_str;never executed: goto bad_str; | 0 |
1129 | } | - |
1130 | break; never executed: break; | 0 |
1131 | | - |
1132 | case never executed: case 23: 23:never executed: case 23: | 0 |
1133 | case never executed: case 24: 24:never executed: case 24: | 0 |
1134 | if (format != 1TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1135 | ERR_put_error(13,(0xfff),(193),__FILE__,673); | - |
1136 | goto never executed: goto bad_form; bad_form;never executed: goto bad_form; | 0 |
1137 | } | - |
1138 | if (!(atmp->value.asn1_string = ASN1_STRING_new())TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1139 | ERR_put_error(13,(0xfff),((1|64)),__FILE__,677); | - |
1140 | goto never executed: goto bad_str; bad_str;never executed: goto bad_str; | 0 |
1141 | } | - |
1142 | if (!ASN1_STRING_set(atmp->value.asn1_string, str, -1)TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1143 | ERR_put_error(13,(0xfff),((1|64)),__FILE__,681); | - |
1144 | goto never executed: goto bad_str; bad_str;never executed: goto bad_str; | 0 |
1145 | } | - |
1146 | atmp->value.asn1_string->type = utype; | - |
1147 | if (!ASN1_TIME_check(atmp->value.asn1_string)TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1148 | ERR_put_error(13,(0xfff),(184),__FILE__,686); | - |
1149 | goto never executed: goto bad_str; bad_str;never executed: goto bad_str; | 0 |
1150 | } | - |
1151 | break; never executed: break; | 0 |
1152 | | - |
1153 | case never executed: case 30: 30:never executed: case 30: | 0 |
1154 | case never executed: case 19: 19:never executed: case 19: | 0 |
1155 | case never executed: case 22: 22:never executed: case 22: | 0 |
1156 | case never executed: case 20: 20:never executed: case 20: | 0 |
1157 | case never executed: case 12: 12:never executed: case 12: | 0 |
1158 | case never executed: case 26: 26:never executed: case 26: | 0 |
1159 | case never executed: case 28: 28:never executed: case 28: | 0 |
1160 | case never executed: case 27: 27:never executed: case 27: | 0 |
1161 | case never executed: case 18: 18:never executed: case 18: | 0 |
1162 | | - |
1163 | if (format == 1TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
1164 | format = (0x1000|1); never executed: format = (0x1000|1); | 0 |
1165 | else if (format == 2TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
1166 | format = (0x1000); never executed: format = (0x1000); | 0 |
1167 | else { | - |
1168 | ERR_put_error(13,(0xfff),(177),__FILE__,706); | - |
1169 | goto never executed: goto bad_form; bad_form;never executed: goto bad_form; | 0 |
1170 | } | - |
1171 | | - |
1172 | if (ASN1_mbstring_copy(&atmp->value.asn1_string,TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1173 | (unsigned char *)str, -1, format,TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1174 | ASN1_tag2bit(utype)) <= 0TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1175 | ERR_put_error(13,(0xfff),((1|64)),__FILE__,713); | - |
1176 | goto never executed: goto bad_str; bad_str;never executed: goto bad_str; | 0 |
1177 | } | - |
1178 | break; never executed: break; | 0 |
1179 | | - |
1180 | case never executed: case 3: 3:never executed: case 3: | 0 |
1181 | case never executed: case 4: 4:never executed: case 4: | 0 |
1182 | if (!(atmp->value.asn1_string = ASN1_STRING_new())TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1183 | ERR_put_error(13,(0xfff),((1|64)),__FILE__,721); | - |
1184 | goto never executed: goto bad_form; bad_form;never executed: goto bad_form; | 0 |
1185 | } | - |
1186 | | - |
1187 | if (format == 3TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1188 | | - |
1189 | if (!(rdata = string_to_hex((char *)str, &rdlen))TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1190 | ERR_put_error(13,(0xfff),(178),__FILE__,728); | - |
1191 | goto never executed: goto bad_str; bad_str;never executed: goto bad_str; | 0 |
1192 | } | - |
1193 | | - |
1194 | atmp->value.asn1_string->data = rdata; | - |
1195 | atmp->value.asn1_string->length = rdlen; | - |
1196 | atmp->value.asn1_string->type = utype; | - |
1197 | | - |
1198 | } never executed: end of block else if (format == 1TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1199 | if (ASN1_STRING_set(atmp->value.asn1_string, str,TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1200 | -1) == 0TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1201 | ERR_put_error(13,(0xfff),((1|64)),__FILE__,739); | - |
1202 | goto never executed: goto bad_str; bad_str;never executed: goto bad_str; | 0 |
1203 | } | - |
1204 | } never executed: end of block else if ((TRUE | never evaluated | FALSE | never evaluated |
format == 4)TRUE | never evaluated | FALSE | never evaluated |
&& | 0 |
1205 | (TRUE | never evaluated | FALSE | never evaluated |
utype == 3)TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1206 | if (!CONF_parse_list(str, ',', 1, bitstr_cb,TRUE | never evaluated | FALSE | never evaluated |
| 0 |
1207 | atmp->value.bit_string)TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1208 | ERR_put_error(13,(0xfff),(188),__FILE__,746); | - |
1209 | goto never executed: goto bad_str; bad_str;never executed: goto bad_str; | 0 |
1210 | } | - |
1211 | no_unused = 0; | - |
1212 | | - |
1213 | } never executed: end of block else { | 0 |
1214 | ERR_put_error(13,(0xfff),(175),__FILE__,752); | - |
1215 | goto never executed: goto bad_form; bad_form;never executed: goto bad_form; | 0 |
1216 | } | - |
1217 | | - |
1218 | if ((TRUE | never evaluated | FALSE | never evaluated |
utype == 3)TRUE | never evaluated | FALSE | never evaluated |
&& no_unusedTRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1219 | atmp->value.asn1_string->flags &= | - |
1220 | ~(0x08 | 0x07); | - |
1221 | atmp->value.asn1_string->flags |= | - |
1222 | 0x08; | - |
1223 | } never executed: end of block | 0 |
1224 | | - |
1225 | break; never executed: break; | 0 |
1226 | | - |
1227 | default never executed: default: :never executed: default: | 0 |
1228 | ERR_put_error(13,(0xfff),(196),__FILE__,766); | - |
1229 | goto never executed: goto bad_str; bad_str;never executed: goto bad_str; | 0 |
1230 | break; dead code: break; | - |
1231 | } | - |
1232 | | - |
1233 | atmp->type = utype; | - |
1234 | return never executed: return atmp; atmp;never executed: return atmp; | 0 |
1235 | | - |
1236 | bad_str: | - |
1237 | ERR_asprintf_error_data("string=%s", str); | - |
1238 | bad_form: code before this statement never executed: bad_form: | 0 |
1239 | ASN1_TYPE_free(atmp); | - |
1240 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
1241 | ((void *)0) never executed: return ((void *)0) ; | 0 |
1242 | ; never executed: return ((void *)0) ; | 0 |
1243 | } | - |
1244 | | - |
1245 | static int | - |
1246 | bitstr_cb(const char *elem, int len, void *bitstr) | - |
1247 | { | - |
1248 | long bitnum; | - |
1249 | char *eptr; | - |
1250 | | - |
1251 | if (!elemTRUE | never evaluated | FALSE | never evaluated |
) | 0 |
1252 | return never executed: return 0; 0;never executed: return 0; | 0 |
1253 | bitnum = strtoul(elem, &eptr, 10); | - |
1254 | if (eptrTRUE | never evaluated | FALSE | never evaluated |
&& *TRUE | never evaluated | FALSE | never evaluated |
eptrTRUE | never evaluated | FALSE | never evaluated |
&& (TRUE | never evaluated | FALSE | never evaluated |
eptr != elem + len)TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
1255 | return never executed: return 0; 0;never executed: return 0; | 0 |
1256 | if (bitnum < 0TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1257 | ERR_put_error(13,(0xfff),(187),__FILE__,793); | - |
1258 | return never executed: return 0; 0;never executed: return 0; | 0 |
1259 | } | - |
1260 | if (!ASN1_BIT_STRING_set_bit(bitstr, bitnum, 1)TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
1261 | ERR_put_error(13,(0xfff),((1|64)),__FILE__,797); | - |
1262 | return never executed: return 0; 0;never executed: return 0; | 0 |
1263 | } | - |
1264 | return never executed: return 1; 1;never executed: return 1; | 0 |
1265 | } | - |
| | |