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.