---
name: "gnutls_pkcs12_mac_info"
section: "3"
platform: "linux"
package: "gnutls"
version: "3.8.13-3"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/gnutls_pkcs12_mac_info"
---

# gnutls\_pkcs12\_mac\_info(3)

API function

## NAME

gnutls\_pkcs12\_mac\_info - API function

## SYNOPSIS

**#include \<gnutls/pkcs12.h\>**

**int gnutls\_pkcs12\_mac\_info(gnutls\_pkcs12\_t** *pkcs12***, unsigned int \*** *mac***, void \*** *salt***, unsigned int \*** *salt\_size***, unsigned int \*** *iter\_count***, char \*\*** *oid***);**

## ARGUMENTS

- gnutls\_pkcs12\_t pkcs12

  A pkcs12 type

- unsigned int \* mac

  the MAC algorithm used as **gnutls\_mac\_algorithm\_t**

- void \* salt

  the salt used for string to key (if non-NULL then  *salt\_size* initially holds its size)

- unsigned int \* salt\_size

  string to key salt size

- unsigned int \* iter\_count

  string to key iteration count

- char \*\* oid

  if non-NULL it will contain an allocated null-terminated variable with the OID

## DESCRIPTION

This function will provide information on the MAC algorithm used in a PKCS **12** structure. If the structure algorithms are unknown the code **GNUTLS\_E\_UNKNOWN\_HASH\_ALGORITHM** will be returned, and only  *oid* , will be set. That is,  *oid* will be set on structures with a MAC whether supported or not. It must be deinitialized using **gnutls\_free()**. The other variables are only set on supported structures.

## RETURNS

**GNUTLS\_E\_INVALID\_REQUEST** if the provided structure doesn't contain a MAC, **GNUTLS\_E\_UNKNOWN\_HASH\_ALGORITHM** if the structure's MAC isn't supported, or another negative error code in case of a failure. Zero on success.

## REPORTING BUGS

Report bugs to \<bugs@gnutls.org\>.\
 Home page: https://www.gnutls.org

## COPYRIGHT

Copyright © 2001-2023 Free Software Foundation, Inc., and others.\
 Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.

## SEE ALSO

The full documentation for **gnutls** is maintained as a Texinfo manual. If the /usr/share/doc/gnutls/ directory does not contain the HTML form visit

- https://www.gnutls.org/manual/
