---
name: "gnutls_hpke_export"
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_hpke_export"
---

# gnutls\_hpke\_export(3)

API function

## NAME

gnutls\_hpke\_export - API function

## SYNOPSIS

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

**int gnutls\_hpke\_export(gnutls\_hpke\_context\_t** *ctx***, const gnutls\_datum\_t \*** *exporter\_context***, size\_t** *length***, gnutls\_datum\_t \*** *secret***);**

## ARGUMENTS

- gnutls\_hpke\_context\_t ctx

  The HPKE context to use for exporting the secret.

- const gnutls\_datum\_t \* exporter\_context

  The application-specific context to be included in the export.

- size\_t length

  The requested length in bytes of the secret to be exported.

- gnutls\_datum\_t \* secret

  A pointer to a gnutls\_datum\_t structure where the exported secret will be stored.

## DESCRIPTION

This function performs the export operation of HPKE. It derives a secret of  *length* bytes from the exporter secret in the HPKE context, using the provided application-specific context and the KDF specified in the context. The resulting secret is stored in\
  *secret* . The function checks that the provided parameters are valid and that the context is properly initialized and that there is an exporter secret available in the context.

 *length* should be a positive integer that does not exceed the maximum allowed size for HPKE exports.

The function will allocate memory for  *secret* , and the caller is responsible for freeing this memory using **gnutls\_free()** when it is no longer needed.

## RETURNS

0 on success, or a negative error code on failure

## SINCE

3\.8.13

## 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/
