---
name: "gnutls_server_name_get"
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_server_name_get"
---

# gnutls\_server\_name\_get(3)

API function

## NAME

gnutls\_server\_name\_get - API function

## SYNOPSIS

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

**int gnutls\_server\_name\_get(gnutls\_session\_t** *session***, void \*** *data***, size\_t \*** *data\_length***, unsigned int \*** *type***, unsigned int** *indx***);**

## ARGUMENTS

- 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

## DESCRIPTION

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 gnutls\_server\_name\_type\_t.

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.

## RETURNS

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.

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