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 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 typeis 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 datahas not enough size to hold the server name GNUTLS_E_SHORT_MEMORY_BUFFER is returned, and data_lengthwill hold the required size.

indexis 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, otherwise a negative error code is returned.

REPORTING BUGS

Report bugs to <bug-gnutls@gnu.org>. 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 © 2012 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.