summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/x509v3/v3_crld.c
diff options
context:
space:
mode:
authorjsing <>2015-02-09 16:03:11 +0000
committerjsing <>2015-02-09 16:03:11 +0000
commitc67b08b466720c73bce5f5a0ee6d8ccf43683ae6 (patch)
tree450aac9231a21230a1a136407055b6264089d1b8 /src/lib/libcrypto/x509v3/v3_crld.c
parent16f790d01f7a6fc6c94e2a033a67b80c8ec5291c (diff)
downloadopenbsd-c67b08b466720c73bce5f5a0ee6d8ccf43683ae6.tar.gz
openbsd-c67b08b466720c73bce5f5a0ee6d8ccf43683ae6.tar.bz2
openbsd-c67b08b466720c73bce5f5a0ee6d8ccf43683ae6.zip
Expand the IMPLEMENT_ASN1_FUNCTIONS macro so that the code is visible and
functions can be readily located. Change has been scripted and the generated assembly only differs by changes to line numbers. Discussed with beck@ miod@ tedu@
Diffstat (limited to 'src/lib/libcrypto/x509v3/v3_crld.c')
-rw-r--r--src/lib/libcrypto/x509v3/v3_crld.c106
1 files changed, 101 insertions, 5 deletions
diff --git a/src/lib/libcrypto/x509v3/v3_crld.c b/src/lib/libcrypto/x509v3/v3_crld.c
index 9586401da6..2201b61264 100644
--- a/src/lib/libcrypto/x509v3/v3_crld.c
+++ b/src/lib/libcrypto/x509v3/v3_crld.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: v3_crld.c,v 1.13 2014/10/05 18:27:58 miod Exp $ */ 1/* $OpenBSD: v3_crld.c,v 1.14 2015/02/09 16:03:11 jsing 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 */
@@ -383,7 +383,31 @@ ASN1_CHOICE_cb(DIST_POINT_NAME, dpn_cb) = {
383} ASN1_CHOICE_END_cb(DIST_POINT_NAME, DIST_POINT_NAME, type) 383} ASN1_CHOICE_END_cb(DIST_POINT_NAME, DIST_POINT_NAME, type)
384 384
385 385
386IMPLEMENT_ASN1_FUNCTIONS(DIST_POINT_NAME) 386
387DIST_POINT_NAME *
388d2i_DIST_POINT_NAME(DIST_POINT_NAME **a, const unsigned char **in, long len)
389{
390 return (DIST_POINT_NAME *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
391 &DIST_POINT_NAME_it);
392}
393
394int
395i2d_DIST_POINT_NAME(DIST_POINT_NAME *a, unsigned char **out)
396{
397 return ASN1_item_i2d((ASN1_VALUE *)a, out, &DIST_POINT_NAME_it);
398}
399
400DIST_POINT_NAME *
401DIST_POINT_NAME_new(void)
402{
403 return (DIST_POINT_NAME *)ASN1_item_new(&DIST_POINT_NAME_it);
404}
405
406void
407DIST_POINT_NAME_free(DIST_POINT_NAME *a)
408{
409 ASN1_item_free((ASN1_VALUE *)a, &DIST_POINT_NAME_it);
410}
387 411
388ASN1_SEQUENCE(DIST_POINT) = { 412ASN1_SEQUENCE(DIST_POINT) = {
389 ASN1_EXP_OPT(DIST_POINT, distpoint, DIST_POINT_NAME, 0), 413 ASN1_EXP_OPT(DIST_POINT, distpoint, DIST_POINT_NAME, 0),
@@ -391,14 +415,62 @@ ASN1_SEQUENCE(DIST_POINT) = {
391 ASN1_IMP_SEQUENCE_OF_OPT(DIST_POINT, CRLissuer, GENERAL_NAME, 2) 415 ASN1_IMP_SEQUENCE_OF_OPT(DIST_POINT, CRLissuer, GENERAL_NAME, 2)
392} ASN1_SEQUENCE_END(DIST_POINT) 416} ASN1_SEQUENCE_END(DIST_POINT)
393 417
394IMPLEMENT_ASN1_FUNCTIONS(DIST_POINT) 418
419DIST_POINT *
420d2i_DIST_POINT(DIST_POINT **a, const unsigned char **in, long len)
421{
422 return (DIST_POINT *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
423 &DIST_POINT_it);
424}
425
426int
427i2d_DIST_POINT(DIST_POINT *a, unsigned char **out)
428{
429 return ASN1_item_i2d((ASN1_VALUE *)a, out, &DIST_POINT_it);
430}
431
432DIST_POINT *
433DIST_POINT_new(void)
434{
435 return (DIST_POINT *)ASN1_item_new(&DIST_POINT_it);
436}
437
438void
439DIST_POINT_free(DIST_POINT *a)
440{
441 ASN1_item_free((ASN1_VALUE *)a, &DIST_POINT_it);
442}
395 443
396ASN1_ITEM_TEMPLATE(CRL_DIST_POINTS) = 444ASN1_ITEM_TEMPLATE(CRL_DIST_POINTS) =
397 ASN1_EX_TEMPLATE_TYPE(ASN1_TFLG_SEQUENCE_OF, 0, CRLDistributionPoints, 445 ASN1_EX_TEMPLATE_TYPE(ASN1_TFLG_SEQUENCE_OF, 0, CRLDistributionPoints,
398 DIST_POINT) 446 DIST_POINT)
399ASN1_ITEM_TEMPLATE_END(CRL_DIST_POINTS) 447ASN1_ITEM_TEMPLATE_END(CRL_DIST_POINTS)
400 448
401IMPLEMENT_ASN1_FUNCTIONS(CRL_DIST_POINTS) 449
450CRL_DIST_POINTS *
451d2i_CRL_DIST_POINTS(CRL_DIST_POINTS **a, const unsigned char **in, long len)
452{
453 return (CRL_DIST_POINTS *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
454 &CRL_DIST_POINTS_it);
455}
456
457int
458i2d_CRL_DIST_POINTS(CRL_DIST_POINTS *a, unsigned char **out)
459{
460 return ASN1_item_i2d((ASN1_VALUE *)a, out, &CRL_DIST_POINTS_it);
461}
462
463CRL_DIST_POINTS *
464CRL_DIST_POINTS_new(void)
465{
466 return (CRL_DIST_POINTS *)ASN1_item_new(&CRL_DIST_POINTS_it);
467}
468
469void
470CRL_DIST_POINTS_free(CRL_DIST_POINTS *a)
471{
472 ASN1_item_free((ASN1_VALUE *)a, &CRL_DIST_POINTS_it);
473}
402 474
403ASN1_SEQUENCE(ISSUING_DIST_POINT) = { 475ASN1_SEQUENCE(ISSUING_DIST_POINT) = {
404 ASN1_EXP_OPT(ISSUING_DIST_POINT, distpoint, DIST_POINT_NAME, 0), 476 ASN1_EXP_OPT(ISSUING_DIST_POINT, distpoint, DIST_POINT_NAME, 0),
@@ -409,7 +481,31 @@ ASN1_SEQUENCE(ISSUING_DIST_POINT) = {
409 ASN1_IMP_OPT(ISSUING_DIST_POINT, onlyattr, ASN1_FBOOLEAN, 5) 481 ASN1_IMP_OPT(ISSUING_DIST_POINT, onlyattr, ASN1_FBOOLEAN, 5)
410} ASN1_SEQUENCE_END(ISSUING_DIST_POINT) 482} ASN1_SEQUENCE_END(ISSUING_DIST_POINT)
411 483
412IMPLEMENT_ASN1_FUNCTIONS(ISSUING_DIST_POINT) 484
485ISSUING_DIST_POINT *
486d2i_ISSUING_DIST_POINT(ISSUING_DIST_POINT **a, const unsigned char **in, long len)
487{
488 return (ISSUING_DIST_POINT *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
489 &ISSUING_DIST_POINT_it);
490}
491
492int
493i2d_ISSUING_DIST_POINT(ISSUING_DIST_POINT *a, unsigned char **out)
494{
495 return ASN1_item_i2d((ASN1_VALUE *)a, out, &ISSUING_DIST_POINT_it);
496}
497
498ISSUING_DIST_POINT *
499ISSUING_DIST_POINT_new(void)
500{
501 return (ISSUING_DIST_POINT *)ASN1_item_new(&ISSUING_DIST_POINT_it);
502}
503
504void
505ISSUING_DIST_POINT_free(ISSUING_DIST_POINT *a)
506{
507 ASN1_item_free((ASN1_VALUE *)a, &ISSUING_DIST_POINT_it);
508}
413 509
414static int i2r_idp(const X509V3_EXT_METHOD *method, void *pidp, BIO *out, 510static int i2r_idp(const X509V3_EXT_METHOD *method, void *pidp, BIO *out,
415 int indent); 511 int indent);