X509_GET_SERIALNUMBER(3)

NAME
X509_get_serialNumber, X509_get0_serialNumber, X509_set_serialNumber - get or set certificate serial number

SYNOPSIS
libcrypto
#include <openssl/x509.h>
ASN1_INTEGER *
X509_get_serialNumber(X509 *x);
const ASN1_INTEGER *
X509_get0_serialNumber(const X509 *x);
int
X509_set_serialNumber(X509 *x, ASN1_INTEGER *serial);

DESCRIPTION
X509_get_serialNumber() returns the serial number of certificate x as an ASN1_INTEGER structure which can be examined or initialised. The value returned is an internal pointer which must not be freed up after the call.

X509_get0_serialNumber() does the same except that it accepts a constant argument and returns a constant result.

X509_set_serialNumber() sets the serial number of certificate x to serial. A copy of the serial number is used internally so serial should be freed up after use.

RETURN VALUES
X509_get_serialNumber() and X509_get0_serialNumber() return a pointer to an ASN1_INTEGER structure.

X509_set_serialNumber() returns 1 for success or 0 for failure. In some cases of failure, the reason can be determined with ERR_get_error(3).

SEE ALSO
d2i_X509(3), X509_CRL_get0_by_serial(3), X509_get_pubkey(3), X509_NAME_add_entry_by_txt(3), X509_NAME_ENTRY_get_object(3), X509_NAME_get_index_by_NID(3), X509_NAME_print_ex(3), X509_new(3), X509_sign(3), X509_verify_cert(3), X509V3_get_d2i(3)

HISTORY
X509_get_serialNumber() and X509_set_serialNumber() first appeared in SSLeay 0.6.5 and have been available since OpenBSD 2.4.

X509_get0_serialNumber() first appeared in OpenSSL 1.1.0 and has been available since OpenBSD 6.4.