]>
Commit | Line | Data |
---|---|---|
29f178bd DDO |
1 | =pod |
2 | ||
3 | =head1 NAME | |
4 | ||
5 | X509_load_http, | |
6 | X509_http_nbio, | |
7 | X509_CRL_load_http, | |
8 | X509_CRL_http_nbio | |
9 | - certificate and CRL loading functions | |
10 | ||
11 | =head1 SYNOPSIS | |
12 | ||
13 | #include <openssl/x509.h> | |
14 | ||
15 | X509 *X509_load_http(const char *url, BIO *bio, BIO *rbio, int timeout); | |
16 | X509_CRL *X509_CRL_load_http(const char *url, BIO *bio, BIO *rbio, int timeout); | |
17 | ||
8e716147 DDO |
18 | #define X509_http_nbio(rctx, pcert) |
19 | #define X509_CRL_http_nbio(rctx, pcrl) | |
29f178bd DDO |
20 | |
21 | =head1 DESCRIPTION | |
22 | ||
23 | X509_load_http() and X509_CRL_load_http() loads a certificate or a CRL, | |
24 | respectively, in ASN.1 format using HTTP from the given B<url>. | |
25 | ||
26 | If B<bio> is given and B<rbio> is NULL then this BIO is used instead of an | |
af0d4136 | 27 | internal one for connecting, writing the request, and reading the response. |
29f178bd DDO |
28 | If both B<bio> and B<rbio> are given (which may be memory BIOs, for instance) |
29 | then no explicit connection is attempted, | |
30 | B<bio> is used for writing the request, and B<rbio> for reading the response. | |
31 | ||
32 | If the B<timeout> parameter is > 0 this indicates the maximum number of seconds | |
33 | to wait until the transfer is complete. | |
34 | A value of 0 enables waiting indefinitely, | |
35 | while a value < 0 immediately leads to a timeout condition. | |
36 | ||
37 | X509_http_nbio() and X509_CRL_http_nbio() are macros for backward compatibility | |
38 | that have the same effect as the functions above but with infinite timeout | |
af0d4136 | 39 | and without the possibility to specify custom BIOs. |
29f178bd DDO |
40 | |
41 | =head1 RETURN VALUES | |
42 | ||
43 | On success the function yield the loaded value, else NULL. | |
44 | Error conditions include connection/transfer timeout, parse errors, etc. | |
45 | ||
46 | =head1 SEE ALSO | |
47 | ||
48 | L<OSSL_HTTP_get_asn1(3)> | |
49 | ||
50 | =head1 HISTORY | |
51 | ||
52 | X509_load_http() and X509_CRL_load_http() were added in OpenSSL 3.0. | |
53 | ||
54 | =head1 COPYRIGHT | |
55 | ||
a28d06f3 | 56 | Copyright 2019-2021 The OpenSSL Project Authors. All Rights Reserved. |
29f178bd DDO |
57 | |
58 | Licensed under the Apache License 2.0 (the "License"). You may not use | |
59 | this file except in compliance with the License. You can obtain a copy | |
60 | in the file LICENSE in the source distribution or at | |
61 | L<https://www.openssl.org/source/license.html>. | |
62 | ||
63 | =cut |