---
name: "gnutls_alpn_get_selected_protocol"
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_alpn_get_selected_protocol"
---

# gnutls\_alpn\_get\_selected\_protocol(3)

API function

## NAME

gnutls\_alpn\_get\_selected\_protocol - API function

## SYNOPSIS

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

**int gnutls\_alpn\_get\_selected\_protocol(gnutls\_session\_t** *session***, gnutls\_datum\_t \*** *protocol***);**

## ARGUMENTS

- gnutls\_session\_t session

  is a **gnutls\_session\_t** type.

- gnutls\_datum\_t \* protocol

  will hold the protocol name

## DESCRIPTION

This function allows you to get the negotiated protocol name. The returned protocol should be treated as opaque, constant value and only valid during the session life.

The selected protocol is the first supported by the list sent by the client.

## RETURNS

On success, **GNUTLS\_E\_SUCCESS** (0) is returned, otherwise a negative error code is returned.

Since 3.2.0

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