1e71b7053SJung-uk Kim=pod 2e71b7053SJung-uk Kim 3e71b7053SJung-uk Kim=head1 NAME 4e71b7053SJung-uk Kim 5e71b7053SJung-uk KimX509_get_serialNumber, 6e71b7053SJung-uk KimX509_get0_serialNumber, 7e71b7053SJung-uk KimX509_set_serialNumber 8e71b7053SJung-uk Kim- get or set certificate serial number 9e71b7053SJung-uk Kim 10e71b7053SJung-uk Kim=head1 SYNOPSIS 11e71b7053SJung-uk Kim 12e71b7053SJung-uk Kim #include <openssl/x509.h> 13e71b7053SJung-uk Kim 14e71b7053SJung-uk Kim ASN1_INTEGER *X509_get_serialNumber(X509 *x); 15e71b7053SJung-uk Kim const ASN1_INTEGER *X509_get0_serialNumber(const X509 *x); 16e71b7053SJung-uk Kim int X509_set_serialNumber(X509 *x, ASN1_INTEGER *serial); 17e71b7053SJung-uk Kim 18e71b7053SJung-uk Kim=head1 DESCRIPTION 19e71b7053SJung-uk Kim 20e71b7053SJung-uk KimX509_get_serialNumber() returns the serial number of certificate B<x> as an 21e71b7053SJung-uk KimB<ASN1_INTEGER> structure which can be examined or initialised. The value 22e71b7053SJung-uk Kimreturned is an internal pointer which B<MUST NOT> be freed up after the call. 23e71b7053SJung-uk Kim 24e71b7053SJung-uk KimX509_get0_serialNumber() is the same as X509_get_serialNumber() except it 25e71b7053SJung-uk Kimaccepts a const parameter and returns a const result. 26e71b7053SJung-uk Kim 27e71b7053SJung-uk KimX509_set_serialNumber() sets the serial number of certificate B<x> to 28e71b7053SJung-uk KimB<serial>. A copy of the serial number is used internally so B<serial> should 29e71b7053SJung-uk Kimbe freed up after use. 30e71b7053SJung-uk Kim 31e71b7053SJung-uk Kim=head1 RETURN VALUES 32e71b7053SJung-uk Kim 33e71b7053SJung-uk KimX509_get_serialNumber() and X509_get0_serialNumber() return an B<ASN1_INTEGER> 34e71b7053SJung-uk Kimstructure. 35e71b7053SJung-uk Kim 36e71b7053SJung-uk KimX509_set_serialNumber() returns 1 for success and 0 for failure. 37e71b7053SJung-uk Kim 38e71b7053SJung-uk Kim=head1 SEE ALSO 39e71b7053SJung-uk Kim 40e71b7053SJung-uk KimL<d2i_X509(3)>, 41e71b7053SJung-uk KimL<ERR_get_error(3)>, 42e71b7053SJung-uk KimL<X509_CRL_get0_by_serial(3)>, 43e71b7053SJung-uk KimL<X509_get0_signature(3)>, 44e71b7053SJung-uk KimL<X509_get_ext_d2i(3)>, 45e71b7053SJung-uk KimL<X509_get_extension_flags(3)>, 46e71b7053SJung-uk KimL<X509_get_pubkey(3)>, 47e71b7053SJung-uk KimL<X509_get_subject_name(3)>, 48e71b7053SJung-uk KimL<X509_NAME_add_entry_by_txt(3)>, 49e71b7053SJung-uk KimL<X509_NAME_ENTRY_get_object(3)>, 50e71b7053SJung-uk KimL<X509_NAME_get_index_by_NID(3)>, 51e71b7053SJung-uk KimL<X509_NAME_print_ex(3)>, 52e71b7053SJung-uk KimL<X509_new(3)>, 53e71b7053SJung-uk KimL<X509_sign(3)>, 54e71b7053SJung-uk KimL<X509V3_get_d2i(3)>, 55e71b7053SJung-uk KimL<X509_verify_cert(3)> 56e71b7053SJung-uk Kim 57e71b7053SJung-uk Kim=head1 HISTORY 58e71b7053SJung-uk Kim 596935a639SJung-uk KimThe X509_get_serialNumber() and X509_set_serialNumber() functions are 606935a639SJung-uk Kimavailable in all versions of OpenSSL. 616935a639SJung-uk KimThe X509_get0_serialNumber() function was added in OpenSSL 1.1.0. 62e71b7053SJung-uk Kim 63e71b7053SJung-uk Kim=head1 COPYRIGHT 64e71b7053SJung-uk Kim 65e71b7053SJung-uk KimCopyright 2016 The OpenSSL Project Authors. All Rights Reserved. 66e71b7053SJung-uk Kim 67*b077aed3SPierre ProncheryLicensed under the Apache License 2.0 (the "License"). You may not use 68e71b7053SJung-uk Kimthis file except in compliance with the License. You can obtain a copy 69e71b7053SJung-uk Kimin the file LICENSE in the source distribution or at 70e71b7053SJung-uk KimL<https://www.openssl.org/source/license.html>. 71e71b7053SJung-uk Kim 72e71b7053SJung-uk Kim=cut 73