ccd6c9b0f2ab188fa9c11a25dac90844890d50d9
[openssl.git] / doc / crypto / X509_check_ca.pod
1 =pod
2
3 =head1 NAME
4
5 X509_check_ca - check if given certificate is CA certificate
6
7 =head1 SYNOPSIS
8
9    #include <openssl/x509v3.h>
10
11    int X509_check_ca(X509 *cert);
12
13 =head1 DESCRIPTION
14
15 This function checks if given certificate is CA certificate (can be used
16 to sign other certificates).
17
18 =head1 RETURN VALUE
19
20 Function return 0, if it is not CA certificate, 1 if it is proper X509v3
21 CA certificate with B<basicConstraints> extension CA:TRUE,
22 3, if it is selfsigned X509 v1 certificate, 4, if it is certificate with
23 B<keyUsage> extension with bit B<keyCertSign> set, but without
24 B<basicConstraints>, and 5 if it has outdated Netscape Certificate Type
25 extension telling that it is CA certificate.
26
27 Actually, any non-zero value means that this certificate could have been
28 used to sign other certificates.
29
30 =head1 SEE ALSO
31
32 L<X509_verify_cert(3)>,
33 L<X509_check_issued(3)>,
34 L<X509_check_purpose(3)>
35
36 =cut
37
38 =head1 COPYRIGHT
39
40 Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved.
41
42 Licensed under the OpenSSL license (the "License").  You may not use
43 this file except in compliance with the License.  You can obtain a copy
44 in the file LICENSE in the source distribution or at
45 L<https://www.openssl.org/source/license.html>.
46
47 =cut