Provided by: gnutls-doc_3.6.9-5ubuntu1_all bug

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