gnutls.h File Reference

#include <stddef.h>
#include "platform.h"
#include "microhttpd.h"

Include dependency graph for gnutls.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  MHD_gnutls_datum_t
struct  MHD_gnutls_params_st
union  MHD_gnutls_params_st::params
struct  MHD_gnutls_retr_st
union  MHD_gnutls_retr_st::cert
union  MHD_gnutls_retr_st::key

Defines

#define LIBGNUTLS_VERSION   "2.2.3"
#define GNUTLS_CIPHER_RIJNDAEL_128_CBC   GNUTLS_CIPHER_AES_128_CBC
#define GNUTLS_CIPHER_RIJNDAEL_256_CBC   GNUTLS_CIPHER_AES_256_CBC
#define GNUTLS_CIPHER_RIJNDAEL_CBC   GNUTLS_CIPHER_AES_128_CBC
#define GNUTLS_CIPHER_ARCFOUR   GNUTLS_CIPHER_ARCFOUR_128
#define GNUTLS_MAX_SESSION_ID   32
#define TLS_MASTER_SIZE   48
#define TLS_RANDOM_SIZE   32
#define GNUTLS_MAX_ALGORITHM_NUM   16
#define GNUTLS_COMP_ZLIB   GNUTLS_COMP_DEFLATE
#define GNUTLS_KEY_DIGITAL_SIGNATURE   128
#define GNUTLS_KEY_NON_REPUDIATION   64
#define GNUTLS_KEY_KEY_ENCIPHERMENT   32
#define GNUTLS_KEY_DATA_ENCIPHERMENT   16
#define GNUTLS_KEY_KEY_AGREEMENT   8
#define GNUTLS_KEY_KEY_CERT_SIGN   4
#define GNUTLS_KEY_CRL_SIGN   2
#define GNUTLS_KEY_ENCIPHER_ONLY   1
#define GNUTLS_KEY_DECIPHER_ONLY   32768
#define GNUTLS_E_SUCCESS   0
#define GNUTLS_E_UNKNOWN_COMPRESSION_ALGORITHM   -3
#define GNUTLS_E_UNKNOWN_CIPHER_TYPE   -6
#define GNUTLS_E_LARGE_PACKET   -7
#define GNUTLS_E_UNSUPPORTED_VERSION_PACKET   -8
#define GNUTLS_E_UNEXPECTED_PACKET_LENGTH   -9
#define GNUTLS_E_INVALID_SESSION   -10
#define GNUTLS_E_FATAL_ALERT_RECEIVED   -12
#define GNUTLS_E_UNEXPECTED_PACKET   -15
#define GNUTLS_E_WARNING_ALERT_RECEIVED   -16
#define GNUTLS_E_ERROR_IN_FINISHED_PACKET   -18
#define GNUTLS_E_UNEXPECTED_HANDSHAKE_PACKET   -19
#define GNUTLS_E_UNKNOWN_CIPHER_SUITE   -21
#define GNUTLS_E_UNWANTED_ALGORITHM   -22
#define GNUTLS_E_MPI_SCAN_FAILED   -23
#define GNUTLS_E_DECRYPTION_FAILED   -24
#define GNUTLS_E_MEMORY_ERROR   -25
#define GNUTLS_E_DECOMPRESSION_FAILED   -26
#define GNUTLS_E_COMPRESSION_FAILED   -27
#define GNUTLS_E_AGAIN   -28
#define GNUTLS_E_EXPIRED   -29
#define GNUTLS_E_DB_ERROR   -30
#define GNUTLS_E_SRP_PWD_ERROR   -31
#define GNUTLS_E_INSUFFICIENT_CREDENTIALS   -32
#define GNUTLS_E_INSUFICIENT_CREDENTIALS   GNUTLS_E_INSUFFICIENT_CREDENTIALS
#define GNUTLS_E_INSUFFICIENT_CRED   GNUTLS_E_INSUFFICIENT_CREDENTIALS
#define GNUTLS_E_INSUFICIENT_CRED   GNUTLS_E_INSUFFICIENT_CREDENTIALS
#define GNUTLS_E_HASH_FAILED   -33
#define GNUTLS_E_BASE64_DECODING_ERROR   -34
#define GNUTLS_E_MPI_PRINT_FAILED   -35
#define GNUTLS_E_REHANDSHAKE   -37
#define GNUTLS_E_GOT_APPLICATION_DATA   -38
#define GNUTLS_E_RECORD_LIMIT_REACHED   -39
#define GNUTLS_E_ENCRYPTION_FAILED   -40
#define GNUTLS_E_PK_ENCRYPTION_FAILED   -44
#define GNUTLS_E_PK_DECRYPTION_FAILED   -45
#define GNUTLS_E_PK_SIGN_FAILED   -46
#define GNUTLS_E_X509_UNSUPPORTED_CRITICAL_EXTENSION   -47
#define GNUTLS_E_KEY_USAGE_VIOLATION   -48
#define GNUTLS_E_NO_CERTIFICATE_FOUND   -49
#define GNUTLS_E_INVALID_REQUEST   -50
#define GNUTLS_E_SHORT_MEMORY_BUFFER   -51
#define GNUTLS_E_INTERRUPTED   -52
#define GNUTLS_E_PUSH_ERROR   -53
#define GNUTLS_E_PULL_ERROR   -54
#define GNUTLS_E_RECEIVED_ILLEGAL_PARAMETER   -55
#define GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE   -56
#define GNUTLS_E_PKCS1_WRONG_PAD   -57
#define GNUTLS_E_RECEIVED_ILLEGAL_EXTENSION   -58
#define GNUTLS_E_INTERNAL_ERROR   -59
#define GNUTLS_E_DH_PRIME_UNACCEPTABLE   -63
#define GNUTLS_E_FILE_ERROR   -64
#define GNUTLS_E_TOO_MANY_EMPTY_PACKETS   -78
#define GNUTLS_E_UNKNOWN_PK_ALGORITHM   -80
#define GNUTLS_E_INIT_LIBEXTRA   -82
#define GNUTLS_E_LIBRARY_VERSION_MISMATCH   -83
#define GNUTLS_E_NO_TEMPORARY_RSA_PARAMS   -84
#define GNUTLS_E_LZO_INIT_FAILED   -85
#define GNUTLS_E_NO_COMPRESSION_ALGORITHMS   -86
#define GNUTLS_E_NO_CIPHER_SUITES   -87
#define GNUTLS_E_PK_SIG_VERIFY_FAILED   -89
#define GNUTLS_E_ILLEGAL_SRP_USERNAME   -90
#define GNUTLS_E_SRP_PWD_PARSING_ERROR   -91
#define GNUTLS_E_NO_TEMPORARY_DH_PARAMS   -93
#define GNUTLS_E_ASN1_ELEMENT_NOT_FOUND   -67
#define GNUTLS_E_ASN1_IDENTIFIER_NOT_FOUND   -68
#define GNUTLS_E_ASN1_DER_ERROR   -69
#define GNUTLS_E_ASN1_VALUE_NOT_FOUND   -70
#define GNUTLS_E_ASN1_GENERIC_ERROR   -71
#define GNUTLS_E_ASN1_VALUE_NOT_VALID   -72
#define GNUTLS_E_ASN1_TAG_ERROR   -73
#define GNUTLS_E_ASN1_TAG_IMPLICIT   -74
#define GNUTLS_E_ASN1_TYPE_ANY_ERROR   -75
#define GNUTLS_E_ASN1_SYNTAX_ERROR   -76
#define GNUTLS_E_ASN1_DER_OVERFLOW   -77
#define GNUTLS_E_CERTIFICATE_ERROR   -43
#define GNUTLS_E_X509_CERTIFICATE_ERROR   GNUTLS_E_CERTIFICATE_ERROR
#define GNUTLS_E_CERTIFICATE_KEY_MISMATCH   -60
#define GNUTLS_E_UNSUPPORTED_CERTIFICATE_TYPE   -61
#define GNUTLS_E_X509_UNKNOWN_SAN   -62
#define GNUTLS_E_X509_UNSUPPORTED_ATTRIBUTE   -95
#define GNUTLS_E_UNKNOWN_HASH_ALGORITHM   -96
#define GNUTLS_E_UNKNOWN_PKCS_CONTENT_TYPE   -97
#define GNUTLS_E_UNKNOWN_PKCS_BAG_TYPE   -98
#define GNUTLS_E_INVALID_PASSWORD   -99
#define GNUTLS_E_MAC_VERIFY_FAILED   -100
#define GNUTLS_E_CONSTRAINT_ERROR   -101
#define GNUTLS_E_WARNING_IA_IPHF_RECEIVED   -102
#define GNUTLS_E_WARNING_IA_FPHF_RECEIVED   -103
#define GNUTLS_E_IA_VERIFY_FAILED   -104
#define GNUTLS_E_UNKNOWN_ALGORITHM   -105
#define GNUTLS_E_BASE64_ENCODING_ERROR   -201
#define GNUTLS_E_INCOMPATIBLE_GCRYPT_LIBRARY   -202
#define GNUTLS_E_INCOMPATIBLE_CRYPTO_LIBRARY   -202
#define GNUTLS_E_INCOMPATIBLE_LIBTASN1_LIBRARY   -203
#define GNUTLS_E_X509_UNSUPPORTED_OID   -205
#define GNUTLS_E_RANDOM_FAILED   -206
#define GNUTLS_E_BASE64_UNEXPECTED_HEADER_ERROR   -207
#define GNUTLS_E_UNIMPLEMENTED_FEATURE   -1250
#define GNUTLS_E_APPLICATION_ERROR_MAX   -65000
#define GNUTLS_E_APPLICATION_ERROR_MIN   -65500

Typedefs

typedef void * MHD_gnutls_transport_ptr_t
typedef struct
MHD_gtls_session_int
MHD_gtls_session_t
typedef struct
MHD_gtls_dh_params_int
MHD_gtls_dh_params_t
typedef struct
MHD_gtls_x509_privkey_int
MHD_gtls_rsa_params_t
typedef struct
MHD_gtls_priority_st
MHD_gnutls_priority_t
typedef int MHD_gnutls_params_function (MHD_gtls_session_t, MHD_gnutls_params_type_t, MHD_gnutls_params_st *)
typedef int(* MHD_gnutls_handshake_post_client_hello_func )(MHD_gtls_session_t)
typedef struct
MHD_gtls_certificate_credentials_st
MHD_gtls_cert_credentials_t
typedef MHD_gtls_cert_credentials_t MHD_gtls_cert_server_credentials
typedef MHD_gtls_cert_credentials_t MHD_gtls_cert_client_credentials
typedef struct
MHD_gtls_x509_privkey_int
MHD_gnutls_x509_privkey_t
typedef struct
MHD_gnutls_x509_crl_int * 
MHD_gnutls_x509_crl_t
typedef struct
MHD_gnutls_x509_crt_int
MHD_gnutls_x509_crt_t
typedef void *(* MHD_gnutls_alloc_function )(size_t)
typedef int(* MHD_gnutls_is_secure_function )(const void *)
typedef void *(* MHD_gnutls_calloc_function )(size_t, size_t)
typedef void(* MHD_gnutls_free_function )(void *)
typedef void *(* MHD_gnutls_realloc_function )(void *, size_t)
typedef void(* MHD_gnutls_log_func )(int, const char *)
typedef ssize_t(* MHD_gtls_pull_func )(MHD_gnutls_transport_ptr_t, void *, size_t)
typedef ssize_t(* MHD_gtls_push_func )(MHD_gnutls_transport_ptr_t, const void *, size_t)
typedef int MHD_gnutls_certificate_client_retrieve_function (MHD_gtls_session_t, const MHD_gnutls_datum_t *req_ca_rdn, int nreqs, const enum MHD_GNUTLS_PublicKeyAlgorithm *pk_algos, int pk_algos_length, MHD_gnutls_retr_st *)
typedef int MHD_gnutls_certificate_server_retrieve_function (MHD_gtls_session_t, MHD_gnutls_retr_st *)
typedef int(* MHD_gnutls_sign_func )(MHD_gtls_session_t session, void *userdata, enum MHD_GNUTLS_CertificateType cert_type, const MHD_gnutls_datum_t *cert, const MHD_gnutls_datum_t *hash, MHD_gnutls_datum_t *signature)

Enumerations

enum  MHD_GNUTLS_KeyExchangeAlgorithm { MHD_GNUTLS_KX_UNKNOWN = 0, MHD_GNUTLS_KX_RSA = 1 }
enum  MHD_GNUTLS_CredentialsType { MHD_GNUTLS_CRD_CERTIFICATE = 1 }
enum  MHD_GNUTLS_HashAlgorithm {
  MHD_GNUTLS_MAC_UNKNOWN = 0, MHD_GNUTLS_MAC_NULL = 1, MHD_GNUTLS_MAC_MD5, MHD_GNUTLS_MAC_SHA1,
  MHD_GNUTLS_MAC_SHA256
}
enum  MHD_GNUTLS_CompressionMethod { MHD_GNUTLS_COMP_UNKNOWN = 0, MHD_GNUTLS_COMP_NULL = 1 }
enum  MHD_GNUTLS_CertificateType { MHD_GNUTLS_CRT_UNKNOWN = 0, MHD_GNUTLS_CRT_X509 = 1 }
enum  MHD_GNUTLS_PublicKeyAlgorithm { MHD_GNUTLS_PK_UNKNOWN = 0, MHD_GNUTLS_PK_RSA = 1, MHD_GNUTLS_KX_RSA_EXPORT }
enum  MHD_gnutls_params_type_t { GNUTLS_PARAMS_RSA_EXPORT = 1, GNUTLS_PARAMS_DH }
enum  MHD_gnutls_connection_end_t { GNUTLS_SERVER = 1, GNUTLS_CLIENT }
enum  MHD_gnutls_alert_level_t { GNUTLS_AL_WARNING = 1, GNUTLS_AL_FATAL }
enum  MHD_gnutls_alert_description_t {
  GNUTLS_A_CLOSE_NOTIFY, GNUTLS_A_UNEXPECTED_MESSAGE = 10, GNUTLS_A_BAD_RECORD_MAC = 20, GNUTLS_A_DECRYPTION_FAILED,
  GNUTLS_A_RECORD_OVERFLOW, GNUTLS_A_DECOMPRESSION_FAILURE = 30, GNUTLS_A_HANDSHAKE_FAILURE = 40, GNUTLS_A_SSL3_NO_CERTIFICATE = 41,
  GNUTLS_A_BAD_CERTIFICATE = 42, GNUTLS_A_UNSUPPORTED_CERTIFICATE, GNUTLS_A_CERTIFICATE_REVOKED, GNUTLS_A_CERTIFICATE_EXPIRED,
  GNUTLS_A_CERTIFICATE_UNKNOWN, GNUTLS_A_ILLEGAL_PARAMETER, GNUTLS_A_UNKNOWN_CA, GNUTLS_A_ACCESS_DENIED,
  GNUTLS_A_DECODE_ERROR = 50, GNUTLS_A_DECRYPT_ERROR, GNUTLS_A_EXPORT_RESTRICTION = 60, GNUTLS_A_PROTOCOL_VERSION = 70,
  GNUTLS_A_INSUFFICIENT_SECURITY, GNUTLS_A_INTERNAL_ERROR = 80, GNUTLS_A_USER_CANCELED = 90, GNUTLS_A_NO_RENEGOTIATION = 100,
  GNUTLS_A_UNSUPPORTED_EXTENSION = 110, GNUTLS_A_CERTIFICATE_UNOBTAINABLE = 111, GNUTLS_A_UNRECOGNIZED_NAME = 112, GNUTLS_A_UNKNOWN_PSK_IDENTITY = 115
}
enum  MHD_gnutls_handshake_description_t {
  GNUTLS_HANDSHAKE_HELLO_REQUEST = 0, GNUTLS_HANDSHAKE_CLIENT_HELLO = 1, GNUTLS_HANDSHAKE_SERVER_HELLO = 2, GNUTLS_HANDSHAKE_CERTIFICATE_PKT = 11,
  GNUTLS_HANDSHAKE_SERVER_KEY_EXCHANGE = 12, GNUTLS_HANDSHAKE_CERTIFICATE_REQUEST = 13, GNUTLS_HANDSHAKE_SERVER_HELLO_DONE = 14, GNUTLS_HANDSHAKE_CERTIFICATE_VERIFY = 15,
  GNUTLS_HANDSHAKE_CLIENT_KEY_EXCHANGE = 16, GNUTLS_HANDSHAKE_FINISHED = 20, GNUTLS_HANDSHAKE_SUPPLEMENTAL = 23
}
enum  MHD_gnutls_certificate_status_t {
  GNUTLS_CERT_INVALID = 2, GNUTLS_CERT_REVOKED = 32, GNUTLS_CERT_SIGNER_NOT_FOUND = 64, GNUTLS_CERT_SIGNER_NOT_CA = 128,
  GNUTLS_CERT_INSECURE_ALGORITHM = 256
}
enum  MHD_gnutls_certificate_request_t { GNUTLS_CERT_IGNORE, GNUTLS_CERT_REQUEST = 1, GNUTLS_CERT_REQUIRE }
enum  MHD_gnutls_close_request_t { GNUTLS_SHUT_RDWR = 0, GNUTLS_SHUT_WR = 1 }
enum  MHD_gnutls_x509_crt_fmt_t { GNUTLS_X509_FMT_DER, GNUTLS_X509_FMT_PEM }
enum  MHD_gnutls_sign_algorithm_t {
  GNUTLS_SIGN_UNKNOWN = 0, GNUTLS_SIGN_RSA_SHA1 = 1, GNUTLS_SIGN_DSA_SHA1, GNUTLS_SIGN_RSA_MD5,
  GNUTLS_SIGN_RSA_MD2, GNUTLS_SIGN_RSA_RMD160, GNUTLS_SIGN_RSA_SHA256, GNUTLS_SIGN_RSA_SHA384,
  GNUTLS_SIGN_RSA_SHA512
}
enum  MHD_gnutls_server_name_type_t { GNUTLS_NAME_DNS = 1 }
enum  MHD_gnutls_supplemental_data_format_type_t { GNUTLS_SUPPLEMENTAL_USER_MAPPING_DATA = 0 }
enum  MHD_gnutls_x509_subject_alt_name_t {
  GNUTLS_SAN_DNSNAME = 1, GNUTLS_SAN_RFC822NAME, GNUTLS_SAN_URI, GNUTLS_SAN_IPADDRESS,
  GNUTLS_SAN_OTHERNAME, GNUTLS_SAN_DN, GNUTLS_SAN_OTHERNAME_XMPP = 1000
}

Functions

int MHD__gnutls_global_init (void)
void MHD__gnutls_global_deinit (void)
int MHD__gnutls_init (MHD_gtls_session_t *session, MHD_gnutls_connection_end_t con_end)
void MHD__gnutls_deinit (MHD_gtls_session_t session)
int MHD__gnutls_bye (MHD_gtls_session_t session, MHD_gnutls_close_request_t how)
int MHD__gnutls_handshake (MHD_gtls_session_t session)
int MHD__gnutls_rehandshake (MHD_gtls_session_t session)
MHD_gnutls_alert_description_t MHD_gnutls_alert_get (MHD_gtls_session_t session)
int MHD__gnutls_alert_send (MHD_gtls_session_t session, MHD_gnutls_alert_level_t level, MHD_gnutls_alert_description_t desc)
int MHD__gnutls_alert_send_appropriate (MHD_gtls_session_t session, int err)
const char * MHD__gnutls_alert_get_name (MHD_gnutls_alert_description_t alert)
size_t MHD__gnutls_cipher_get_key_size (enum MHD_GNUTLS_CipherAlgorithm algorithm)
int MHD_gtls_error_is_fatal (int error)
int MHD_gtls_error_to_alert (int err, int *level)
void MHD_gtls_perror (int error)
const char * MHD_gtls_strerror (int error)
ssize_t MHD__gnutls_record_send (MHD_gtls_session_t session, const void *data, size_t sizeofdata)
ssize_t MHD__gnutls_record_recv (MHD_gtls_session_t session, void *data, size_t sizeofdata)
int MHD__gnutls_record_get_direction (MHD_gtls_session_t session)
int MHD_tls_set_default_priority (MHD_gnutls_priority_t *, const char *priority, const char **err_pos)
void MHD__gnutls_priority_deinit (MHD_gnutls_priority_t)
int MHD__gnutls_priority_set (MHD_gtls_session_t session, MHD_gnutls_priority_t)
int MHD__gnutls_priority_set_direct (MHD_gtls_session_t session, const char *priority, const char **err_pos)
enum MHD_GNUTLS_Protocol MHD__gnutls_protocol_get_version (MHD_gtls_session_t session)
void MHD__gnutls_handshake_set_max_packet_length (MHD_gtls_session_t session, size_t max)
void MHD__gnutls_credentials_clear (MHD_gtls_session_t session)
int MHD__gnutls_credentials_set (MHD_gtls_session_t session, enum MHD_GNUTLS_CredentialsType type, void *cred)
void MHD__gnutls_certificate_free_credentials (MHD_gtls_cert_credentials_t sc)
int MHD__gnutls_certificate_allocate_credentials (MHD_gtls_cert_credentials_t *res)
void MHD__gnutls_certificate_free_keys (MHD_gtls_cert_credentials_t sc)
void MHD__gnutls_certificate_free_cas (MHD_gtls_cert_credentials_t sc)
void MHD__gnutls_certificate_free_ca_names (MHD_gtls_cert_credentials_t sc)
int MHD__gnutls_certificate_set_x509_key_mem (MHD_gtls_cert_credentials_t res, const MHD_gnutls_datum_t *CERT, const MHD_gnutls_datum_t *KEY, MHD_gnutls_x509_crt_fmt_t type)
void MHD__gnutls_certificate_send_x509_rdn_sequence (MHD_gtls_session_t session, int status)
void MHD_gtls_global_set_log_function (MHD_gnutls_log_func log_func)
void MHD_gtls_global_set_log_level (int level)
int MHD__gnutls_dh_params_init (MHD_gtls_dh_params_t *dh_params)
void MHD__gnutls_dh_params_deinit (MHD_gtls_dh_params_t dh_params)
int MHD__gnutls_rsa_params_init (MHD_gtls_rsa_params_t *rsa_params)
void MHD__gnutls_rsa_params_deinit (MHD_gtls_rsa_params_t rsa_params)
int MHD__gnutls_rsa_params_generate2 (MHD_gtls_rsa_params_t params, unsigned int bits)
void MHD__gnutls_transport_set_ptr (MHD_gtls_session_t session, MHD_gnutls_transport_ptr_t ptr)
void MHD__gnutls_transport_set_lowat (MHD_gtls_session_t session, int num)
void MHD__gnutls_transport_set_push_function (MHD_gtls_session_t session, MHD_gtls_push_func push_func)
void MHD__gnutls_transport_set_pull_function (MHD_gtls_session_t session, MHD_gtls_pull_func pull_func)
enum MHD_GNUTLS_CredentialsType MHD_gtls_auth_get_type (MHD_gtls_session_t session)
void MHD__gnutls_dh_set_prime_bits (MHD_gtls_session_t session, unsigned int bits)

Variables

MHD_gnutls_alloc_function MHD_gnutls_malloc
MHD_gnutls_alloc_function MHD_gnutls_secure_malloc
MHD_gnutls_realloc_function MHD_gnutls_realloc
MHD_gnutls_calloc_function MHD_gnutls_calloc
MHD_gnutls_free_function MHD_gnutls_free


Define Documentation

#define GNUTLS_CIPHER_ARCFOUR   GNUTLS_CIPHER_ARCFOUR_128

Definition at line 132 of file gnutls.h.

#define GNUTLS_CIPHER_RIJNDAEL_128_CBC   GNUTLS_CIPHER_AES_128_CBC

Definition at line 129 of file gnutls.h.

#define GNUTLS_CIPHER_RIJNDAEL_256_CBC   GNUTLS_CIPHER_AES_256_CBC

Definition at line 130 of file gnutls.h.

#define GNUTLS_CIPHER_RIJNDAEL_CBC   GNUTLS_CIPHER_AES_128_CBC

Definition at line 131 of file gnutls.h.

#define GNUTLS_COMP_ZLIB   GNUTLS_COMP_DEFLATE

Definition at line 151 of file gnutls.h.

#define GNUTLS_E_AGAIN   -28

#define GNUTLS_E_APPLICATION_ERROR_MAX   -65000

Definition at line 686 of file gnutls.h.

#define GNUTLS_E_APPLICATION_ERROR_MIN   -65500

Definition at line 687 of file gnutls.h.

#define GNUTLS_E_ASN1_DER_ERROR   -69

#define GNUTLS_E_ASN1_DER_OVERFLOW   -77

Definition at line 652 of file gnutls.h.

Referenced by MHD_gtls_asn2err(), and MHD_gtls_error_to_alert().

#define GNUTLS_E_ASN1_ELEMENT_NOT_FOUND   -67

Definition at line 642 of file gnutls.h.

Referenced by MHD_gtls_asn2err(), and MHD_gtls_error_to_alert().

#define GNUTLS_E_ASN1_GENERIC_ERROR   -71

#define GNUTLS_E_ASN1_IDENTIFIER_NOT_FOUND   -68

Definition at line 643 of file gnutls.h.

Referenced by MHD_gtls_asn2err(), and MHD_gtls_error_to_alert().

#define GNUTLS_E_ASN1_SYNTAX_ERROR   -76

Definition at line 651 of file gnutls.h.

Referenced by MHD_gtls_asn2err(), and MHD_gtls_error_to_alert().

#define GNUTLS_E_ASN1_TAG_ERROR   -73

Definition at line 648 of file gnutls.h.

Referenced by MHD_gtls_asn2err(), and MHD_gtls_error_to_alert().

#define GNUTLS_E_ASN1_TAG_IMPLICIT   -74

Definition at line 649 of file gnutls.h.

Referenced by MHD_gtls_asn2err(), and MHD_gtls_error_to_alert().

#define GNUTLS_E_ASN1_TYPE_ANY_ERROR   -75

Definition at line 650 of file gnutls.h.

Referenced by MHD_gtls_asn2err(), and MHD_gtls_error_to_alert().

#define GNUTLS_E_ASN1_VALUE_NOT_FOUND   -70

Definition at line 645 of file gnutls.h.

Referenced by MHD_gtls_asn2err(), and MHD_gtls_error_to_alert().

#define GNUTLS_E_ASN1_VALUE_NOT_VALID   -72

Definition at line 647 of file gnutls.h.

Referenced by MHD_gtls_asn2err(), and MHD_gtls_error_to_alert().

#define GNUTLS_E_BASE64_DECODING_ERROR   -34

Definition at line 588 of file gnutls.h.

Referenced by MHD__gnutls_fbase64_decode(), and parse_pem_cert_mem().

#define GNUTLS_E_BASE64_ENCODING_ERROR   -201

Definition at line 673 of file gnutls.h.

Referenced by MHD__gnutls_fbase64_encode().

#define GNUTLS_E_BASE64_UNEXPECTED_HEADER_ERROR   -207

Definition at line 681 of file gnutls.h.

Referenced by MHD__gnutls_fbase64_decode().

#define GNUTLS_E_CERTIFICATE_ERROR   -43

Definition at line 653 of file gnutls.h.

Referenced by MHD__gnutls_verify_sig(), and MHD__gnutls_x509_get_pk_algorithm().

#define GNUTLS_E_CERTIFICATE_KEY_MISMATCH   -60

Definition at line 655 of file gnutls.h.

Referenced by MHD__gnutls_check_key_cert_match().

#define GNUTLS_E_COMPRESSION_FAILED   -27

Definition at line 577 of file gnutls.h.

#define GNUTLS_E_CONSTRAINT_ERROR   -101

Definition at line 664 of file gnutls.h.

Referenced by check_bits().

#define GNUTLS_E_DB_ERROR   -30

Definition at line 580 of file gnutls.h.

#define GNUTLS_E_DECOMPRESSION_FAILED   -26

Definition at line 576 of file gnutls.h.

Referenced by MHD_gtls_ciphertext2compressed(), and MHD_gtls_error_to_alert().

#define GNUTLS_E_DECRYPTION_FAILED   -24

#define GNUTLS_E_DH_PRIME_UNACCEPTABLE   -63

Definition at line 612 of file gnutls.h.

Referenced by MHD_gtls_error_to_alert(), and MHD_gtls_proc_dh_common_server_kx().

#define GNUTLS_E_ENCRYPTION_FAILED   -40

Definition at line 594 of file gnutls.h.

Referenced by MHD_gtls_send_int().

#define GNUTLS_E_ERROR_IN_FINISHED_PACKET   -18

Definition at line 569 of file gnutls.h.

Referenced by MHD__gnutls_recv_finished().

#define GNUTLS_E_EXPIRED   -29

Definition at line 579 of file gnutls.h.

#define GNUTLS_E_FATAL_ALERT_RECEIVED   -12

Definition at line 566 of file gnutls.h.

Referenced by MHD_gtls_recv_client_certificate(), and record_check_type().

#define GNUTLS_E_FILE_ERROR   -64

Definition at line 613 of file gnutls.h.

Referenced by MHD_gtls_asn2err().

#define GNUTLS_E_GOT_APPLICATION_DATA   -38

Definition at line 592 of file gnutls.h.

Referenced by MHD__gnutls_abort_handshake(), MHD__gnutls_bye(), and record_check_type().

#define GNUTLS_E_HASH_FAILED   -33

#define GNUTLS_E_IA_VERIFY_FAILED   -104

Definition at line 669 of file gnutls.h.

#define GNUTLS_E_ILLEGAL_SRP_USERNAME   -90

Definition at line 636 of file gnutls.h.

Referenced by MHD_gtls_error_to_alert().

#define GNUTLS_E_INCOMPATIBLE_CRYPTO_LIBRARY   -202

Definition at line 675 of file gnutls.h.

Referenced by MHD__gnutls_global_init().

#define GNUTLS_E_INCOMPATIBLE_GCRYPT_LIBRARY   -202

Definition at line 674 of file gnutls.h.

Referenced by MHD__gnutls_global_init().

#define GNUTLS_E_INCOMPATIBLE_LIBTASN1_LIBRARY   -203

Definition at line 676 of file gnutls.h.

#define GNUTLS_E_INIT_LIBEXTRA   -82

Definition at line 621 of file gnutls.h.

#define GNUTLS_E_INSUFFICIENT_CRED   GNUTLS_E_INSUFFICIENT_CREDENTIALS

Definition at line 584 of file gnutls.h.

#define GNUTLS_E_INSUFFICIENT_CREDENTIALS   -32

#define GNUTLS_E_INSUFICIENT_CRED   GNUTLS_E_INSUFFICIENT_CREDENTIALS

Definition at line 585 of file gnutls.h.

#define GNUTLS_E_INSUFICIENT_CREDENTIALS   GNUTLS_E_INSUFFICIENT_CREDENTIALS

Definition at line 583 of file gnutls.h.

#define GNUTLS_E_INTERNAL_ERROR   -59

Definition at line 611 of file gnutls.h.

Referenced by calc_enc_length(), call_get_cert_callback(), MHD__gnutls_abort_handshake(), MHD__gnutls_buffer_insert(), MHD__gnutls_bye(), MHD__gnutls_cal_PRF_A(), MHD__gnutls_check_key_usage(), MHD__gnutls_get_public_rsa_params(), MHD__gnutls_handshake_hash_pending(), MHD__gnutls_P_hash(), MHD__gnutls_pk_decrypt(), MHD__gnutls_pk_encrypt(), MHD__gnutls_pk_sign(), MHD__gnutls_verify_sig(), MHD__gnutls_x509_crt_get_mpis(), MHD__gnutls_x509_export_int(), MHD_gnutls_ssl3_hash_md5(), MHD_gnutls_x509_crt_import(), MHD_gtls_cipher_decrypt(), MHD_gtls_cipher_encrypt(), MHD_gtls_ciphertext2compressed(), MHD_gtls_compressed2ciphertext(), MHD_gtls_dh_generate_prime(), MHD_gtls_dh_set_group(), MHD_gtls_dh_set_peer_public(), MHD_gtls_dh_set_secret_bits(), MHD_gtls_error_to_alert(), MHD_gtls_gen_cert_client_certificate(), MHD_gtls_gen_cert_server_certificate(), MHD_gtls_gen_extensions(), MHD_gtls_handshake_io_send_int(), MHD_gtls_pkcs1_rsa_encrypt(), MHD_gtls_PRF(), MHD_gtls_proc_cert_client_cert_vrfy(), MHD_gtls_proc_cert_server_certificate(), MHD_gtls_raw_cert_to_gcert(), MHD_gtls_read_connection_state_init(), MHD_gtls_rsa_export_set_pubkey(), MHD_gtls_send_int(), MHD_gtls_server_name_send_params(), MHD_gtls_server_select_suite(), MHD_gtls_set_kx(), MHD_gtls_set_read_cipher(), MHD_gtls_set_read_mac(), MHD_gtls_set_write_cipher(), MHD_gtls_set_write_mac(), MHD_gtls_sign(), MHD_gtls_tls_sign_hdata(), MHD_gtls_tls_sign_params(), MHD_gtls_write_connection_state_init(), proc_dhe_server_kx(), proc_rsa_export_server_kx(), and record_check_type().

#define GNUTLS_E_INTERRUPTED   -52

#define GNUTLS_E_INVALID_PASSWORD   -99

Definition at line 662 of file gnutls.h.

#define GNUTLS_E_INVALID_REQUEST   -50

#define GNUTLS_E_INVALID_SESSION   -10

Definition at line 565 of file gnutls.h.

Referenced by MHD_gtls_recv_int(), MHD_gtls_send_int(), and session_is_valid().

#define GNUTLS_E_KEY_USAGE_VIOLATION   -48

#define GNUTLS_E_LARGE_PACKET   -7

Definition at line 562 of file gnutls.h.

#define GNUTLS_E_LIBRARY_VERSION_MISMATCH   -83

Definition at line 622 of file gnutls.h.

Referenced by MHD__gnutls_global_init().

#define GNUTLS_E_LZO_INIT_FAILED   -85

Definition at line 630 of file gnutls.h.

#define GNUTLS_E_MAC_VERIFY_FAILED   -100

Definition at line 663 of file gnutls.h.

#define GNUTLS_E_MEMORY_ERROR   -25

Definition at line 575 of file gnutls.h.

Referenced by _select_client_cert(), cpydata(), gen_dhe_server_kx(), gen_rsa_export_server_kx(), get_temp_recv_buffer(), MHD__gnutls_base64_decode(), MHD__gnutls_buffer_insert(), MHD__gnutls_certificate_allocate_credentials(), MHD__gnutls_copy_certificate_auth_info(), MHD__gnutls_credentials_set(), MHD__gnutls_dh_params_init(), MHD__gnutls_fbase64_encode(), MHD__gnutls_gen_rsa_client_kx(), MHD__gnutls_handshake_hash_init(), MHD__gnutls_init(), MHD__gnutls_proc_rsa_client_kx(), MHD__gnutls_send_server_hello(), MHD__gnutls_set_keys(), MHD__gnutls_x509_der_encode(), MHD__gnutls_x509_get_pk_algorithm(), MHD__gnutls_x509_privkey_to_gkey(), MHD__gnutls_x509_read_int(), MHD__gnutls_x509_read_value(), MHD__gnutls_x509_write_int(), MHD_gnutls_record_buffer_put(), MHD_gnutls_x509_crt_init(), MHD_gnutls_x509_privkey_init(), MHD_gtls_asn2err(), MHD_gtls_auth_info_set(), MHD_gtls_compressed2ciphertext(), MHD_gtls_dh_common_print_server_kx(), MHD_gtls_gen_cert_client_cert_vrfy(), MHD_gtls_gen_cert_server_cert_req(), MHD_gtls_gen_dh_common_client_kx(), MHD_gtls_gen_extensions(), MHD_gtls_gen_x509_crt(), MHD_gtls_handshake_buffer_put(), MHD_gtls_handshake_io_recv_int(), MHD_gtls_io_clear_peeked_data(), MHD_gtls_io_read_buffered(), MHD_gtls_mpi_dprint(), MHD_gtls_mpi_dprint_lz(), MHD_gtls_pkcs1_rsa_decrypt(), MHD_gtls_pkcs1_rsa_encrypt(), MHD_gtls_proc_dh_common_client_kx(), MHD_gtls_proc_x509_server_certificate(), MHD_gtls_read_connection_state_init(), MHD_gtls_recv_handshake(), MHD_gtls_remove_unwanted_ciphersuites(), MHD_gtls_selected_cert_supported_kx(), MHD_gtls_send_handshake(), MHD_gtls_send_int(), MHD_gtls_set_datum_m(), MHD_gtls_string_append_data(), MHD_gtls_supported_ciphersuites(), MHD_gtls_supported_compression_methods(), MHD_gtls_write_connection_state_init(), MHD_gtls_x509_crt_to_gcert(), MHD_tls_set_default_priority(), parse_crt_mem(), parse_pem_cert_mem(), read_cert_mem(), and read_key_mem().

#define GNUTLS_E_MPI_PRINT_FAILED   -35

#define GNUTLS_E_MPI_SCAN_FAILED   -23

#define GNUTLS_E_NO_CERTIFICATE_FOUND   -49

#define GNUTLS_E_NO_CIPHER_SUITES   -87

#define GNUTLS_E_NO_COMPRESSION_ALGORITHMS   -86

Definition at line 631 of file gnutls.h.

Referenced by MHD_gtls_error_to_alert(), and MHD_gtls_supported_compression_methods().

#define GNUTLS_E_NO_TEMPORARY_DH_PARAMS   -93

Definition at line 638 of file gnutls.h.

Referenced by gen_dhe_server_kx(), MHD_gtls_error_to_alert(), and proc_dhe_client_kx().

#define GNUTLS_E_NO_TEMPORARY_RSA_PARAMS   -84

#define GNUTLS_E_PK_DECRYPTION_FAILED   -45

Definition at line 597 of file gnutls.h.

Referenced by MHD__gnutls_pk_decrypt(), and MHD_gtls_pkcs1_rsa_decrypt().

#define GNUTLS_E_PK_ENCRYPTION_FAILED   -44

Definition at line 596 of file gnutls.h.

Referenced by MHD__gnutls_pk_encrypt(), and MHD_gtls_pkcs1_rsa_encrypt().

#define GNUTLS_E_PK_SIG_VERIFY_FAILED   -89

Definition at line 634 of file gnutls.h.

Referenced by MHD_gtls_rsa_verify().

#define GNUTLS_E_PK_SIGN_FAILED   -46

Definition at line 598 of file gnutls.h.

Referenced by MHD__gnutls_pk_sign().

#define GNUTLS_E_PKCS1_WRONG_PAD   -57

Definition at line 609 of file gnutls.h.

#define GNUTLS_E_PULL_ERROR   -54

Definition at line 606 of file gnutls.h.

Referenced by MHD__gnutls_read().

#define GNUTLS_E_PUSH_ERROR   -53

Definition at line 605 of file gnutls.h.

Referenced by MHD_gtls_io_write_buffered().

#define GNUTLS_E_RANDOM_FAILED   -206

#define GNUTLS_E_RECEIVED_ILLEGAL_EXTENSION   -58

Definition at line 610 of file gnutls.h.

Referenced by MHD__gnutls_extension_list_check(), and MHD_gtls_error_to_alert().

#define GNUTLS_E_RECEIVED_ILLEGAL_PARAMETER   -55

#define GNUTLS_E_RECORD_LIMIT_REACHED   -39

Definition at line 593 of file gnutls.h.

Referenced by MHD_gtls_recv_int(), and MHD_gtls_send_int().

#define GNUTLS_E_REHANDSHAKE   -37

#define GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE   -56

#define GNUTLS_E_SHORT_MEMORY_BUFFER   -51

#define GNUTLS_E_SRP_PWD_ERROR   -31

Definition at line 581 of file gnutls.h.

#define GNUTLS_E_SRP_PWD_PARSING_ERROR   -91

Definition at line 637 of file gnutls.h.

#define GNUTLS_E_SUCCESS   0

Definition at line 559 of file gnutls.h.

#define GNUTLS_E_TOO_MANY_EMPTY_PACKETS   -78

Definition at line 614 of file gnutls.h.

Referenced by MHD_gtls_recv_int().

#define GNUTLS_E_UNEXPECTED_HANDSHAKE_PACKET   -19

#define GNUTLS_E_UNEXPECTED_PACKET   -15

#define GNUTLS_E_UNEXPECTED_PACKET_LENGTH   -9

#define GNUTLS_E_UNIMPLEMENTED_FEATURE   -1250

Definition at line 684 of file gnutls.h.

#define GNUTLS_E_UNKNOWN_ALGORITHM   -105

Definition at line 671 of file gnutls.h.

#define GNUTLS_E_UNKNOWN_CIPHER_SUITE   -21

Definition at line 571 of file gnutls.h.

Referenced by MHD_gtls_error_to_alert(), and MHD_gtls_server_select_suite().

#define GNUTLS_E_UNKNOWN_CIPHER_TYPE   -6

Definition at line 561 of file gnutls.h.

#define GNUTLS_E_UNKNOWN_COMPRESSION_ALGORITHM   -3

#define GNUTLS_E_UNKNOWN_HASH_ALGORITHM   -96

Definition at line 659 of file gnutls.h.

#define GNUTLS_E_UNKNOWN_PK_ALGORITHM   -80

Definition at line 615 of file gnutls.h.

Referenced by MHD_gtls_proc_cert_cert_req().

#define GNUTLS_E_UNKNOWN_PKCS_BAG_TYPE   -98

Definition at line 661 of file gnutls.h.

#define GNUTLS_E_UNKNOWN_PKCS_CONTENT_TYPE   -97

Definition at line 660 of file gnutls.h.

#define GNUTLS_E_UNSUPPORTED_CERTIFICATE_TYPE   -61

Definition at line 656 of file gnutls.h.

Referenced by MHD_gtls_error_to_alert(), and MHD_gtls_session_cert_type_supported().

#define GNUTLS_E_UNSUPPORTED_VERSION_PACKET   -8

Definition at line 563 of file gnutls.h.

Referenced by MHD_gtls_error_to_alert(), and record_check_version().

#define GNUTLS_E_UNWANTED_ALGORITHM   -22

#define GNUTLS_E_WARNING_ALERT_RECEIVED   -16

#define GNUTLS_E_WARNING_IA_FPHF_RECEIVED   -103

Definition at line 667 of file gnutls.h.

#define GNUTLS_E_WARNING_IA_IPHF_RECEIVED   -102

Definition at line 666 of file gnutls.h.

#define GNUTLS_E_X509_CERTIFICATE_ERROR   GNUTLS_E_CERTIFICATE_ERROR

Definition at line 654 of file gnutls.h.

Referenced by MHD__gnutls_x509_crt_get_mpis().

#define GNUTLS_E_X509_UNKNOWN_SAN   -62

Definition at line 657 of file gnutls.h.

#define GNUTLS_E_X509_UNSUPPORTED_ATTRIBUTE   -95

Definition at line 658 of file gnutls.h.

#define GNUTLS_E_X509_UNSUPPORTED_CRITICAL_EXTENSION   -47

Definition at line 599 of file gnutls.h.

#define GNUTLS_E_X509_UNSUPPORTED_OID   -205

Definition at line 678 of file gnutls.h.

#define GNUTLS_KEY_CRL_SIGN   2

Definition at line 552 of file gnutls.h.

#define GNUTLS_KEY_DATA_ENCIPHERMENT   16

Definition at line 549 of file gnutls.h.

#define GNUTLS_KEY_DECIPHER_ONLY   32768

Definition at line 554 of file gnutls.h.

#define GNUTLS_KEY_DIGITAL_SIGNATURE   128

Definition at line 545 of file gnutls.h.

#define GNUTLS_KEY_ENCIPHER_ONLY   1

Definition at line 553 of file gnutls.h.

#define GNUTLS_KEY_KEY_AGREEMENT   8

Definition at line 550 of file gnutls.h.

#define GNUTLS_KEY_KEY_CERT_SIGN   4

Definition at line 551 of file gnutls.h.

#define GNUTLS_KEY_KEY_ENCIPHERMENT   32

Definition at line 548 of file gnutls.h.

#define GNUTLS_KEY_NON_REPUDIATION   64

Definition at line 546 of file gnutls.h.

#define GNUTLS_MAX_ALGORITHM_NUM   16

Definition at line 150 of file gnutls.h.

#define GNUTLS_MAX_SESSION_ID   32

Definition at line 134 of file gnutls.h.

#define LIBGNUTLS_VERSION   "2.2.3"

Definition at line 124 of file gnutls.h.

#define TLS_MASTER_SIZE   48

#define TLS_RANDOM_SIZE   32


Typedef Documentation

typedef void*(* MHD_gnutls_alloc_function)(size_t)

Definition at line 430 of file gnutls.h.

typedef void*(* MHD_gnutls_calloc_function)(size_t, size_t)

Definition at line 432 of file gnutls.h.

typedef int MHD_gnutls_certificate_client_retrieve_function(MHD_gtls_session_t, const MHD_gnutls_datum_t *req_ca_rdn, int nreqs, const enum MHD_GNUTLS_PublicKeyAlgorithm *pk_algos, int pk_algos_length, MHD_gnutls_retr_st *)

Definition at line 510 of file gnutls.h.

Definition at line 520 of file gnutls.h.

typedef void(* MHD_gnutls_free_function)(void *)

Definition at line 433 of file gnutls.h.

Definition at line 370 of file gnutls.h.

typedef int(* MHD_gnutls_is_secure_function)(const void *)

Definition at line 431 of file gnutls.h.

typedef void(* MHD_gnutls_log_func)(int, const char *)

Definition at line 443 of file gnutls.h.

Definition at line 295 of file gnutls.h.

Definition at line 275 of file gnutls.h.

typedef void*(* MHD_gnutls_realloc_function)(void *, size_t)

Definition at line 434 of file gnutls.h.

typedef int(* MHD_gnutls_sign_func)(MHD_gtls_session_t session, void *userdata, enum MHD_GNUTLS_CertificateType cert_type, const MHD_gnutls_datum_t *cert, const MHD_gnutls_datum_t *hash, MHD_gnutls_datum_t *signature)

Definition at line 535 of file gnutls.h.

Definition at line 263 of file gnutls.h.

typedef struct MHD_gnutls_x509_crl_int* MHD_gnutls_x509_crl_t

Definition at line 421 of file gnutls.h.

Definition at line 424 of file gnutls.h.

Definition at line 418 of file gnutls.h.

Definition at line 391 of file gnutls.h.

Definition at line 388 of file gnutls.h.

Definition at line 390 of file gnutls.h.

Definition at line 269 of file gnutls.h.

typedef ssize_t(* MHD_gtls_pull_func)(MHD_gnutls_transport_ptr_t, void *, size_t)

Definition at line 464 of file gnutls.h.

typedef ssize_t(* MHD_gtls_push_func)(MHD_gnutls_transport_ptr_t, const void *, size_t)

Definition at line 466 of file gnutls.h.

Definition at line 272 of file gnutls.h.

Definition at line 266 of file gnutls.h.


Enumeration Type Documentation

Enumerator:
GNUTLS_A_CLOSE_NOTIFY 
GNUTLS_A_UNEXPECTED_MESSAGE 
GNUTLS_A_BAD_RECORD_MAC 
GNUTLS_A_DECRYPTION_FAILED 
GNUTLS_A_RECORD_OVERFLOW 
GNUTLS_A_DECOMPRESSION_FAILURE 
GNUTLS_A_HANDSHAKE_FAILURE 
GNUTLS_A_SSL3_NO_CERTIFICATE 
GNUTLS_A_BAD_CERTIFICATE 
GNUTLS_A_UNSUPPORTED_CERTIFICATE 
GNUTLS_A_CERTIFICATE_REVOKED 
GNUTLS_A_CERTIFICATE_EXPIRED 
GNUTLS_A_CERTIFICATE_UNKNOWN 
GNUTLS_A_ILLEGAL_PARAMETER 
GNUTLS_A_UNKNOWN_CA 
GNUTLS_A_ACCESS_DENIED 
GNUTLS_A_DECODE_ERROR 
GNUTLS_A_DECRYPT_ERROR 
GNUTLS_A_EXPORT_RESTRICTION 
GNUTLS_A_PROTOCOL_VERSION 
GNUTLS_A_INSUFFICIENT_SECURITY 
GNUTLS_A_INTERNAL_ERROR 
GNUTLS_A_USER_CANCELED 
GNUTLS_A_NO_RENEGOTIATION 
GNUTLS_A_UNSUPPORTED_EXTENSION 
GNUTLS_A_CERTIFICATE_UNOBTAINABLE 
GNUTLS_A_UNRECOGNIZED_NAME 
GNUTLS_A_UNKNOWN_PSK_IDENTITY 

Definition at line 165 of file gnutls.h.

Enumerator:
GNUTLS_AL_WARNING 
GNUTLS_AL_FATAL 

Definition at line 159 of file gnutls.h.

Enumerator:
GNUTLS_CERT_IGNORE 
GNUTLS_CERT_REQUEST 
GNUTLS_CERT_REQUIRE 

Definition at line 228 of file gnutls.h.

Enumerator:
GNUTLS_CERT_INVALID 
GNUTLS_CERT_REVOKED 
GNUTLS_CERT_SIGNER_NOT_FOUND 
GNUTLS_CERT_SIGNER_NOT_CA 
GNUTLS_CERT_INSECURE_ALGORITHM 

Definition at line 211 of file gnutls.h.

Types of certificates.

Enumerator:
MHD_GNUTLS_CRT_UNKNOWN 
MHD_GNUTLS_CRT_X509 

Definition at line 104 of file gnutls.h.

Enumerator:
GNUTLS_SHUT_RDWR 
GNUTLS_SHUT_WR 

Definition at line 235 of file gnutls.h.

List of compression methods. Note that not all listed algorithms are necessarily supported by all builds of MHD.

Enumerator:
MHD_GNUTLS_COMP_UNKNOWN 
MHD_GNUTLS_COMP_NULL  No compression.

Definition at line 91 of file gnutls.h.

Enumerator:
GNUTLS_SERVER 
GNUTLS_CLIENT 

Definition at line 153 of file gnutls.h.

Server credentials type (note that not all types maybe supported by all MHD builds).

Enumerator:
MHD_GNUTLS_CRD_CERTIFICATE  We have a x.509 certificate.

Definition at line 62 of file gnutls.h.

Enumerator:
GNUTLS_HANDSHAKE_HELLO_REQUEST 
GNUTLS_HANDSHAKE_CLIENT_HELLO 
GNUTLS_HANDSHAKE_SERVER_HELLO 
GNUTLS_HANDSHAKE_CERTIFICATE_PKT 
GNUTLS_HANDSHAKE_SERVER_KEY_EXCHANGE 
GNUTLS_HANDSHAKE_CERTIFICATE_REQUEST 
GNUTLS_HANDSHAKE_SERVER_HELLO_DONE 
GNUTLS_HANDSHAKE_CERTIFICATE_VERIFY 
GNUTLS_HANDSHAKE_CLIENT_KEY_EXCHANGE 
GNUTLS_HANDSHAKE_FINISHED 
GNUTLS_HANDSHAKE_SUPPLEMENTAL 

Definition at line 197 of file gnutls.h.

Enumeration of possible cryptographic hash functions (for MAC and Digest operations). Note that not all listed algorithms are necessarily supported by all builds of MHD.

Enumerator:
MHD_GNUTLS_MAC_UNKNOWN 
MHD_GNUTLS_MAC_NULL 
MHD_GNUTLS_MAC_MD5 
MHD_GNUTLS_MAC_SHA1 
MHD_GNUTLS_MAC_SHA256 

Definition at line 77 of file gnutls.h.

List of key exchange algorithms. Note that not all listed algorithms are necessarily supported by all builds of MHD.

Enumerator:
MHD_GNUTLS_KX_UNKNOWN 
MHD_GNUTLS_KX_RSA 

Definition at line 52 of file gnutls.h.

Enumerator:
GNUTLS_PARAMS_RSA_EXPORT 
GNUTLS_PARAMS_DH 

Definition at line 141 of file gnutls.h.

List of public key algorithms. Note that not all listed algorithms are necessarily supported by all builds of MHD.

Enumerator:
MHD_GNUTLS_PK_UNKNOWN 
MHD_GNUTLS_PK_RSA 
MHD_GNUTLS_KX_RSA_EXPORT 

Definition at line 115 of file gnutls.h.

Enumerator:
GNUTLS_NAME_DNS 

Definition at line 343 of file gnutls.h.

Enumerator:
GNUTLS_SIGN_UNKNOWN 
GNUTLS_SIGN_RSA_SHA1 
GNUTLS_SIGN_DSA_SHA1 
GNUTLS_SIGN_RSA_MD5 
GNUTLS_SIGN_RSA_MD2 
GNUTLS_SIGN_RSA_RMD160 
GNUTLS_SIGN_RSA_SHA256 
GNUTLS_SIGN_RSA_SHA384 
GNUTLS_SIGN_RSA_SHA512 

Definition at line 247 of file gnutls.h.

Enumerator:
GNUTLS_SUPPLEMENTAL_USER_MAPPING_DATA 

Definition at line 349 of file gnutls.h.

Enumerator:
GNUTLS_X509_FMT_DER 
GNUTLS_X509_FMT_PEM 

Definition at line 241 of file gnutls.h.

Enumerator:
GNUTLS_SAN_DNSNAME 
GNUTLS_SAN_RFC822NAME 
GNUTLS_SAN_URI 
GNUTLS_SAN_IPADDRESS 
GNUTLS_SAN_OTHERNAME 
GNUTLS_SAN_DN 
GNUTLS_SAN_OTHERNAME_XMPP 

Definition at line 478 of file gnutls.h.


Function Documentation

const char* MHD__gnutls_alert_get_name ( MHD_gnutls_alert_description_t  alert  ) 

MHD__gnutls_alert_get_name - Returns a string describing the alert number given : is an alert number MHD_gtls_session_t structure.

This function will return a string that describes the given alert number or NULL. See MHD_gnutls_alert_get().

Definition at line 86 of file gnutls_alert.c.

References GNUTLS_ALERT_ID_LOOP.

Referenced by MHD__gnutls_alert_send(), MHD_tls_connection_handle_read(), and record_check_type().

Here is the caller graph for this function:

int MHD__gnutls_alert_send ( MHD_gtls_session_t  session,
MHD_gnutls_alert_level_t  level,
MHD_gnutls_alert_description_t  desc 
)

MHD__gnutls_alert_send - This function sends an alert message to the peer : is a MHD_gtls_session_t structure. : is the level of the alert : is the alert description

This function will send an alert to the peer in order to inform him of something important (eg. his Certificate could not be verified). If the alert level is Fatal then the peer is expected to close the connection, otherwise he may ignore the alert and continue.

The error code of the underlying record send function will be returned, so you may also receive GNUTLS_E_INTERRUPTED or GNUTLS_E_AGAIN as well.

Returns 0 on success.

Definition at line 113 of file gnutls_alert.c.

References GNUTLS_ALERT, MHD__gnutls_alert_get_name(), MHD__gnutls_record_log, and MHD_gtls_send_int().

Referenced by MHD__gnutls_alert_send_appropriate(), MHD__gnutls_bye(), and MHD_gtls_send_client_certificate().

Here is the call graph for this function:

Here is the caller graph for this function:

int MHD__gnutls_alert_send_appropriate ( MHD_gtls_session_t  session,
int  err 
)

MHD__gnutls_alert_send_appropriate - This function sends an alert to the peer depending on the error code : is a MHD_gtls_session_t structure. : is an integer

Sends an alert to the peer depending on the error code returned by a gnutls function. This function will call MHD_gtls_error_to_alert() to determine the appropriate alert to send.

This function may also return GNUTLS_E_AGAIN, or GNUTLS_E_INTERRUPTED.

If the return value is GNUTLS_E_INVALID_REQUEST, then no alert has been sent to the peer.

Returns zero on success.

Definition at line 265 of file gnutls_alert.c.

References MHD__gnutls_alert_send(), and MHD_gtls_error_to_alert().

Here is the call graph for this function:

int MHD__gnutls_bye ( MHD_gtls_session_t  session,
MHD_gnutls_close_request_t  how 
)

MHD__gnutls_bye - This function terminates the current TLS/SSL connection. : is a MHD_gtls_session_t structure. : is an integer

Terminates the current TLS/SSL connection. The connection should have been initiated using MHD__gnutls_handshake(). should be one of GNUTLS_SHUT_RDWR, GNUTLS_SHUT_WR.

In case of GNUTLS_SHUT_RDWR then the TLS connection gets terminated and further receives and sends will be disallowed. If the return value is zero you may continue using the connection. GNUTLS_SHUT_RDWR actually sends an alert containing a close request and waits for the peer to reply with the same message.

In case of GNUTLS_SHUT_WR then the TLS connection gets terminated and further sends will be disallowed. In order to reuse the connection you should wait for an EOF from the peer. GNUTLS_SHUT_WR sends an alert containing a close request.

Note that not all implementations will properly terminate a TLS connection. Some of them, usually for performance reasons, will terminate only the underlying transport layer, thus causing a transmission error to the peer. This error cannot be distinguished from a malicious party prematurely terminating the session, thus this behavior is not recommended.

This function may also return GNUTLS_E_AGAIN or GNUTLS_E_INTERRUPTED; cf. MHD__gnutls_record_get_direction().

Returns: GNUTLS_E_SUCCESS on success, or an error code, see function documentation for entire semantics.

Definition at line 133 of file gnutls_record.c.

References GNUTLS_A_CLOSE_NOTIFY, GNUTLS_AL_WARNING, GNUTLS_ALERT, GNUTLS_E_GOT_APPLICATION_DATA, GNUTLS_E_INTERNAL_ERROR, GNUTLS_SHUT_RDWR, MHD_gtls_session_int::internals, MHD_gtls_internals_st::may_not_read, MHD_gtls_internals_st::may_not_write, MHD__gnutls_alert_send(), MHD_gnutls_assert, MHD_gtls_io_clear_peeked_data(), MHD_gtls_io_write_flush(), MHD_gtls_recv_int(), STATE, STATE0, STATE60, STATE61, and STATE62.

Referenced by MHD_tls_connection_close().

Here is the call graph for this function:

Here is the caller graph for this function:

int MHD__gnutls_certificate_allocate_credentials ( MHD_gtls_cert_credentials_t res  ) 

MHD__gnutls_certificate_allocate_credentials - Used to allocate a MHD_gtls_cert_credentials_t structure : is a pointer to an MHD_gtls_cert_credentials_t structure.

This structure is complex enough to manipulate directly thus this helper function is provided in order to allocate it.

Returns: GNUTLS_E_SUCCESS on success, or an error code.

Definition at line 207 of file gnutls_cert.c.

References DEFAULT_VERIFY_BITS, DEFAULT_VERIFY_DEPTH, GNUTLS_E_MEMORY_ERROR, and MHD_gnutls_calloc.

void MHD__gnutls_certificate_free_ca_names ( MHD_gtls_cert_credentials_t  sc  ) 

MHD__gnutls_certificate_free_ca_names - Used to free all the CA names from a MHD_gtls_cert_credentials_t structure : is an MHD_gtls_cert_credentials_t structure.

This function will delete all the CA name in the given credentials. Clients may call this to save some memory since in client side the CA names are not used.

CA names are used by servers to advertize the CAs they support to clients.

Definition at line 127 of file gnutls_cert.c.

References MHD__gnutls_free_datum, and MHD_gtls_certificate_credentials_st::x509_rdn_sequence.

Referenced by MHD__gnutls_certificate_free_credentials().

Here is the caller graph for this function:

void MHD__gnutls_certificate_free_cas ( MHD_gtls_cert_credentials_t  sc  ) 

MHD__gnutls_certificate_free_cas - Used to free all the CAs from a MHD_gtls_cert_credentials_t structure : is an MHD_gtls_cert_credentials_t structure.

This function will delete all the CAs associated with the given credentials. Servers that do not use MHD_gtls_certificate_verify_peers2() may call this to save some memory.

Definition at line 98 of file gnutls_cert.c.

References MHD_gnutls_free, MHD_gnutls_x509_crt_deinit(), MHD_gtls_certificate_credentials_st::x509_ca_list, and MHD_gtls_certificate_credentials_st::x509_ncas.

Referenced by MHD__gnutls_certificate_free_credentials().

Here is the call graph for this function:

Here is the caller graph for this function:

void MHD__gnutls_certificate_free_credentials ( MHD_gtls_cert_credentials_t  sc  ) 

MHD__gnutls_certificate_free_credentials - Used to free an allocated MHD_gtls_cert_credentials_t structure : is an MHD_gtls_cert_credentials_t structure.

This structure is complex enough to manipulate directly thus this helper function is provided in order to free (deallocate) it.

This function does not free any temporary parameters associated with this structure (ie RSA and DH parameters are not freed by this function).

Definition at line 184 of file gnutls_cert.c.

References MHD_gtls_certificate_credentials_st::keyring, MHD__gnutls_certificate_free_ca_names(), MHD__gnutls_certificate_free_cas(), MHD__gnutls_certificate_free_keys(), MHD__gnutls_free_datum, and MHD_gnutls_free.

Referenced by MHD_stop_daemon().

Here is the call graph for this function:

Here is the caller graph for this function:

void MHD__gnutls_certificate_free_keys ( MHD_gtls_cert_credentials_t  sc  ) 

MHD__gnutls_certificate_free_keys - Used to free all the keys from a MHD_gtls_cert_credentials_t structure : is an MHD_gtls_cert_credentials_t structure.

This function will delete all the keys and the certificates associated with the given credentials. This function must not be called when a TLS negotiation that uses the credentials is in progress.

Definition at line 56 of file gnutls_cert.c.

References MHD_gtls_certificate_credentials_st::cert_list, MHD_gtls_certificate_credentials_st::cert_list_length, MHD_gnutls_free, MHD_gtls_gcert_deinit(), MHD_gtls_gkey_deinit(), MHD_gtls_certificate_credentials_st::ncerts, and MHD_gtls_certificate_credentials_st::pkey.

Referenced by MHD__gnutls_certificate_free_credentials().

Here is the call graph for this function:

Here is the caller graph for this function:

void MHD__gnutls_certificate_send_x509_rdn_sequence ( MHD_gtls_session_t  session,
int  status 
)

MHD__gnutls_certificate_send_x509_rdn_sequence - This function will order gnutls to send or not the x.509 rdn sequence : is a pointer to a MHD_gtls_session_t structure. : is 0 or 1

If status is non zero, this function will order gnutls not to send the rdnSequence in the certificate request message. That is the server will not advertize it's trusted CAs to the peer. If status is zero then the default behaviour will take effect, which is to advertize the server's trusted CAs.

This function has no effect in clients, and in authentication methods other than certificate with X.509 certificates.

Definition at line 530 of file gnutls_state.c.

References MHD_gtls_internals_st::ignore_rdn_sequence, and MHD_gtls_session_int::internals.

int MHD__gnutls_certificate_set_x509_key_mem ( MHD_gtls_cert_credentials_t  res,
const MHD_gnutls_datum_t cert,
const MHD_gnutls_datum_t key,
MHD_gnutls_x509_crt_fmt_t  type 
)

MHD__gnutls_certificate_set_x509_key_mem - Used to set keys in a MHD_gtls_cert_credentials_t structure : is an MHD_gtls_cert_credentials_t structure. : contains a certificate list (path) for the specified private key : is the private key, or NULL : is PEM or DER

This function sets a certificate/private key pair in the MHD_gtls_cert_credentials_t structure. This function may be called more than once (in case multiple keys/certificates exist for the server).

Currently are supported: RSA PKCS-1 encoded private keys, DSA private keys.

DSA private keys are encoded the OpenSSL way, which is an ASN.1 DER sequence of 6 INTEGERs - version, p, q, g, pub, priv.

Note that the keyUsage (2.5.29.15) PKIX extension in X.509 certificates is supported. This means that certificates intended for signing cannot be used for ciphersuites that require encryption.

If the certificate and the private key are given in PEM encoding then the strings that hold their values must be null terminated.

The may be NULL if you are using a sign callback, see MHD_gtls_sign_callback_set().

Returns: GNUTLS_E_SUCCESS on success, or an error code.

Definition at line 521 of file gnutls_x509.c.

References MHD_gnutls_datum_t::data, MHD__gnutls_check_key_cert_match(), MHD_gnutls_assert, MHD_gtls_certificate_credentials_st::ncerts, read_cert_mem(), read_key_mem(), and MHD_gnutls_datum_t::size.

Here is the call graph for this function:

size_t MHD__gnutls_cipher_get_key_size ( enum MHD_GNUTLS_CipherAlgorithm  algorithm  ) 

MHD__gnutls_cipher_get_key_size - Returns the length of the cipher's key size : is an encryption algorithm

Returns: length (in bytes) of the given cipher's key size, o 0 if the given cipher is invalid.

Definition at line 689 of file gnutls_algorithms.c.

References GNUTLS_ALG_LOOP.

Referenced by MHD__gnutls_set_read_keys(), and MHD__gnutls_set_write_keys().

Here is the caller graph for this function:

void MHD__gnutls_credentials_clear ( MHD_gtls_session_t  session  ) 

MHD__gnutls_credentials_clear - Clears all the credentials previously set : is a MHD_gtls_session_t structure.

Clears all the credentials previously set in this session.

Definition at line 46 of file gnutls_auth.c.

References MHD_gtls_key::cred, MHD_gtls_session_int::key, MHD_gnutls_free, and MHD_gtls_auth_cred_st::next.

Referenced by MHD__gnutls_deinit().

Here is the caller graph for this function:

int MHD__gnutls_credentials_set ( MHD_gtls_session_t  session,
enum MHD_GNUTLS_CredentialsType  type,
void *  cred 
)

MHD__gnutls_credentials_set - Sets the needed credentials for the specified authentication algorithm. : is a MHD_gtls_session_t structure. : is the type of the credentials : is a pointer to a structure.

Sets the needed credentials for the specified type. Eg username, password - or public and private keys etc. The (void* cred) parameter is a structure that depends on the specified type and on the current session (client or server). [ In order to minimize memory usage, and share credentials between several threads gnutls keeps a pointer to cred, and not the whole cred structure. Thus you will have to keep the structure allocated until you call MHD__gnutls_deinit(). ]

For GNUTLS_CRD_SRP cred should be MHD_gnutls_srp_client_credentials_t in case of a client, and MHD_gnutls_srp_server_credentials_t, in case of a server.

For GNUTLS_CRD_CERTIFICATE cred should be MHD_gtls_cert_credentials_t.

Definition at line 89 of file gnutls_auth.c.

References MHD_gtls_auth_cred_st::algorithm, MHD_gtls_key::cred, MHD_gtls_auth_cred_st::credentials, GNUTLS_E_MEMORY_ERROR, MHD_gtls_session_int::key, MHD_gnutls_free, MHD_gnutls_malloc, and MHD_gtls_auth_cred_st::next.

Referenced by MHD_accept_connection().

Here is the caller graph for this function:

void MHD__gnutls_deinit ( MHD_gtls_session_t  session  ) 

MHD__gnutls_deinit - This function clears all buffers associated with a session : is a MHD_gtls_session_t structure.

This function clears all buffers associated with the . This function will also remove session data from the session database if the session was terminated abnormally.

Definition at line 304 of file gnutls_state.c.

References MHD_gtls_key::A, MHD_gtls_key::a, MHD_gtls_internals_st::application_data_buffer, MHD_gtls_key::b, MHD_gtls_key::B, MHD_gtls_session_int::cipher_specs, MHD_gtls_key::client_g, MHD_gtls_key::client_p, MHD_gtls_cipher_specs_st::client_write_IV, MHD_gtls_cipher_specs_st::client_write_key, MHD_gtls_cipher_specs_st::client_write_mac_secret, MHD_gtls_key::client_Y, MHD_gtls_session_int::connection_state, MHD_gtls_key::dh_secret, MHD_gtls_internals_st::handshake_data_buffer, MHD_gtls_internals_st::handshake_hash_buffer, MHD_gtls_internals_st::ia_data_buffer, MHD_gtls_session_int::internals, MHD_gtls_key::KEY, MHD_gtls_session_int::key, MHD__gnutls_credentials_clear(), MHD__gnutls_free_datum, MHD__gnutls_handshake_io_buffer_clear, MHD_gnutls_cipher_deinit(), MHD_gnutls_free, MHD_gtls_buffer_clear, MHD_gtls_free_auth_info(), MHD_gtls_handshake_internal_state_clear(), MHD_gtls_mpi_release(), MHD_gtls_selected_certs_deinit(), MHD_gtls_conn_stat_st::read_cipher_state, MHD_gtls_conn_stat_st::read_mac_secret, MHD_gtls_internals_st::record_recv_buffer, MHD_gtls_internals_st::record_send_buffer, MHD_gtls_key::rsa, MHD_gtls_cipher_specs_st::server_write_IV, MHD_gtls_cipher_specs_st::server_write_key, MHD_gtls_cipher_specs_st::server_write_mac_secret, MHD_gtls_key::u, MHD_gtls_conn_stat_st::write_cipher_state, MHD_gtls_conn_stat_st::write_mac_secret, and MHD_gtls_key::x.

Referenced by MHD_cleanup_connections().

Here is the call graph for this function:

Here is the caller graph for this function:

void MHD__gnutls_dh_params_deinit ( MHD_gtls_dh_params_t  dh_params  ) 

MHD__gnutls_dh_params_deinit - This function will deinitialize the DH parameters : Is a structure that holds the prime numbers

This function will deinitialize the DH parameters structure.

Definition at line 171 of file gnutls_dh_primes.c.

References MHD_gnutls_free, MHD_gtls_mpi_release(), and MHD_gtls_dh_params_int::params.

Referenced by deinit_internal_params().

Here is the call graph for this function:

Here is the caller graph for this function:

int MHD__gnutls_dh_params_init ( MHD_gtls_dh_params_t dh_params  ) 

MHD__gnutls_dh_params_init - This function will initialize the DH parameters : Is a structure that will hold the prime numbers

This function will initialize the DH parameters structure.

Definition at line 149 of file gnutls_dh_primes.c.

References GNUTLS_E_MEMORY_ERROR, MHD_gnutls_assert, and MHD_gnutls_calloc.

void MHD__gnutls_dh_set_prime_bits ( MHD_gtls_session_t  session,
unsigned int  bits 
)

MHD__gnutls_dh_set_prime_bits - Used to set the bits for a DH ciphersuite : is a MHD_gtls_session_t structure. : is the number of bits

This function sets the number of bits, for use in an Diffie Hellman key exchange. This is used both in DH ephemeral and DH anonymous cipher suites. This will set the minimum size of the prime that will be used for the handshake.

In the client side it sets the minimum accepted number of bits. If a server sends a prime with less bits than that GNUTLS_E_DH_PRIME_UNACCEPTABLE will be returned by the handshake.

Definition at line 55 of file gnutls_ui.c.

References MHD_gtls_internals_st::dh_prime_bits, and MHD_gtls_session_int::internals.

Referenced by MHD__gnutls_init().

Here is the caller graph for this function:

void MHD__gnutls_global_deinit ( void   ) 

MHD__gnutls_global_deinit - This function deinitializes the global data

This function deinitializes the global data, that were initialized using MHD__gnutls_global_init().

Note! This function is not thread safe. See the discussion for MHD__gnutls_global_init() for more information.

Definition at line 245 of file gnutls_global.c.

References MHD__asn1_delete_structure(), MHD__gnutls_init_level, and MHD_gc_done().

Referenced by MHD_stop_daemon().

Here is the call graph for this function:

Here is the caller graph for this function:

int MHD__gnutls_global_init ( void   ) 

MHD__gnutls_global_init - This function initializes the global data to defaults.

This function initializes the global data to defaults. Every gnutls application has a global data which holds common parameters shared by gnutls session structures. You must call MHD__gnutls_global_deinit() when gnutls usage is no longer needed Returns zero on success.

Note that this function will also initialize libgcrypt, if it has not been initialized before. Thus if you want to manually initialize libgcrypt you must do it before calling this function. This is useful in cases you want to disable libgcrypt's internal lockings etc.

This function increment a global counter, so that MHD__gnutls_global_deinit() only releases resources when it has been called as many times as MHD__gnutls_global_init(). This is useful when GnuTLS is used by more than one library in an application. This function can be called many times, but will only do something the first time.

Note! This function is not thread safe. If two threads call this function simultaneously, they can cause a race between checking the global counter and incrementing it, causing both threads to execute the library initialization code. That would lead to a memory leak. To handle this, your application could invoke this function after aquiring a thread mutex. To ignore the potential memory leak is also an option.

Definition at line 130 of file gnutls_global.c.

References ASN1_SUCCESS, GC_OK, GNUTLS_E_INCOMPATIBLE_CRYPTO_LIBRARY, GNUTLS_E_INCOMPATIBLE_GCRYPT_LIBRARY, GNUTLS_E_LIBRARY_VERSION_MISMATCH, MHD__asn1_array2tree(), MHD__asn1_delete_structure(), MHD__gnutls_debug_log, MHD__gnutls_init_level, MHD__gnutls_is_secure_memory, MHD_gc_init(), MHD_gc_pseudo_random(), MHD_gnutls_assert, MHD_gnutls_free, MHD_gnutls_malloc, MHD_gnutls_realloc, MHD_gnutls_secure_malloc, and MHD_gtls_asn2err().

Referenced by MHD_start_daemon_va().

Here is the call graph for this function:

Here is the caller graph for this function:

int MHD__gnutls_handshake ( MHD_gtls_session_t  session  ) 

MHD__gnutls_handshake - This is the main function in the handshake protocol. : is a MHD_gtls_session_t structure.

This function does the handshake of the TLS/SSL protocol, and initializes the TLS connection.

This function will fail if any problem is encountered, and will return a negative error code. In case of a client, if the client has asked to resume a session, but the server couldn't, then a full handshake will be performed.

The non-fatal errors such as GNUTLS_E_AGAIN and GNUTLS_E_INTERRUPTED interrupt the handshake procedure, which should be later be resumed. Call this function again, until it returns 0; cf. MHD__gnutls_record_get_direction() and MHD_gtls_error_is_fatal().

If this function is called by a server after a rehandshake request then GNUTLS_E_GOT_APPLICATION_DATA or GNUTLS_E_WARNING_ALERT_RECEIVED may be returned. Note that these are non fatal errors, only in the specific case of a rehandshake. Their meaning is that the client rejected the rehandshake request.

Returns: GNUTLS_E_SUCCESS on success, otherwise an error.

Definition at line 2124 of file gnutls_handshake.c.

References MHD_gtls_security_param_st::entity, GNUTLS_CLIENT, MHD__gnutls_abort_handshake(), MHD__gnutls_handshake_hash_init(), MHD__gnutls_handshake_io_buffer_clear, MHD_gnutls_assert, MHD_gtls_handshake_common(), MHD_gtls_handshake_internal_state_clear(), MHD_gtls_handshake_server(), MHD_gtls_session_int::security_parameters, STATE, and STATE0.

Referenced by MHD_tls_connection_handle_read().

Here is the call graph for this function:

Here is the caller graph for this function:

void MHD__gnutls_handshake_set_max_packet_length ( MHD_gtls_session_t  session,
size_t  max 
)

gnutls_handshake_set_max_packet_length - This function will set the maximum length of a handshake message : is a gnutls_session_t structure. : is the maximum number.

This function will set the maximum size of a handshake message. Handshake messages over this size are rejected. The default value is 16kb which is large enough. Set this to 0 if you do not want to set an upper limit.

Definition at line 115 of file gnutls_handshake.c.

Referenced by MHD__gnutls_init().

Here is the caller graph for this function:

int MHD__gnutls_init ( MHD_gtls_session_t session,
MHD_gnutls_connection_end_t  con_end 
)

MHD__gnutls_init - This function initializes the session to null (null encryption etc...). : indicate if this session is to be used for server or client. : is a pointer to a MHD_gtls_session_t structure.

This function initializes the current session to null. Every session must be initialized before use, so internal structures can be allocated. This function allocates structures which can only be free'd by calling MHD__gnutls_deinit(). Returns zero on success.

can be one of GNUTLS_CLIENT and GNUTLS_SERVER.

Returns: GNUTLS_E_SUCCESS on success, or an error code.

Definition at line 213 of file gnutls_state.c.

Referenced by MHD_accept_connection().

Here is the caller graph for this function:

void MHD__gnutls_priority_deinit ( MHD_gnutls_priority_t  priority_cache  ) 

MHD__gnutls_priority_deinit - Deinitialize the priorities cache for the cipher suites supported by gnutls. : is a MHD_gnutls_prioritity_t structure.

Deinitializes the priority cache.

Definition at line 199 of file gnutls_priority.c.

References MHD_gnutls_free.

Referenced by MHD__gnutls_priority_set_direct(), and MHD_stop_daemon().

Here is the caller graph for this function:

int MHD__gnutls_priority_set ( MHD_gtls_session_t  session,
MHD_gnutls_priority_t  priority 
)

MHD__gnutls_priority_set - Sets priorities for the cipher suites supported by gnutls. : is a MHD_gtls_session_t structure. : is a MHD_gnutls_priority_t structure.

Sets the priorities to use on the ciphers, key exchange methods, macs and compression methods.

On success 0 is returned.

Definition at line 86 of file gnutls_priority.c.

References GNUTLS_E_NO_CIPHER_SUITES, MHD_gtls_session_int::internals, MHD_gnutls_assert, and MHD_gtls_internals_st::priorities.

Referenced by MHD__gnutls_priority_set_direct(), and MHD_accept_connection().

Here is the caller graph for this function:

int MHD__gnutls_priority_set_direct ( MHD_gtls_session_t  session,
const char *  priorities,
const char **  err_pos 
)

MHD__gnutls_priority_set_direct - Sets priorities for the cipher suites supported by gnutls. : is a MHD_gtls_session_t structure. : is a string describing priorities : In case of an error this will have the position in the string the error occured

Sets the priorities to use on the ciphers, key exchange methods, macs and compression methods. This function avoids keeping a priority cache and is used to directly set string priorities to a TLS session. For documentation check the MHD_tls_set_default_priority().

On syntax error GNUTLS_E_INVALID_REQUEST is returned and 0 on success.

Definition at line 219 of file gnutls_priority.c.

References MHD__gnutls_priority_deinit(), MHD__gnutls_priority_set(), MHD_gnutls_assert, and MHD_tls_set_default_priority().

Here is the call graph for this function:

enum MHD_GNUTLS_Protocol MHD__gnutls_protocol_get_version ( MHD_gtls_session_t  session  ) 

int MHD__gnutls_record_get_direction ( MHD_gtls_session_t  session  ) 

MHD__gnutls_record_get_direction - This function will return the direction of the last interrupted function call : is a MHD_gtls_session_t structure.

This function provides information about the internals of the record protocol and is only useful if a prior gnutls function call (e.g. MHD__gnutls_handshake()) was interrupted for some reason, that is, if a function returned GNUTLS_E_INTERRUPTED or GNUTLS_E_AGAIN. In such a case, you might want to call select() or poll() before calling the interrupted gnutls function again. To tell you whether a file descriptor should be selected for either reading or writing, MHD__gnutls_record_get_direction() returns 0 if the interrupted function was trying to read data, and 1 if it was trying to write data.

Returns: 0 if trying to read data, 1 if trying to write data.

Definition at line 801 of file gnutls_state.c.

References MHD_gtls_internals_st::direction, and MHD_gtls_session_int::internals.

ssize_t MHD__gnutls_record_recv ( MHD_gtls_session_t  session,
void *  data,
size_t  sizeofdata 
)

MHD__gnutls_record_recv - reads data from the TLS record protocol : is a MHD_gtls_session_t structure. : the buffer that the data will be read into : the number of requested bytes

This function has the similar semantics with recv(). The only difference is that is accepts a GNUTLS session, and uses different error codes.

In the special case that a server requests a renegotiation, the client may receive an error code of GNUTLS_E_REHANDSHAKE. This message may be simply ignored, replied with an alert containing NO_RENEGOTIATION, or replied with a new handshake, depending on the client's will.

If EINTR is returned by the internal push function (the default is recv()) then GNUTLS_E_INTERRUPTED will be returned. If GNUTLS_E_INTERRUPTED or GNUTLS_E_AGAIN is returned, you must call this function again to get the data. See also MHD__gnutls_record_get_direction().

A server may also receive GNUTLS_E_REHANDSHAKE when a client has initiated a handshake. In that case the server can only initiate a handshake or terminate the connection.

Returns: the number of bytes received and zero on EOF. A negative error code is returned in case of an error. The number of bytes received might be less than .

Definition at line 1082 of file gnutls_record.c.

References GNUTLS_APPLICATION_DATA, and MHD_gtls_recv_int().

Here is the call graph for this function:

ssize_t MHD__gnutls_record_send ( MHD_gtls_session_t  session,
const void *  data,
size_t  sizeofdata 
)

MHD__gnutls_record_send - sends to the peer the specified data : is a MHD_gtls_session_t structure. : contains the data to send : is the length of the data

This function has the similar semantics with send(). The only difference is that is accepts a GNUTLS session, and uses different error codes.

Note that if the send buffer is full, send() will block this function. See the send() documentation for full information. You can replace the default push function by using MHD__gnutls_transport_set_ptr2() with a call to send() with a MSG_DONTWAIT flag if blocking is a problem.

If the EINTR is returned by the internal push function (the default is send()} then GNUTLS_E_INTERRUPTED will be returned. If GNUTLS_E_INTERRUPTED or GNUTLS_E_AGAIN is returned, you must call this function again, with the same parameters; alternatively you could provide a NULL pointer for data, and 0 for size. cf. MHD__gnutls_record_get_direction().

Returns: the number of bytes sent, or a negative error code. The number of bytes sent might be less than . The maximum number of bytes this function can send in a single call depends on the negotiated maximum record size.

Definition at line 1044 of file gnutls_record.c.

References GNUTLS_APPLICATION_DATA, and MHD_gtls_send_int().

Referenced by MHD_connection_handle_write().

Here is the call graph for this function:

Here is the caller graph for this function:

int MHD__gnutls_rehandshake ( MHD_gtls_session_t  session  ) 

MHD__gnutls_rehandshake - This function will renegotiate security parameters : is a MHD_gtls_session_t structure.

This function will renegotiate security parameters with the client. This should only be called in case of a server.

This message informs the peer that we want to renegotiate parameters (perform a handshake).

If this function succeeds (returns 0), you must call the MHD__gnutls_handshake() function in order to negotiate the new parameters.

If the client does not wish to renegotiate parameters he will should with an alert message, thus the return code will be GNUTLS_E_WARNING_ALERT_RECEIVED and the alert will be GNUTLS_A_NO_RENEGOTIATION. A client may also choose to ignore this message.

Returns: GNUTLS_E_SUCCESS on success, otherwise an error.

Definition at line 1972 of file gnutls_handshake.c.

References AGAIN, GNUTLS_HANDSHAKE_HELLO_REQUEST, MHD__gnutls_send_empty_handshake(), MHD_gnutls_assert, STATE, STATE0, and STATE50.

Here is the call graph for this function:

void MHD__gnutls_rsa_params_deinit ( MHD_gtls_rsa_params_t  rsa_params  ) 

MHD__gnutls_rsa_params_deinit - This function will deinitialize the RSA parameters : Is a structure that holds the parameters

This function will deinitialize the RSA parameters structure.

Definition at line 60 of file gnutls_rsa_export.c.

References MHD_gnutls_x509_privkey_deinit().

Referenced by deinit_internal_params().

Here is the call graph for this function:

Here is the caller graph for this function:

int MHD__gnutls_rsa_params_generate2 ( MHD_gtls_rsa_params_t  params,
unsigned int  bits 
)

int MHD__gnutls_rsa_params_init ( MHD_gtls_rsa_params_t rsa_params  ) 

void MHD__gnutls_transport_set_lowat ( MHD_gtls_session_t  session,
int  num 
)

MHD__gnutls_transport_set_lowat - Used to set the lowat value in order for select to check for pending data. : is a MHD_gtls_session_t structure. : is the low water value.

Used to set the lowat value in order for select to check if there are pending data to socket buffer. Used only if you have changed the default low water value (default is 1). Normally you will not need that function. This function is only useful if using berkeley style sockets. Otherwise it must be called and set lowat to zero.

Definition at line 77 of file gnutls_record.c.

Referenced by MHD__gnutls_init().

Here is the caller graph for this function:

void MHD__gnutls_transport_set_ptr ( MHD_gtls_session_t  session,
MHD_gnutls_transport_ptr_t  ptr 
)

MHD__gnutls_transport_set_ptr - Used to set first argument of the transport functions : is a MHD_gtls_session_t structure. : is the value.

Used to set the first argument of the transport function (like PUSH and PULL). In berkeley style sockets this function will set the connection handle.

Definition at line 92 of file gnutls_record.c.

References MHD_gtls_session_int::internals, MHD_gtls_internals_st::transport_recv_ptr, and MHD_gtls_internals_st::transport_send_ptr.

Referenced by MHD_accept_connection().

Here is the caller graph for this function:

void MHD__gnutls_transport_set_pull_function ( MHD_gtls_session_t  session,
MHD_gtls_pull_func  pull_func 
)

MHD__gnutls_transport_set_pull_function - This function sets a read like function : a callback function similar to read() : gnutls session

This is the function where you set a function for gnutls to receive data. Normally, if you use berkeley style sockets, do not need to use this function since the default (recv(2)) will probably be ok.

PULL_FUNC is of the form, ssize_t (*MHD_gtls_pull_func)(MHD_gnutls_transport_ptr_t, void*, size_t);

Definition at line 277 of file gnutls_global.c.

References MHD_gtls_session_int::internals, and MHD_gtls_internals_st::MHD__gnutls_pull_func.

Referenced by MHD_accept_connection().

Here is the caller graph for this function:

void MHD__gnutls_transport_set_push_function ( MHD_gtls_session_t  session,
MHD_gtls_push_func  push_func 
)

MHD__gnutls_transport_set_push_function - This function sets the function to send data : a callback function similar to write() : gnutls session

This is the function where you set a push function for gnutls to use in order to send data. If you are going to use berkeley style sockets, you do not need to use this function since the default (send(2)) will probably be ok. Otherwise you should specify this function for gnutls to be able to send data.

PUSH_FUNC is of the form, ssize_t (*MHD_gtls_push_func)(MHD_gnutls_transport_ptr_t, const void*, size_t);

Definition at line 298 of file gnutls_global.c.

References MHD_gtls_session_int::internals, and MHD_gtls_internals_st::MHD__gnutls_push_func.

Referenced by MHD_accept_connection().

Here is the caller graph for this function:

MHD_gnutls_alert_description_t MHD_gnutls_alert_get ( MHD_gtls_session_t  session  ) 

MHD_gnutls_alert_get - Returns the last alert number received. : is a MHD_gtls_session_t structure.

This function will return the last alert number received. This function should be called if GNUTLS_E_WARNING_ALERT_RECEIVED or GNUTLS_E_FATAL_ALERT_RECEIVED has been returned by a gnutls function. The peer may send alerts if he thinks some things were not right. Check gnutls.h for the available alert descriptions.

If no alert has been received the returned value is undefined.

Definition at line 293 of file gnutls_alert.c.

References MHD_gtls_session_int::internals, and MHD_gtls_internals_st::last_alert.

Referenced by MHD__gnutls_abort_handshake(), and MHD_gtls_recv_client_certificate().

Here is the caller graph for this function:

enum MHD_GNUTLS_CredentialsType MHD_gtls_auth_get_type ( MHD_gtls_session_t  session  ) 

MHD_gtls_auth_get_type - Returns the type of credentials for the current authentication schema. : is a MHD_gtls_session_t structure.

Returns type of credentials for the current authentication schema. The returned information is to be used to distinguish the function used to access authentication data.

Eg. for CERTIFICATE ciphersuites (key exchange algorithms: KX_RSA, KX_DHE_RSA), the same function are to be used to access the authentication data.

Definition at line 160 of file gnutls_auth.c.

References MHD_gtls_security_param_st::entity, GNUTLS_SERVER, MHD_gtls_cipher_suite_get_kx_algo(), MHD_gtls_map_kx_get_cred(), and MHD_gtls_session_int::security_parameters.

Referenced by MHD_gtls_auth_info_set(), MHD_gtls_dh_set_group(), MHD_gtls_dh_set_peer_public(), and MHD_gtls_dh_set_secret_bits().

Here is the call graph for this function:

Here is the caller graph for this function:

int MHD_gtls_error_is_fatal ( int  error  ) 

MHD_gtls_error_is_fatal - Returns non-zero in case of a fatal error : is an error returned by a gnutls function. Error should be a negative value.

If a function returns a negative value you may feed that value to this function to see if it is fatal. Returns 1 for a fatal error 0 otherwise. However you may want to check the error code manually, since some non-fatal errors to the protocol may be fatal for you (your program).

This is only useful if you are dealing with errors from the record layer or the handshake layer.

For positive values, 0 is returned.

Definition at line 274 of file gnutls_errors.c.

References GNUTLS_ERROR_ALG_LOOP.

Referenced by MHD_gtls_io_read_buffered(), MHD_gtls_recv_int(), and MHD_gtls_send_int().

Here is the caller graph for this function:

int MHD_gtls_error_to_alert ( int  err,
int *  level 
)

MHD_gtls_error_to_alert - This function returns an alert code based on the given error code : is a negative integer : the alert level will be stored there

Returns an alert depending on the error code returned by a gnutls function. All alerts sent by this function should be considered fatal. The only exception is when err == GNUTLS_E_REHANDSHAKE, where a warning alert should be sent to the peer indicating that no renegotiation will be performed.

If there is no mapping to a valid alert the alert to indicate internal error is returned.

Definition at line 152 of file gnutls_alert.c.

References GNUTLS_A_BAD_CERTIFICATE, GNUTLS_A_BAD_RECORD_MAC, GNUTLS_A_DECOMPRESSION_FAILURE, GNUTLS_A_HANDSHAKE_FAILURE, GNUTLS_A_ILLEGAL_PARAMETER, GNUTLS_A_INSUFFICIENT_SECURITY, GNUTLS_A_INTERNAL_ERROR, GNUTLS_A_NO_RENEGOTIATION, GNUTLS_A_PROTOCOL_VERSION, GNUTLS_A_RECORD_OVERFLOW, GNUTLS_A_UNEXPECTED_MESSAGE, GNUTLS_A_UNSUPPORTED_CERTIFICATE, GNUTLS_A_UNSUPPORTED_EXTENSION, GNUTLS_AL_FATAL, GNUTLS_AL_WARNING, GNUTLS_E_ASN1_DER_ERROR, GNUTLS_E_ASN1_DER_OVERFLOW, GNUTLS_E_ASN1_ELEMENT_NOT_FOUND, GNUTLS_E_ASN1_GENERIC_ERROR, GNUTLS_E_ASN1_IDENTIFIER_NOT_FOUND, GNUTLS_E_ASN1_SYNTAX_ERROR, GNUTLS_E_ASN1_TAG_ERROR, GNUTLS_E_ASN1_TAG_IMPLICIT, GNUTLS_E_ASN1_TYPE_ANY_ERROR, GNUTLS_E_ASN1_VALUE_NOT_FOUND, GNUTLS_E_ASN1_VALUE_NOT_VALID, GNUTLS_E_DECOMPRESSION_FAILED, GNUTLS_E_DECRYPTION_FAILED, GNUTLS_E_DH_PRIME_UNACCEPTABLE, GNUTLS_E_ILLEGAL_SRP_USERNAME, GNUTLS_E_INSUFFICIENT_CREDENTIALS, GNUTLS_E_INTERNAL_ERROR, GNUTLS_E_NO_CERTIFICATE_FOUND, GNUTLS_E_NO_CIPHER_SUITES, GNUTLS_E_NO_COMPRESSION_ALGORITHMS, GNUTLS_E_NO_TEMPORARY_DH_PARAMS, GNUTLS_E_NO_TEMPORARY_RSA_PARAMS, GNUTLS_E_RECEIVED_ILLEGAL_EXTENSION, GNUTLS_E_RECEIVED_ILLEGAL_PARAMETER, GNUTLS_E_REHANDSHAKE, GNUTLS_E_UNEXPECTED_HANDSHAKE_PACKET, GNUTLS_E_UNEXPECTED_PACKET, GNUTLS_E_UNEXPECTED_PACKET_LENGTH, GNUTLS_E_UNKNOWN_CIPHER_SUITE, GNUTLS_E_UNKNOWN_COMPRESSION_ALGORITHM, GNUTLS_E_UNSUPPORTED_CERTIFICATE_TYPE, and GNUTLS_E_UNSUPPORTED_VERSION_PACKET.

Referenced by MHD__gnutls_alert_send_appropriate().

Here is the caller graph for this function:

void MHD_gtls_global_set_log_function ( MHD_gnutls_log_func  log_func  ) 

MHD_gtls_global_set_log_function - This function sets the logging function : it's a log function

This is the function where you set the logging function gnutls is going to use. This function only accepts a character array. Normally you may not use this function since it is only used for debugging purposes.

MHD_gnutls_log_func is of the form, void (*MHD_gnutls_log_func)( int level, const char*);

Definition at line 72 of file gnutls_global.c.

References MHD__gnutls_log_func.

void MHD_gtls_global_set_log_level ( int  level  ) 

MHD_gtls_global_set_log_level - This function sets the logging level : it's an integer from 0 to 9.

This is the function that allows you to set the log level. The level is an integer between 0 and 9. Higher values mean more verbosity. The default value is 0. Larger values should only be used with care, since they may reveal sensitive information.

Use a log level over 10 to enable all debugging options.

Definition at line 90 of file gnutls_global.c.

References MHD__gnutls_log_level.

void MHD_gtls_perror ( int  error  ) 

MHD_gtls_perror - prints a string to stderr with a description of an error : is an error returned by a gnutls function. Error is always a negative value.

This function is like perror(). The only difference is that it accepts an error number returned by a gnutls function.

Definition at line 296 of file gnutls_errors.c.

References _, and GNUTLS_ERROR_ALG_LOOP.

const char* MHD_gtls_strerror ( int  error  ) 

MHD_gtls_strerror - Returns a string with a description of an error : is an error returned by a gnutls function. Error is always a negative value.

This function is similar to strerror(). Differences: it accepts an error number returned by a gnutls function; In case of an unknown error a descriptive string is sent instead of NULL.

Definition at line 317 of file gnutls_errors.c.

References _, and GNUTLS_ERROR_ALG_LOOP.

Referenced by MHD_gtls_remove_unwanted_ciphersuites().

Here is the caller graph for this function:

int MHD_tls_set_default_priority ( MHD_gnutls_priority_t priority_cache,
const char *  priorities,
const char **  err_pos 
)

MHD_tls_set_default_priority - Sets priorities for the cipher suites supported by gnutls. : is a MHD_gnutls_prioritity_t structure. : is a string describing priorities : In case of an error this will have the position in the string the error occured

Sets priorities for the ciphers, key exchange methods, macs and compression methods. This is to avoid using the MHD_gnutls_*_priority() functions.

The priorities option allows you to specify a semi-colon separated list of the cipher priorities to enable.

Unless the first keyword is "NONE" the defaults are: Protocols: TLS1.1, TLS1.0, and SSL3.0. Compression: NULL. Certificate types: X.509, OpenPGP.

You can also use predefined sets of ciphersuites: "PERFORMANCE" all the "secure" ciphersuites are enabled, limited to 128 bit ciphers and sorted by terms of speed performance.

"NORMAL" option enables all "secure" ciphersuites. The 256-bit ciphers are included as a fallback only. The ciphers are sorted by security margin.

"SECURE128" flag enables all "secure" ciphersuites with ciphers up to 128 bits, sorted by security margin.

"SECURE256" flag enables all "secure" ciphersuites including the 256 bit ciphers, sorted by security margin.

"EXPORT" all the ciphersuites are enabled, including the low-security 40 bit ciphers.

"NONE" nothing is enabled. This disables even protocols and compression methods.

Special keywords: '!' or '-' appended with an algorithm will remove this algorithm. '+' appended with an algorithm will add this algorithm. 'COMPAT' will enable compatibility features for a server.

To avoid collisions in order to specify a compression algorithm in this string you have to prefix it with "COMP-", protocol versions with "VERS-" and certificate types with "CTYPE-". All other algorithms don't need a prefix.

For key exchange algorithms when in NORMAL or SECURE levels the perfect forward secrecy algorithms take precendence of the other protocols. In all cases all the supported key exchange algorithms are enabled (except for the RSA-EXPORT which is only enabled in EXPORT level).

Note that although one can select very long key sizes (such as 256 bits) for symmetric algorithms, to actually increase security the public key algorithms have to use longer key sizes as well.

Examples: "NORMAL:!AES-128-CBC", "EXPORT:!VERS-TLS1.0:+COMP-DEFLATE:+CTYPE-OPENPGP", "NONE:+VERS-TLS1.0:+AES-128-CBC:+RSA:+SHA1:+COMP-NULL", "NORMAL", "NORMAL:%COMPAT".

Returns: On syntax error GNUTLS_E_INVALID_REQUEST is returned and 0 on success.

Definition at line 167 of file gnutls_priority.c.

References _set_priority(), GNUTLS_E_MEMORY_ERROR, MHD_gnutls_assert, MHD_gnutls_calloc, MHD_gtls_cert_type_priority, MHD_gtls_cipher_priority_secure256, MHD_gtls_comp_priority, MHD_gtls_kx_priority_secure, MHD_gtls_mac_priority_secure, and MHD_gtls_protocol_priority.

Referenced by MHD__gnutls_priority_set_direct(), and MHD_start_daemon_va().

Here is the call graph for this function:

Here is the caller graph for this function:


Variable Documentation

Definition at line 31 of file gnutls_mem.c.

Referenced by _select_client_cert(), alloc_and_load_x509_certs(), call_get_cert_callback(), gen_dhe_server_kx(), gen_rsa_export_server_kx(), MHD__gnutls_base64_decode(), MHD__gnutls_certificate_free_cas(), MHD__gnutls_certificate_free_credentials(), MHD__gnutls_certificate_free_keys(), MHD__gnutls_copy_certificate_auth_info(), MHD__gnutls_credentials_clear(), MHD__gnutls_credentials_set(), MHD__gnutls_deinit(), MHD__gnutls_dh_params_deinit(), MHD__gnutls_fbase64_decode(), MHD__gnutls_fbase64_encode(), MHD__gnutls_global_init(), MHD__gnutls_init(), MHD__gnutls_priority_deinit(), MHD__gnutls_recv_finished(), MHD__gnutls_recv_supplemental(), MHD__gnutls_server_select_comp_method(), MHD__gnutls_set_keys(), MHD__gnutls_x509_der_encode(), MHD__gnutls_x509_export_int(), MHD__gnutls_x509_get_pk_algorithm(), MHD__gnutls_x509_read_value(), MHD_gnutls_hash_copy(), MHD_gnutls_hash_deinit(), MHD_gnutls_MHD_hmac_deinit(), MHD_gnutls_x509_crt_deinit(), MHD_gnutls_x509_crt_import(), MHD_gnutls_x509_crt_init(), MHD_gnutls_x509_privkey_deinit(), MHD_gtls_free_auth_info(), MHD_gtls_gen_dh_common_client_kx(), MHD_gtls_gen_extensions(), MHD_gtls_hash_init(), MHD_gtls_MHD_hmac_init(), MHD_gtls_mpi_dprint(), MHD_gtls_mpi_dprint_lz(), MHD_gtls_proc_x509_server_certificate(), MHD_gtls_realloc_fast(), MHD_gtls_recv_client_certificate(), MHD_gtls_recv_client_certificate_verify_message(), MHD_gtls_recv_client_kx_message(), MHD_gtls_recv_handshake(), MHD_gtls_recv_server_certificate(), MHD_gtls_recv_server_certificate_request(), MHD_gtls_recv_server_kx_message(), MHD_gtls_remove_unwanted_ciphersuites(), MHD_gtls_selected_certs_deinit(), MHD_gtls_send_client_certificate(), MHD_gtls_send_client_certificate_verify(), MHD_gtls_send_client_kx_message(), MHD_gtls_send_int(), MHD_gtls_send_server_certificate(), MHD_gtls_send_server_certificate_request(), MHD_gtls_send_server_kx_message(), MHD_gtls_server_select_suite(), MHD_gtls_supported_ciphersuites(), MHD_gtls_supported_compression_methods(), and MHD_gtls_x509_crt_to_gcert().


Generated on Sun Jul 26 17:21:15 2009 for GNU libmicrohttpd by  doxygen 1.5.9