Add X509_NAME_hash_ex() to be able to check if it failed due to unsupported SHA1
[openssl.git] / doc / man3 / PEM_X509_INFO_read_bio_ex.pod
1 =pod
2
3 =head1 NAME
4
5 PEM_X509_INFO_read_bio_ex, PEM_X509_INFO_read_ex
6 - read a PEM-encoded data structure from a bio into one or more B<X509_INFO>
7 object's
8
9 =head1 SYNOPSIS
10
11  #include <openssl/pem.h>
12
13  STACK_OF(X509_INFO) *PEM_X509_INFO_read_ex(FILE *fp, STACK_OF(X509_INFO) *sk,
14                                             pem_password_cb *cb, void *u,
15                                             OSSL_LIB_CTX *libctx,
16                                             const char *propq);
17
18  STACK_OF(X509_INFO) *PEM_X509_INFO_read_bio_ex(BIO *bio,
19                                                 STACK_OF(X509_INFO) *sk,
20                                                 pem_password_cb *cb, void *u,
21                                                 OSSL_LIB_CTX *libctx,
22                                                 const char *propq);
23
24 =head1 DESCRIPTION
25
26 The loaded B<X509_INFO> object's can contain a CRL, a certificate and a
27 corresponding private key.
28
29 PEM_X509_INFO_read_ex() loads the B<X509_INFO> objects from a file I<fp>.
30 The library context I<libctx> and property query <propq> are used for fetching
31 algorithms from providers.
32
33 PEM_X509_INFO_read_bio_ex loads the B<X509_INFO> objects using a bio
34 I<bp>. The library context I<libctx> and property query <propq> are used for
35 fetching algorithms from providers.
36
37
38 =head1 RETURN VALUES
39
40 PEM_X509_INFO_read_ex() and PEM_X509_INFO_read_bio_ex() return
41 a stack of B<X509_INFO> objects or NULL on failure.
42
43 =head1 SEE ALSO
44
45 L<PEM_read_bio_ex(3)>,
46 L<passphrase-encoding(7)>
47
48 =head1 HISTORY
49
50 The functions PEM_X509_INFO_read_ex() and
51 PEM_X509_INFO_read_bio_ex() were added in OpenSSL 3.0.
52
53 =head1 COPYRIGHT
54
55 Copyright 2020 The OpenSSL Project Authors. All Rights Reserved.
56
57 Licensed under the Apache License 2.0 (the "License").  You may not use
58 this file except in compliance with the License.  You can obtain a copy
59 in the file LICENSE in the source distribution or at
60 L<https://www.openssl.org/source/license.html>.
61
62 =cut