OpenBSD manual page server

Manual Page Search Parameters

X509_GET0_SIGNATURE(3) Library Functions Manual X509_GET0_SIGNATURE(3)

X509_get0_signature, X509_REQ_get0_signature, X509_CRL_get0_signature, X509_get0_tbs_sigalg, X509_get_signature_nid, X509_REQ_get_signature_nid, X509_CRL_get_signature_nid
signature information

#include <openssl/x509.h>

void
X509_get0_signature(const ASN1_BIT_STRING **psig, const X509_ALGOR **palg, const X509 *x);

void
X509_REQ_get0_signature(const X509_REQ *req, const ASN1_BIT_STRING **psig, const X509_ALGOR **palg);

void
X509_CRL_get0_signature(const X509_CRL *crl, const ASN1_BIT_STRING **psig, const X509_ALGOR **palg);

const X509_ALGOR *
X509_get0_tbs_sigalg(const X509 *x);

int
X509_get_signature_nid(const X509 *x);

int
X509_REQ_get_signature_nid(const X509_REQ *req);

int
X509_CRL_get_signature_nid(const X509_CRL *crl);

X509_get0_signature(), X509_REQ_get0_signature(), and X509_CRL_get0_signature() set *psig to the signature and *palg to the signature algorithm of x, req, or crl, respectively. X509_get0_tbs_sigalg() returns the signature algorithm in the signed portion of x. The values returned are internal pointers that must not be freed by the caller.

X509_get_signature_nid(), X509_REQ_get_signature_nid(), and X509_CRL_get_signature_nid() return the NID corresponding to the signature algorithm of x, req, or crl, respectively.

These functions provide lower level access to the signature for cases where an application wishes to analyse or generate a signature in a form where X509_sign(3) is not appropriate, for example in a non-standard or unsupported format.

OBJ_obj2nid(3), X509_ALGOR_new(3), X509_CRL_get0_by_serial(3), X509_CRL_new(3), X509_get_pubkey(3), X509_get_subject_name(3), X509_get_version(3), X509_new(3), X509_REQ_new(3), X509_sign(3), X509_verify_cert(3)

X509_get0_signature() and X509_get_signature_nid() first appeared in OpenSSL 1.0.2. X509_REQ_get0_signature(), X509_CRL_get0_signature(), X509_get0_tbs_sigalg(), X509_REQ_get_signature_nid(), and X509_CRL_get_signature_nid() first appeared in OpenSSL 1.1.0. All these functions have been available since OpenBSD 6.3.
March 23, 2018 OpenBSD-current