D2I_DIST_POINT(3)

πŸ“¦ version 4.4.0, in alpine 3.24, arch rolling

πŸ’– D2I_DIST_POINT(3) β€” Library Functions Manual πŸ’–

okay so bestie, this is the Library Functions Manual page for the X.509 data-access-extension encode/decode girlies. no cap, they’re highkey iconic, and it’s giving main character energy for the β€œwhere do I retrieve additional information online?” vibe. πŸ¦‹


✨ NAME ✨

These functions decode and encode X.509 data access extensions: d2i_DIST_POINT, i2d_DIST_POINT, d2i_CRL_DIST_POINTS, i2d_CRL_DIST_POINTS, d2i_DIST_POINT_NAME, i2d_DIST_POINT_NAME, d2i_ISSUING_DIST_POINT, i2d_ISSUING_DIST_POINT, d2i_ACCESS_DESCRIPTION, i2d_ACCESS_DESCRIPTION, d2i_AUTHORITY_INFO_ACCESS, i2d_AUTHORITY_INFO_ACCESS. periodt. πŸ’…

πŸ“œ SYNOPSIS πŸ“œ

library β€œlibcrypto” #include <openssl/x509v3.h>

DIST_POINT *
d2i_DIST_POINT(DIST_POINT_NAME **val_out, const unsigned char **der_in,
    long length);

int
i2d_DIST_POINT(DIST_POINT *val_in, unsigned char **der_out);

CRL_DIST_POINTS *
d2i_CRL_DIST_POINTS(CRL_DIST_POINTS_NAME **val_out,
    const unsigned char **der_in, long length);

int
i2d_CRL_DIST_POINTS(CRL_DIST_POINTS *val_in, unsigned char **der_out);

DIST_POINT_NAME *
d2i_DIST_POINT_NAME(DIST_POINT_NAME_NAME **val_out,
    const unsigned char **der_in, long length);

int
i2d_DIST_POINT_NAME(DIST_POINT_NAME *val_in, unsigned char **der_out);

ISSUING_DIST_POINT *
d2i_ISSUING_DIST_POINT(ISSUING_DIST_POINT_NAME **val_out,
    const unsigned char **der_in, long length);

int
i2d_ISSUING_DIST_POINT(ISSUING_DIST_POINT *val_in,
    unsigned char **der_out);

ACCESS_DESCRIPTION *
d2i_ACCESS_DESCRIPTION(ACCESS_DESCRIPTION_NAME **val_out,
    const unsigned char **der_in, long length);

int
i2d_ACCESS_DESCRIPTION(ACCESS_DESCRIPTION *val_in,
    unsigned char **der_out);

AUTHORITY_INFO_ACCESS *
d2i_AUTHORITY_INFO_ACCESS(AUTHORITY_INFO_ACCESS_NAME **val_out,
    const unsigned char **der_in, long length);

int
i2d_AUTHORITY_INFO_ACCESS(AUTHORITY_INFO_ACCESS *val_in,
    unsigned char **der_out);

πŸ” DESCRIPTION πŸ”

Okay so these functions decode and encode X.509 extensions that communicate where to retrieve additional information online. For details about the semantics, examples, caveats, and bugs, see ASN1_item_d2i(3). iykyk 🧚

  • d2i_DIST_POINT() and i2d_DIST_POINT() decode and encode an ASN.1 DistributionPoint structure defined in RFC 5280 section 4.2.1.13.
  • d2i_CRL_DIST_POINTS() and i2d_CRL_DIST_POINTS() decode and encode an ASN.1 CRLDistributionPoints structure defined in RFC 5280 section 4.2.1.13.
  • d2i_DIST_POINT_NAME() and i2d_DIST_POINT_NAME() decode and encode an ASN.1 DistributionPointName structure defined in RFC 5280 section 4.2.1.13.
  • d2i_ISSUING_DIST_POINT() and i2d_ISSUING_DIST_POINT() decode and encode an ASN.1 IssuingDistributionPoint structure defined in RFC 5280 section 5.2.5.
  • d2i_ACCESS_DESCRIPTION() and i2d_ACCESS_DESCRIPTION() decode and encode an ASN.1 AccessDescription structure defined in RFC 5280 section 4.2.2.1.
  • d2i_AUTHORITY_INFO_ACCESS() and i2d_AUTHORITY_INFO_ACCESS() decode and encode an ASN.1 AuthorityInfoAccessSyntax structure defined in RFC 5280 section 4.2.2.1.

πŸŽ€ RETURN VALUES πŸŽ€

ngl, vibe check on what comes back, bestie:

  • d2i_DIST_POINT(), d2i_CRL_DIST_POINTS(), d2i_DIST_POINT_NAME(), d2i_ISSUING_DIST_POINT(), d2i_ACCESS_DESCRIPTION(), and d2i_AUTHORITY_INFO_ACCESS() return an object of the respective type or NULL if an error occurs. not the error jump scare 😭
  • i2d_DIST_POINT(), i2d_CRL_DIST_POINTS(), i2d_DIST_POINT_NAME(), i2d_ISSUING_DIST_POINT(), i2d_ACCESS_DESCRIPTION(), and i2d_AUTHORITY_INFO_ACCESS() return the number of bytes successfully encoded or a negative value if an error occurs.

🌈 SEE ALSO 🌈

not me being obsessed with these cross-refs, bestie:

⭐ STANDARDS ⭐

The standard is RFC 5280: Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile. Iconic. πŸ‘‘

🌱 HISTORY 🌱

  • d2i_DIST_POINT(), i2d_DIST_POINT(), d2i_CRL_DIST_POINTS(), i2d_CRL_DIST_POINTS(), d2i_DIST_POINT_NAME(), and i2d_DIST_POINT_NAME() first appeared in OpenSSL 0.9.3 and have been available since OpenBSD 2.6.
  • d2i_ACCESS_DESCRIPTION(), i2d_ACCESS_DESCRIPTION(), d2i_AUTHORITY_INFO_ACCESS(), and i2d_AUTHORITY_INFO_ACCESS() first appeared in OpenSSL 0.9.5 and have been available since OpenBSD 2.7.
  • d2i_ISSUING_DIST_POINT() and i2d_ISSUING_DIST_POINT() first appeared in OpenSSL 1.0.0 and have been available since OpenBSD 4.9.

that’s the tea, bestie πŸ“ This page comes from Debian, dated June 8, 2025, for D2I_DIST_POINT(3). slay responsibly πŸ’– 🫢

πŸ“¦ where this page comes from