---
name: "gsasl_decode"
section: "3"
platform: "linux"
package: "gsasl"
version: "2.2.4-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/gsasl_decode"
---

# gsasl\_decode(3)

API function

## NAME

gsasl\_decode - API function

## SYNOPSIS

**#include \<gsasl.h\>**

**int gsasl\_decode(Gsasl\_session \*** *sctx***, const char \*** *input***, size\_t** *input\_len***, char \*\*** *output***, size\_t \*** *output\_len***);**

## ARGUMENTS

- Gsasl\_session \* sctx

  libgsasl session handle.

- const char \* input

  input byte array.

- size\_t input\_len

  size of input byte array.

- char \*\* output

  newly allocated output byte array.

- size\_t \* output\_len

  pointer to output variable with size of output byte array.

## DESCRIPTION

Decode data according to negotiated SASL mechanism.  This might mean that data is integrity or privacy protected.

The  *output* buffer is allocated by this function, and it is the responsibility of caller to deallocate it by calling gsasl\_free( *output* ).

Return value: Returns **GSASL\_OK** if encoding was successful, otherwise an error code.

## REPORTING BUGS

Report bugs to \<bug-gsasl@gnu.org\>.\
 General guidelines for reporting bugs: https://www.gnu.org/gethelp/\
 GNU SASL home page: https://www.gnu.org/software/gsasl/

## COPYRIGHT

Copyright © 2002-2026 Simon Josefsson.\
 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 **gsasl** is maintained as a Texinfo manual.  If the **info** and **gsasl** programs are properly installed at your site, the command

-

  **info gsasl**

should give you access to the complete manual. As an alternative you may obtain the manual from:

-

  **https://www.gnu.org/software/libidn/gsasl/manual/**
