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