gnutls_alpn_set_protocols — API function


#include <gnutls/gnutls.h>

int gnutls_alpn_set_protocols(gnutls_session_t session, const gnutls_datum_t * protocols, unsigned protocols_size, unsigned int flags);


gnutls_session_t session

is a gnutls_session_t type.

const gnutls_datum_t * protocols

is the protocol names to add.

unsigned protocols_size

the number of protocols to add.

unsigned int flags

zero or a sequence of gnutls_alpn_flags_t


This function is to be used by both clients and servers, to declare the supported ALPN protocols, which are used during negotiation with peer.

See gnutls_alpn_flags_t description for the documentation of available flags.


On success, GNUTLS_E_SUCCESS (0) is returned, otherwise a negative error code is returned.

Since 3.2.0

Reporting Bugs

Report bugs to <>.
Home page:

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


3.6.9 gnutls