summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/x509/x509_genn.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/x509/x509_genn.c')
-rw-r--r--src/lib/libcrypto/x509/x509_genn.c25
1 files changed, 24 insertions, 1 deletions
diff --git a/src/lib/libcrypto/x509/x509_genn.c b/src/lib/libcrypto/x509/x509_genn.c
index dadf6f1e40..ce1fb6cc02 100644
--- a/src/lib/libcrypto/x509/x509_genn.c
+++ b/src/lib/libcrypto/x509/x509_genn.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: x509_genn.c,v 1.2 2020/12/08 15:06:42 tb Exp $ */ 1/* $OpenBSD: x509_genn.c,v 1.3 2022/11/14 17:48:50 beck Exp $ */
2/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL 2/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
3 * project 1999. 3 * project 1999.
4 */ 4 */
@@ -98,24 +98,28 @@ d2i_OTHERNAME(OTHERNAME **a, const unsigned char **in, long len)
98 return (OTHERNAME *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, 98 return (OTHERNAME *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
99 &OTHERNAME_it); 99 &OTHERNAME_it);
100} 100}
101LCRYPTO_ALIAS(d2i_OTHERNAME)
101 102
102int 103int
103i2d_OTHERNAME(OTHERNAME *a, unsigned char **out) 104i2d_OTHERNAME(OTHERNAME *a, unsigned char **out)
104{ 105{
105 return ASN1_item_i2d((ASN1_VALUE *)a, out, &OTHERNAME_it); 106 return ASN1_item_i2d((ASN1_VALUE *)a, out, &OTHERNAME_it);
106} 107}
108LCRYPTO_ALIAS(i2d_OTHERNAME)
107 109
108OTHERNAME * 110OTHERNAME *
109OTHERNAME_new(void) 111OTHERNAME_new(void)
110{ 112{
111 return (OTHERNAME *)ASN1_item_new(&OTHERNAME_it); 113 return (OTHERNAME *)ASN1_item_new(&OTHERNAME_it);
112} 114}
115LCRYPTO_ALIAS(OTHERNAME_new)
113 116
114void 117void
115OTHERNAME_free(OTHERNAME *a) 118OTHERNAME_free(OTHERNAME *a)
116{ 119{
117 ASN1_item_free((ASN1_VALUE *)a, &OTHERNAME_it); 120 ASN1_item_free((ASN1_VALUE *)a, &OTHERNAME_it);
118} 121}
122LCRYPTO_ALIAS(OTHERNAME_free)
119 123
120/* Uses explicit tagging since DIRECTORYSTRING is a CHOICE type */ 124/* Uses explicit tagging since DIRECTORYSTRING is a CHOICE type */
121static const ASN1_TEMPLATE EDIPARTYNAME_seq_tt[] = { 125static const ASN1_TEMPLATE EDIPARTYNAME_seq_tt[] = {
@@ -152,24 +156,28 @@ d2i_EDIPARTYNAME(EDIPARTYNAME **a, const unsigned char **in, long len)
152 return (EDIPARTYNAME *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, 156 return (EDIPARTYNAME *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
153 &EDIPARTYNAME_it); 157 &EDIPARTYNAME_it);
154} 158}
159LCRYPTO_ALIAS(d2i_EDIPARTYNAME)
155 160
156int 161int
157i2d_EDIPARTYNAME(EDIPARTYNAME *a, unsigned char **out) 162i2d_EDIPARTYNAME(EDIPARTYNAME *a, unsigned char **out)
158{ 163{
159 return ASN1_item_i2d((ASN1_VALUE *)a, out, &EDIPARTYNAME_it); 164 return ASN1_item_i2d((ASN1_VALUE *)a, out, &EDIPARTYNAME_it);
160} 165}
166LCRYPTO_ALIAS(i2d_EDIPARTYNAME)
161 167
162EDIPARTYNAME * 168EDIPARTYNAME *
163EDIPARTYNAME_new(void) 169EDIPARTYNAME_new(void)
164{ 170{
165 return (EDIPARTYNAME *)ASN1_item_new(&EDIPARTYNAME_it); 171 return (EDIPARTYNAME *)ASN1_item_new(&EDIPARTYNAME_it);
166} 172}
173LCRYPTO_ALIAS(EDIPARTYNAME_new)
167 174
168void 175void
169EDIPARTYNAME_free(EDIPARTYNAME *a) 176EDIPARTYNAME_free(EDIPARTYNAME *a)
170{ 177{
171 ASN1_item_free((ASN1_VALUE *)a, &EDIPARTYNAME_it); 178 ASN1_item_free((ASN1_VALUE *)a, &EDIPARTYNAME_it);
172} 179}
180LCRYPTO_ALIAS(EDIPARTYNAME_free)
173 181
174static const ASN1_TEMPLATE GENERAL_NAME_ch_tt[] = { 182static const ASN1_TEMPLATE GENERAL_NAME_ch_tt[] = {
175 { 183 {
@@ -256,24 +264,28 @@ d2i_GENERAL_NAME(GENERAL_NAME **a, const unsigned char **in, long len)
256 return (GENERAL_NAME *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, 264 return (GENERAL_NAME *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
257 &GENERAL_NAME_it); 265 &GENERAL_NAME_it);
258} 266}
267LCRYPTO_ALIAS(d2i_GENERAL_NAME)
259 268
260int 269int
261i2d_GENERAL_NAME(GENERAL_NAME *a, unsigned char **out) 270i2d_GENERAL_NAME(GENERAL_NAME *a, unsigned char **out)
262{ 271{
263 return ASN1_item_i2d((ASN1_VALUE *)a, out, &GENERAL_NAME_it); 272 return ASN1_item_i2d((ASN1_VALUE *)a, out, &GENERAL_NAME_it);
264} 273}
274LCRYPTO_ALIAS(i2d_GENERAL_NAME)
265 275
266GENERAL_NAME * 276GENERAL_NAME *
267GENERAL_NAME_new(void) 277GENERAL_NAME_new(void)
268{ 278{
269 return (GENERAL_NAME *)ASN1_item_new(&GENERAL_NAME_it); 279 return (GENERAL_NAME *)ASN1_item_new(&GENERAL_NAME_it);
270} 280}
281LCRYPTO_ALIAS(GENERAL_NAME_new)
271 282
272void 283void
273GENERAL_NAME_free(GENERAL_NAME *a) 284GENERAL_NAME_free(GENERAL_NAME *a)
274{ 285{
275 ASN1_item_free((ASN1_VALUE *)a, &GENERAL_NAME_it); 286 ASN1_item_free((ASN1_VALUE *)a, &GENERAL_NAME_it);
276} 287}
288LCRYPTO_ALIAS(GENERAL_NAME_free)
277 289
278static const ASN1_TEMPLATE GENERAL_NAMES_item_tt = { 290static const ASN1_TEMPLATE GENERAL_NAMES_item_tt = {
279 .flags = ASN1_TFLG_SEQUENCE_OF, 291 .flags = ASN1_TFLG_SEQUENCE_OF,
@@ -300,30 +312,35 @@ d2i_GENERAL_NAMES(GENERAL_NAMES **a, const unsigned char **in, long len)
300 return (GENERAL_NAMES *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, 312 return (GENERAL_NAMES *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
301 &GENERAL_NAMES_it); 313 &GENERAL_NAMES_it);
302} 314}
315LCRYPTO_ALIAS(d2i_GENERAL_NAMES)
303 316
304int 317int
305i2d_GENERAL_NAMES(GENERAL_NAMES *a, unsigned char **out) 318i2d_GENERAL_NAMES(GENERAL_NAMES *a, unsigned char **out)
306{ 319{
307 return ASN1_item_i2d((ASN1_VALUE *)a, out, &GENERAL_NAMES_it); 320 return ASN1_item_i2d((ASN1_VALUE *)a, out, &GENERAL_NAMES_it);
308} 321}
322LCRYPTO_ALIAS(i2d_GENERAL_NAMES)
309 323
310GENERAL_NAMES * 324GENERAL_NAMES *
311GENERAL_NAMES_new(void) 325GENERAL_NAMES_new(void)
312{ 326{
313 return (GENERAL_NAMES *)ASN1_item_new(&GENERAL_NAMES_it); 327 return (GENERAL_NAMES *)ASN1_item_new(&GENERAL_NAMES_it);
314} 328}
329LCRYPTO_ALIAS(GENERAL_NAMES_new)
315 330
316void 331void
317GENERAL_NAMES_free(GENERAL_NAMES *a) 332GENERAL_NAMES_free(GENERAL_NAMES *a)
318{ 333{
319 ASN1_item_free((ASN1_VALUE *)a, &GENERAL_NAMES_it); 334 ASN1_item_free((ASN1_VALUE *)a, &GENERAL_NAMES_it);
320} 335}
336LCRYPTO_ALIAS(GENERAL_NAMES_free)
321 337
322GENERAL_NAME * 338GENERAL_NAME *
323GENERAL_NAME_dup(GENERAL_NAME *a) 339GENERAL_NAME_dup(GENERAL_NAME *a)
324{ 340{
325 return ASN1_item_dup(&GENERAL_NAME_it, a); 341 return ASN1_item_dup(&GENERAL_NAME_it, a);
326} 342}
343LCRYPTO_ALIAS(GENERAL_NAME_dup)
327 344
328static int 345static int
329EDIPARTYNAME_cmp(const EDIPARTYNAME *a, const EDIPARTYNAME *b) 346EDIPARTYNAME_cmp(const EDIPARTYNAME *a, const EDIPARTYNAME *b)
@@ -397,6 +414,7 @@ GENERAL_NAME_cmp(GENERAL_NAME *a, GENERAL_NAME *b)
397 } 414 }
398 return result; 415 return result;
399} 416}
417LCRYPTO_ALIAS(GENERAL_NAME_cmp)
400 418
401/* Returns 0 if they are equal, != 0 otherwise. */ 419/* Returns 0 if they are equal, != 0 otherwise. */
402int 420int
@@ -413,6 +431,7 @@ OTHERNAME_cmp(OTHERNAME *a, OTHERNAME *b)
413 result = ASN1_TYPE_cmp(a->value, b->value); 431 result = ASN1_TYPE_cmp(a->value, b->value);
414 return result; 432 return result;
415} 433}
434LCRYPTO_ALIAS(OTHERNAME_cmp)
416 435
417void 436void
418GENERAL_NAME_set0_value(GENERAL_NAME *a, int type, void *value) 437GENERAL_NAME_set0_value(GENERAL_NAME *a, int type, void *value)
@@ -450,6 +469,7 @@ GENERAL_NAME_set0_value(GENERAL_NAME *a, int type, void *value)
450 } 469 }
451 a->type = type; 470 a->type = type;
452} 471}
472LCRYPTO_ALIAS(GENERAL_NAME_set0_value)
453 473
454void * 474void *
455GENERAL_NAME_get0_value(GENERAL_NAME *a, int *ptype) 475GENERAL_NAME_get0_value(GENERAL_NAME *a, int *ptype)
@@ -484,6 +504,7 @@ GENERAL_NAME_get0_value(GENERAL_NAME *a, int *ptype)
484 return NULL; 504 return NULL;
485 } 505 }
486} 506}
507LCRYPTO_ALIAS(GENERAL_NAME_get0_value)
487 508
488int 509int
489GENERAL_NAME_set0_othername(GENERAL_NAME *gen, ASN1_OBJECT *oid, 510GENERAL_NAME_set0_othername(GENERAL_NAME *gen, ASN1_OBJECT *oid,
@@ -499,6 +520,7 @@ GENERAL_NAME_set0_othername(GENERAL_NAME *gen, ASN1_OBJECT *oid,
499 GENERAL_NAME_set0_value(gen, GEN_OTHERNAME, oth); 520 GENERAL_NAME_set0_value(gen, GEN_OTHERNAME, oth);
500 return 1; 521 return 1;
501} 522}
523LCRYPTO_ALIAS(GENERAL_NAME_set0_othername)
502 524
503int 525int
504GENERAL_NAME_get0_otherName(GENERAL_NAME *gen, ASN1_OBJECT **poid, 526GENERAL_NAME_get0_otherName(GENERAL_NAME *gen, ASN1_OBJECT **poid,
@@ -512,3 +534,4 @@ GENERAL_NAME_get0_otherName(GENERAL_NAME *gen, ASN1_OBJECT **poid,
512 *pvalue = gen->d.otherName->value; 534 *pvalue = gen->d.otherName->value;
513 return 1; 535 return 1;
514} 536}
537LCRYPTO_ALIAS(GENERAL_NAME_get0_otherName)