---
name: "PKCS12_SAFEBAG_get0_attrs"
section: "3ssl"
platform: "linux"
package: "openssl"
version: "3.6.5-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/PKCS12_SAFEBAG_get0_attrs"
---

# PKCS12\_SAFEBAG\_get0\_attrs(3ssl)

Retrieve attributes from a PKCS#12 safeBag

## NAME

PKCS12\_SAFEBAG\_get0\_attrs, PKCS12\_get\_attr\_gen - Retrieve attributes from a PKCS#12 safeBag

## SYNOPSIS

```
 #include <openssl/pkcs12.h>
 const STACK_OF(X509_ATTRIBUTE) *PKCS12_SAFEBAG_get0_attrs(const PKCS12_SAFEBAG *bag);
 ASN1_TYPE *PKCS12_get_attr_gen(const STACK_OF(X509_ATTRIBUTE) *attrs,
                                int attr_nid);
```

## DESCRIPTION

**PKCS12\_SAFEBAG\_get0\_attrs()** retrieves the stack of **X509\_ATTRIBUTE**s from a PKCS#12 safeBag. *bag* is the **PKCS12\_SAFEBAG** to retrieve the attributes from.

**PKCS12\_get\_attr\_gen()** retrieves an attribute by NID from a stack of **X509\_ATTRIBUTE**s. *attr\_nid* is the NID of the attribute to retrieve.

## RETURN VALUES

**PKCS12\_SAFEBAG\_get0\_attrs()** returns the stack of **X509\_ATTRIBUTE**s from a PKCS#12 safeBag, which could be empty.

**PKCS12\_get\_attr\_gen()** returns an **ASN1\_TYPE** object containing the attribute, or NULL if the attribute was either not present or an error occurred.

**PKCS12\_get\_attr\_gen()** does not allocate a new attribute. The returned attribute is still owned by the **PKCS12\_SAFEBAG** in which it resides.

## SEE ALSO

**PKCS12\_get\_friendlyname**(3), **PKCS12\_add\_friendlyname\_asc**(3)

## COPYRIGHT

Copyright 2019-2020 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 \<https://www.openssl.org/source/license.html\>.
