1=pod 2 3=head1 NAME 4 5PKCS12_SAFEBAG_get0_attr, PKCS12_SAFEBAG_get0_type, 6PKCS12_SAFEBAG_get_nid, PKCS12_SAFEBAG_get_bag_nid, 7PKCS12_SAFEBAG_get0_bag_obj, PKCS12_SAFEBAG_get0_bag_type, 8PKCS12_SAFEBAG_get1_cert, PKCS12_SAFEBAG_get1_crl, 9PKCS12_SAFEBAG_get0_safes, PKCS12_SAFEBAG_get0_p8inf, 10PKCS12_SAFEBAG_get0_pkcs8 - Get objects from a PKCS#12 safeBag 11 12=head1 SYNOPSIS 13 14 #include <openssl/pkcs12.h> 15 16 const ASN1_TYPE *PKCS12_SAFEBAG_get0_attr(const PKCS12_SAFEBAG *bag, 17 int attr_nid); 18 const ASN1_OBJECT *PKCS12_SAFEBAG_get0_type(const PKCS12_SAFEBAG *bag); 19 int PKCS12_SAFEBAG_get_nid(const PKCS12_SAFEBAG *bag); 20 int PKCS12_SAFEBAG_get_bag_nid(const PKCS12_SAFEBAG *bag); 21 const ASN1_TYPE *PKCS12_SAFEBAG_get0_bag_obj(const PKCS12_SAFEBAG *bag); 22 const ASN1_OBJECT *PKCS12_SAFEBAG_get0_bag_type(const PKCS12_SAFEBAG *bag); 23 X509 *PKCS12_SAFEBAG_get1_cert(const PKCS12_SAFEBAG *bag); 24 X509_CRL *PKCS12_SAFEBAG_get1_crl(const PKCS12_SAFEBAG *bag); 25 const STACK_OF(PKCS12_SAFEBAG) *PKCS12_SAFEBAG_get0_safes(const PKCS12_SAFEBAG *bag); 26 const PKCS8_PRIV_KEY_INFO *PKCS12_SAFEBAG_get0_p8inf(const PKCS12_SAFEBAG *bag); 27 const X509_SIG *PKCS12_SAFEBAG_get0_pkcs8(const PKCS12_SAFEBAG *bag); 28 29=head1 DESCRIPTION 30 31PKCS12_SAFEBAG_get0_attr() gets the attribute value corresponding to the B<attr_nid>. 32 33PKCS12_SAFEBAG_get0_type() gets the B<safeBag> type as an OID, whereas 34PKCS12_SAFEBAG_get_nid() gets the B<safeBag> type as an NID, which could be 35B<NID_certBag>, B<NID_crlBag>, B<NID_keyBag>, B<NID_secretBag>, B<NID_safeContentsBag> 36or B<NID_pkcs8ShroudedKeyBag>. 37 38PKCS12_SAFEBAG_get_bag_nid() gets the type of the object contained within the 39B<PKCS12_SAFEBAG>. This corresponds to the bag type for most bags, but can be 40arbitrary for B<secretBag>s. PKCS12_SAFEBAG_get0_bag_type() gets this type as an OID. 41 42PKCS12_SAFEBAG_get0_bag_obj() retrieves the object contained within the safeBag. 43 44PKCS12_SAFEBAG_get1_cert() and PKCS12_SAFEBAG_get1_crl() return new B<X509> or 45B<X509_CRL> objects from the item in the safeBag. 46 47PKCS12_SAFEBAG_get0_p8inf() and PKCS12_SAFEBAG_get0_pkcs8() return the PKCS8 object 48from a PKCS8shroudedKeyBag or a keyBag. 49 50PKCS12_SAFEBAG_get0_safes() retrieves the set of B<safeBags> contained within a 51safeContentsBag. 52 53=head1 RETURN VALUES 54 55PKCS12_SAFEBAG_get_nid() and PKCS12_SAFEBAG_get_bag_nid() return the NID of the safeBag 56or bag object, or -1 if there is no corresponding NID. 57Other functions return a valid object of the specified type or NULL if an error occurred. 58 59=head1 SEE ALSO 60 61L<PKCS12_create(3)>, 62L<PKCS12_add_safe(3)>, 63L<PKCS12_add_safes(3)> 64 65=head1 COPYRIGHT 66 67Copyright 2019-2021 The OpenSSL Project Authors. All Rights Reserved. 68 69Licensed under the Apache License 2.0 (the "License"). You may not use 70this file except in compliance with the License. You can obtain a copy 71in the file LICENSE in the source distribution or at 72L<https://www.openssl.org/source/license.html>. 73 74=cut 75