Sortix
Sortix Download Manual Development Source Code News Blog More
current nightly

Sortix nightly manual

This manual documents Sortix nightly, a development build that has not been officially released. You can instead view this document in the latest official manual.

NAME

X509_REQ_add_extensions, X509_REQ_add_extensions_nid, X509_REQ_get_extensions, X509_REQ_extension_nid — extensions in certification requests

SYNOPSIS

#include <openssl/x509.h>
int
X509_REQ_add_extensions(X509_REQ *req, STACK_OF(X509_EXTENSION) *extensions);
int
X509_REQ_add_extensions_nid(X509_REQ *req, STACK_OF(X509_EXTENSION) *extensions, int nid);
STACK_OF(X509_EXTENSION) *
X509_REQ_get_extensions(X509_REQ *req);
int
X509_REQ_extension_nid(int nid);

DESCRIPTION

X509_REQ_add_extensions() encodes the array of extensions using i2d_X509_EXTENSIONS(3) and adds a new X.501 Attribute object of the type NID_ext_req to req using the equivalent of X509_ATTRIBUTE_create_by_NID(3) with a type of V_ASN1_SEQUENCE.
X509_REQ_add_extensions_nid() is identical except that the specified nid is used as the X.501 Attribute type instead of NID_ext_req.
X509_REQ_get_extensions() retrieves the first value of the first X.501 Attribute of appropriate type. By default, the attribute types NID_ext_req and NID_ms_ext_req are considered appropriate.
X509_REQ_extension_nid() checks whether X509_REQ_get_extensions() regards the nid argument as a type appropriate for storing extensions.

RETURN VALUES

X509_REQ_add_extensions() and X509_REQ_add_extensions_nid() returns 1 for success or 0 for failure.
X509_REQ_get_extensions() returns a newly allocated array of ASN.1 Extension objects or NULL if req is NULL, does not contain CertificationRequestInfo, contains no attribute of an appropriate type, or if decoding or memory allocation fails.
X509_REQ_extension_nid() returns 1 if nid is considered appropriate or 0 otherwise.

SEE ALSO

d2i_X509_EXTENSION(3), STACK_OF(3), X509_EXTENSION_new(3), X509_REQ_new(3), X509V3_extensions_print(3)

HISTORY

These functions first appeared in OpenSSL 0.9.5 and have been available since OpenBSD 2.7.
Copyright 2011-2025 Jonas 'Sortie' Termansen and contributors.
Sortix's source code is free software under the ISC license.
#sortix on irc.sortix.org
@sortix_org