mirror of https://github.com/openssl/openssl.git
				
				
				
			
		
			
				
	
	
		
			72 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			72 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
=pod
 | 
						|
 | 
						|
=head1 NAME
 | 
						|
 | 
						|
X509_load_http,
 | 
						|
X509_http_nbio,
 | 
						|
X509_CRL_load_http,
 | 
						|
X509_CRL_http_nbio
 | 
						|
- certificate and CRL loading functions
 | 
						|
 | 
						|
=head1 SYNOPSIS
 | 
						|
 | 
						|
 #include <openssl/x509.h>
 | 
						|
 | 
						|
 X509 *X509_load_http(const char *url, BIO *bio, BIO *rbio, int timeout);
 | 
						|
 X509_CRL *X509_CRL_load_http(const char *url, BIO *bio, BIO *rbio, int timeout);
 | 
						|
 | 
						|
The following macros have been deprecated since OpenSSL 3.0, and can be
 | 
						|
hidden entirely by defining B<OPENSSL_API_COMPAT> with a suitable version value,
 | 
						|
see L<openssl_user_macros(7)>:
 | 
						|
 | 
						|
 #define X509_http_nbio(rctx, pcert)
 | 
						|
 #define X509_CRL_http_nbio(rctx, pcrl)
 | 
						|
 | 
						|
=head1 DESCRIPTION
 | 
						|
 | 
						|
X509_load_http() and X509_CRL_load_http() loads a certificate or a CRL,
 | 
						|
respectively, in ASN.1 format using HTTP from the given B<url>.
 | 
						|
 | 
						|
Maximum size of the HTTP response is 100 kB for certificates and 32 MB for CRLs
 | 
						|
and hard coded in the functions.
 | 
						|
 | 
						|
If B<bio> is given and B<rbio> is NULL then this BIO is used instead of an
 | 
						|
internal one for connecting, writing the request, and reading the response.
 | 
						|
If both B<bio> and B<rbio> are given (which may be memory BIOs, for instance)
 | 
						|
then no explicit connection is attempted,
 | 
						|
B<bio> is used for writing the request, and B<rbio> for reading the response.
 | 
						|
 | 
						|
If the B<timeout> parameter is > 0 this indicates the maximum number of seconds
 | 
						|
to wait until the transfer is complete.
 | 
						|
A value of 0 enables waiting indefinitely,
 | 
						|
while a value < 0 immediately leads to a timeout condition.
 | 
						|
 | 
						|
X509_http_nbio() and X509_CRL_http_nbio() are macros for backward compatibility
 | 
						|
that have the same effect as the functions above but with infinite timeout
 | 
						|
and without the possibility to specify custom BIOs.
 | 
						|
 | 
						|
=head1 RETURN VALUES
 | 
						|
 | 
						|
On success the function yield the loaded value, else NULL.
 | 
						|
Error conditions include connection/transfer timeout, parse errors, etc.
 | 
						|
 | 
						|
=head1 SEE ALSO
 | 
						|
 | 
						|
L<OSSL_HTTP_get(3)>
 | 
						|
 | 
						|
=head1 HISTORY
 | 
						|
 | 
						|
X509_load_http() and X509_CRL_load_http() were added in OpenSSL 3.0.
 | 
						|
X509_http_nbio() and X509_CRL_http_nbio() were deprecated in OpenSSL 3.0.
 | 
						|
 | 
						|
=head1 COPYRIGHT
 | 
						|
 | 
						|
Copyright 2019-2021 The OpenSSL Project Authors. All Rights Reserved.
 | 
						|
 | 
						|
Licensed under the Apache License 2.0 (the "License").  You may not use
 | 
						|
this file except in compliance with the License.  You can obtain a copy
 | 
						|
in the file LICENSE in the source distribution or at
 | 
						|
L<https://www.openssl.org/source/license.html>.
 | 
						|
 | 
						|
=cut
 |