---
name: "gnutls_pem_base64_encode"
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_pem_base64_encode"
---

# gnutls\_pem\_base64\_encode(3)

API function

## NAME

gnutls\_pem\_base64\_encode - API function

## SYNOPSIS

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

**int gnutls\_pem\_base64\_encode(const char \*** *msg***, const gnutls\_datum\_t \*** *data***, char \*** *result***, size\_t \*** *result\_size***);**

## ARGUMENTS

- const char \* msg

  is a message to be put in the header (may be **NULL**)

- const gnutls\_datum\_t \* data

  contain the raw data

- char \* result

  the place where base64 data will be copied

- size\_t \* result\_size

  holds the size of the result

## DESCRIPTION

This function will convert the given data to printable data, using the base64 encoding. This is the encoding used in PEM messages.

The output string will be null terminated, although the output size will not include the terminating null.

## RETURNS

On success **GNUTLS\_E\_SUCCESS** (0) is returned, **GNUTLS\_E\_SHORT\_MEMORY\_BUFFER** is returned if the buffer given is not long enough, or 0 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/
