Section: gnutls (3)
gnutls_server_name_get - API function
int gnutls_server_name_get(gnutls_session_t session, void * data, size_t * data_length, unsigned int * type, unsigned int indx);
- gnutls_session_t session
is a gnutls_session_t type.
- void * data
will hold the data
- size_t * data_length
will hold the data length. Must hold the maximum size of data.
- unsigned int * type
will hold the server name indicator type
- unsigned int indx
is the index of the server_name
This function will allow you to get the name indication (if any), a
client has sent. The name indication may be any of the enumeration
If type is GNUTLS_NAME_DNS, then this function is to be used by
servers that support virtual hosting, and the data will be a null
terminated IDNA ACE string (prior to GnuTLS 3.4.0 it was a UTF-8 string).
If data has not enough size to hold the server name
GNUTLS_E_SHORT_MEMORY_BUFFER is returned, and data_length will
hold the required size.
indx is used to retrieve more than one server names (if sent by
the client). The first server name has an index of 0, the second 1
and so on. If no name with the given index exists
GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE is returned.
On success, GNUTLS_E_SUCCESS
(0) is returned, on UTF-8
decoding error GNUTLS_E_IDNA_ERROR
is returned, otherwise a negative
error code is returned.
Report bugs to <email@example.com
Home page: https://www.gnutls.org
Copyright © 2001- 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.
The full documentation for
is maintained as a Texinfo manual.
If the /usr/share/doc/gnutls/
directory does not contain the HTML form visit