ASIDENTIFIERS_NEW(3)
π ASIdentifiers_new(3) β Library Functions Manual π
okay bestie, welcome to the ASIDENTIFIERS_NEW(3) page from the Library Functions Manual β yes, the manual name is literally right there in the header, weβre being cute about it. this is all about RFC 3779 autonomous system identifier delegation extensions, and itβs lowkey iconic. π¦
πΈ NAME πΈ
ASIdentifiers_new, ASIdentifiers_free, d2i_ASIdentifiers, i2d_ASIdentifiers β RFC 3779 autonomous system identifier delegation extensions.
β¨ SYNOPSIS β¨
link against library βlibcryptoβ and pull in this include, fr fr:
#include <openssl/x509v3.h>
then the function signatures are exactly:
ASIdentifiers *
ASIdentifiers_new(void);
void
ASIdentifiers_free(ASIdentifiers *asid);
ASIdentifiers *
d2i_ASIdentifiers(ASIdentifiers **asid, const unsigned char **in,
long len);
int
i2d_ASIdentifiers(ASIdentifiers *asid, unsigned char **out);
π DESCRIPTION π
so RFC 3779 defines two X.509v3 certificate extensions that allow the delegation of IP addresses and autonomous system (AS) identifiers from the issuer to the subject of the certificate. your ASIdentifiers object contains collections of individual AS numbers and ranges of AS numbers to be delegated. periodt. π
ASIdentifiers_new()β allocates and initializes a new, emptyASIdentifiersobject that can be populated withX509v3_asid_add_id_or_range(3). seeASRange_new(3)for implementation details.ASIdentifiers_free()β freesasidincluding any data contained in it. ifasidisNULL, no action occurs. no drama. β¨d2i_ASIdentifiers()andi2d_ASIdentifiers()β decode and encode ASN.1ASIdentifiersobjects as defined in RFC 3779, section 3.2.3.1. for details about the semantics, examples, caveats, and bugs, seeASN1_item_d2i(3).
β οΈ in order for the encoding produced byi2d_ASIdentifiers()to conform to RFC 3779,asidmust be in βcanonical formβ, seeX509v3_asid_canonize(3). donβt skip that bestie, itβs giving compliance. π
π RETURN VALUES π
ASIdentifiers_new()β returns a newASIdentifiersobject orNULLif an error occurs.d2i_ASIdentifiers()β returns anASIdentifiersobject orNULLif a decoding or memory allocation error occurs.i2d_ASIdentifiers()β returns the number of bytes successfully encoded or a value<= 0if an error occurs.
π₯ SEE ALSO π₯
ASRange_new(3)crypto(3)IPAddressRange_new(3)X509_new(3)X509v3_addr_add_inherit(3)X509v3_addr_get_range(3)X509v3_addr_inherits(3)X509v3_addr_subset(3)X509v3_addr_validate_path(3)X509v3_asid_add_id_or_range(3)
π STANDARDS π
- RFC 3779: X.509 Extensions for IP Addresses and AS Identifiers:
- section 3: Autonomous System Identifier Delegation Extension
- RFC 7020: The Internet Numbers Registry System
- RFC 7249: Internet Numbers Registries
π HISTORY π
these functions first appeared in OpenSSL 0.9.8e and have been available since OpenBSD 7.1. literal legends. π
π BUGS π
there are no corresponding functions for the RFC 3779 IP address delegation extension represented by IPAddrBlocks. yeah, thatβs the whole bug note. we respect the honesty. π
xoxo π β sourced from Debian, dated June 8, 2025, and filed under ASIDENTIFIERS_NEW(3). mwah! π
π¦ where this page comes from
- alpine 3.24: libressl-doc 4.3.1-r0 Β· custom
- arch rolling: libressl 4.4.0-1 Β· ISC AND custom:OpenSSL
- Copyright (c) 2023 Theo Buehler <tb@openbsd.org>
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms