Name

gnutls_server_name_get — Used to get the server name indicator send by a client

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 structure.

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 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.

index 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 (zero) is returned, otherwise an error code is returned.

REPORTING BUGS

Report bugs to <[email protected]>. GnuTLS home page: http://www.gnu.org/software/gnutls/ General help using GNU software: http://www.gnu.org/gethelp/

SEE ALSO

The full documentation for gnutls is maintained as a Texinfo manual. If the info and gnutls programs are properly installed at your site, the command

info gnutls

should give you access to the complete manual.

COPYRIGHT

Copyright © 2008 Free Software Foundation.

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.