gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r7906 - in libmicrohttpd/src: daemon/https daemon/https/tls


From: gnunet
Subject: [GNUnet-SVN] r7906 - in libmicrohttpd/src: daemon/https daemon/https/tls include
Date: Sun, 16 Nov 2008 01:46:25 -0700 (MST)

Author: grothoff
Date: 2008-11-16 01:46:25 -0700 (Sun, 16 Nov 2008)
New Revision: 7906

Removed:
   libmicrohttpd/src/daemon/https/tls/gnutls_session.c
   libmicrohttpd/src/daemon/https/tls/gnutls_session_pack.c
   libmicrohttpd/src/daemon/https/tls/gnutls_session_pack.h
Modified:
   libmicrohttpd/src/daemon/https/gnutls.h
   libmicrohttpd/src/daemon/https/tls/Makefile.am
   libmicrohttpd/src/daemon/https/tls/auth_cert.c
   libmicrohttpd/src/daemon/https/tls/debug.c
   libmicrohttpd/src/daemon/https/tls/debug.h
   libmicrohttpd/src/daemon/https/tls/ext_oprfi.c
   libmicrohttpd/src/daemon/https/tls/ext_server_name.c
   libmicrohttpd/src/daemon/https/tls/gnutls_algorithms.c
   libmicrohttpd/src/daemon/https/tls/gnutls_algorithms.h
   libmicrohttpd/src/daemon/https/tls/gnutls_auth.c
   libmicrohttpd/src/daemon/https/tls/gnutls_buffers.c
   libmicrohttpd/src/daemon/https/tls/gnutls_buffers.h
   libmicrohttpd/src/daemon/https/tls/gnutls_cert.c
   libmicrohttpd/src/daemon/https/tls/gnutls_cert.h
   libmicrohttpd/src/daemon/https/tls/gnutls_datum.c
   libmicrohttpd/src/daemon/https/tls/gnutls_datum.h
   libmicrohttpd/src/daemon/https/tls/gnutls_extensions.c
   libmicrohttpd/src/daemon/https/tls/gnutls_handshake.c
   libmicrohttpd/src/daemon/https/tls/gnutls_mem.c
   libmicrohttpd/src/daemon/https/tls/gnutls_priority.c
   libmicrohttpd/src/daemon/https/tls/gnutls_record.c
   libmicrohttpd/src/daemon/https/tls/gnutls_state.c
   libmicrohttpd/src/daemon/https/tls/gnutls_str.c
   libmicrohttpd/src/daemon/https/tls/gnutls_str.h
   libmicrohttpd/src/daemon/https/tls/gnutls_supplemental.c
   libmicrohttpd/src/include/microhttpd.h
Log:
more DCE

Modified: libmicrohttpd/src/daemon/https/gnutls.h
===================================================================
--- libmicrohttpd/src/daemon/https/gnutls.h     2008-11-16 07:36:05 UTC (rev 
7905)
+++ libmicrohttpd/src/daemon/https/gnutls.h     2008-11-16 08:46:25 UTC (rev 
7906)
@@ -239,57 +239,22 @@
 
   enum MHD_GNUTLS_CompressionMethod
     MHD_gtls_compression_get (MHD_gtls_session_t session);
-//  enum MHD_GNUTLS_CipherAlgorithm MHD_gnutls_cipher_get (MHD_gtls_session_t 
session);
-//  enum MHD_GNUTLS_KeyExchangeAlgorithm MHD_gnutls_kx_get (MHD_gtls_session_t 
session);
-//  enum MHD_GNUTLS_HashAlgorithm MHD_gnutls_mac_get (MHD_gtls_session_t 
session);
-//  enum MHD_GNUTLS_CertificateType MHD_gnutls_certificate_type_get 
(MHD_gtls_session_t
-//                                                         session);
-
   size_t MHD__gnutls_cipher_get_key_size (enum MHD_GNUTLS_CipherAlgorithm
                                           algorithm);
-  size_t MHD__gnutls_mac_get_key_size (enum MHD_GNUTLS_HashAlgorithm
-                                       algorithm);
 
 /* the name of the specified algorithms */
-  const char *MHD__gnutls_cipher_get_name (enum MHD_GNUTLS_CipherAlgorithm
-                                           algorithm);
-  const char *MHD__gnutls_mac_get_name (enum MHD_GNUTLS_HashAlgorithm
-                                        algorithm);
   const char *MHD_gtls_compression_get_name (enum
                                              MHD_GNUTLS_CompressionMethod
                                              algorithm);
-  const char *MHD__gnutls_kx_get_name (enum MHD_GNUTLS_KeyExchangeAlgorithm
-                                       algorithm);
-  const char *MHD__gnutls_certificate_type_get_name (enum
-                                                     MHD_GNUTLS_CertificateType
-                                                     type);
-
-  enum MHD_GNUTLS_HashAlgorithm MHD_gtls_mac_get_id (const char *name);
   enum MHD_GNUTLS_CompressionMethod MHD_gtls_compression_get_id (const char
                                                                  *name);
-  enum MHD_GNUTLS_CipherAlgorithm MHD_gtls_cipher_get_id (const char *name);
-  enum MHD_GNUTLS_KeyExchangeAlgorithm MHD_gtls_kx_get_id (const char *name);
-  enum MHD_GNUTLS_Protocol MHD_gtls_protocol_get_id (const char *name);
-  enum MHD_GNUTLS_CertificateType MHD_gtls_certificate_type_get_id (const char
-                                                                    *name);
 
-  /* list supported algorithms */
-  const enum MHD_GNUTLS_CipherAlgorithm *MHD_gtls_cipher_list (void);
-  const enum MHD_GNUTLS_HashAlgorithm *MHD_gtls_mac_list (void);
-  const enum MHD_GNUTLS_CompressionMethod *MHD_gtls_compression_list (void);
-  const enum MHD_GNUTLS_Protocol *MHD_gtls_protocol_list (void);
-  const enum MHD_GNUTLS_CertificateType
-    *MHD_gtls_certificate_type_list (void);
-  const enum MHD_GNUTLS_KeyExchangeAlgorithm *MHD_gtls_kx_list (void);
-
   /* error functions */
   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);
 
-  void MHD_gtls_handshake_set_private_extensions (MHD_gtls_session_t session,
-                                                  int allow);
 /*
  * Record layer functions.
  */
@@ -299,26 +264,8 @@
                                    size_t sizeofdata);
 
   /* provides extra compatibility */
-  void MHD_gtls_record_disable_padding (MHD_gtls_session_t session);
-  size_t MHD_gtls_record_check_pending (MHD_gtls_session_t session);
-
   int MHD__gnutls_record_get_direction (MHD_gtls_session_t session);
-  size_t MHD__gnutls_record_get_max_size (MHD_gtls_session_t session);
-  ssize_t MHD__gnutls_record_set_max_size (MHD_gtls_session_t session,
-                                           size_t size);
 
-
-  int MHD__gnutls_prf (MHD_gtls_session_t session,
-                       size_t label_size, const char *label,
-                       int server_random_first,
-                       size_t extra_size, const char *extra,
-                       size_t outsize, char *out);
-
-  int MHD__gnutls_prf_raw (MHD_gtls_session_t session,
-                           size_t label_size, const char *label,
-                           size_t seed_size, const char *seed,
-                           size_t outsize, char *out);
-
 /*
  * TLS Extensions
  */
@@ -327,22 +274,10 @@
     GNUTLS_NAME_DNS = 1
   } MHD_gnutls_server_name_type_t;
 
-  int MHD__gnutls_server_name_set (MHD_gtls_session_t session,
-                                   MHD_gnutls_server_name_type_t type,
-                                   const void *name, size_t name_length);
-
-  int MHD__gnutls_server_name_get (MHD_gtls_session_t session,
-                                   void *data, size_t * data_length,
-                                   unsigned int *type, unsigned int indx);
-
   /* Opaque PRF Input
    * http://tools.ietf.org/id/draft-rescorla-tls-opaque-prf-input-00.txt
    */
 
-  void
-    MHD_gtls_oprfi_enable_client (MHD_gtls_session_t session,
-                                  size_t len, unsigned char *data);
-
   typedef int (*MHD_gnutls_oprfi_callback_func) (MHD_gtls_session_t session,
                                                  void *userdata,
                                                  size_t oprfi_len,
@@ -350,33 +285,13 @@
                                                  *in_oprfi,
                                                  unsigned char *out_oprfi);
 
-  void
-    MHD_gtls_oprfi_enable_server (MHD_gtls_session_t session,
-                                  MHD_gnutls_oprfi_callback_func cb,
-                                  void *userdata);
-
   /* Supplemental data, RFC 4680. */
   typedef enum
   {
     GNUTLS_SUPPLEMENTAL_USER_MAPPING_DATA = 0
   } MHD_gnutls_supplemental_data_format_type_t;
 
-  const char *MHD_gtls_supplemental_get_name
-    (MHD_gnutls_supplemental_data_format_type_t type);
 
-  int MHD__gnutls_cipher_set_priority (MHD_gtls_session_t session,
-                                       const int *list);
-  int MHD__gnutls_mac_set_priority (MHD_gtls_session_t session,
-                                    const int *list);
-  int MHD__gnutls_compression_set_priority (MHD_gtls_session_t session,
-                                            const int *list);
-  int MHD__gnutls_kx_set_priority (MHD_gtls_session_t session,
-                                   const int *list);
-  int MHD__gnutls_protocol_set_priority (MHD_gtls_session_t session,
-                                         const int *list);
-  int MHD__gnutls_certificate_type_set_priority (MHD_gtls_session_t session,
-                                                 const int *list);
-
   int MHD_tls_set_default_priority (MHD_gnutls_priority_t *,
                                     const char *priority,
                                     const char **err_pos);
@@ -392,38 +307,8 @@
   enum MHD_GNUTLS_Protocol
     MHD__gnutls_protocol_get_version (MHD_gtls_session_t session);
 
-  const char *MHD__gnutls_protocol_get_name (enum MHD_GNUTLS_Protocol
-                                             version);
-
-/*
- * get/set session
- */
-//  int MHD_gnutls_session_set_data (MHD_gtls_session_t session,
-//                               const void *session_data,
-//                               size_t session_data_size);
-//  int MHD_gnutls_session_get_data (MHD_gtls_session_t session, void 
*session_data,
-//                               size_t * session_data_size);
-//  int MHD_gnutls_session_get_data2 (MHD_gtls_session_t session,
-//                                MHD_gnutls_datum_t * data);
-
-  int MHD_gtls_session_get_id (MHD_gtls_session_t session, void *session_id,
-                               size_t * session_id_size);
-
-/* returns security values.
- * Do not use them unless you know what you're doing.
- */
-  const void *MHD_gtls_session_get_server_random (MHD_gtls_session_t session);
-  const void *MHD_gtls_session_get_client_random (MHD_gtls_session_t session);
-  const void *MHD_gtls_session_get_master_secret (MHD_gtls_session_t session);
-
-  int MHD_gtls_session_is_resumed (MHD_gtls_session_t session);
-
   typedef
     int (*MHD_gnutls_handshake_post_client_hello_func) (MHD_gtls_session_t);
-  void
-    MHD__gnutls_handshake_set_post_client_hello_function (MHD_gtls_session_t,
-                                                          
MHD_gnutls_handshake_post_client_hello_func);
-
   void MHD__gnutls_handshake_set_max_packet_length (MHD_gtls_session_t
                                                     session, size_t max);
 
@@ -490,17 +375,6 @@
   struct MHD_gnutls_x509_crt_int;
   typedef struct MHD_gnutls_x509_crt_int *MHD_gnutls_x509_crt_t;
 
-//  int MHD_gnutls_certificate_set_x509_key (MHD_gtls_cert_credentials_t res,
-//                                       MHD_gnutls_x509_crt_t * cert_list,
-//                                       int cert_list_size,
-//                                       MHD_gnutls_x509_privkey_t key);
-//  int MHD_gnutls_certificate_set_x509_trust (MHD_gtls_cert_credentials_t res,
-//                                         MHD_gnutls_x509_crt_t * ca_list,
-//                                         int ca_list_size);
-//  int MHD_gnutls_certificate_set_x509_crl (MHD_gtls_cert_credentials_t res,
-//                                       MHD_gnutls_x509_crl_t * crl_list,
-//                                       int crl_list_size);
-
 /* global state functions
  */
 
@@ -518,8 +392,6 @@
   extern MHD_gnutls_calloc_function MHD_gnutls_calloc;
   extern MHD_gnutls_free_function MHD_gnutls_free;
 
-  extern char *(*MHD_gnutls_strdup) (const char *);
-
   typedef void (*MHD_gnutls_log_func) (int, const char *);
   void MHD_gtls_global_set_log_function (MHD_gnutls_log_func log_func);
   void MHD_gtls_global_set_log_level (int level);
@@ -549,10 +421,6 @@
                                          const void *, size_t);
   void MHD__gnutls_transport_set_ptr (MHD_gtls_session_t session,
                                       MHD_gnutls_transport_ptr_t ptr);
-  void MHD__gnutls_transport_set_ptr2 (MHD_gtls_session_t session,
-                                       MHD_gnutls_transport_ptr_t recv_ptr,
-                                       MHD_gnutls_transport_ptr_t send_ptr);
-
   void MHD__gnutls_transport_set_lowat (MHD_gtls_session_t session, int num);
 
 
@@ -561,15 +429,6 @@
   void MHD__gnutls_transport_set_pull_function (MHD_gtls_session_t session,
                                                 MHD_gtls_pull_func pull_func);
 
-  void MHD__gnutls_transport_set_errno (MHD_gtls_session_t session, int err);
-  void MHD__gnutls_transport_set_global_errno (int err);
-
-/*
- * session specific
- */
-  void MHD__gnutls_session_set_ptr (MHD_gtls_session_t session, void *ptr);
-  void *MHD_gtls_session_get_ptr (MHD_gtls_session_t session);
-
   typedef enum MHD_gnutls_x509_subject_alt_name_t
   {
     GNUTLS_SAN_DNSNAME = 1,
@@ -620,11 +479,6 @@
    */
   enum MHD_GNUTLS_CredentialsType MHD_gtls_auth_get_type (MHD_gtls_session_t
                                                           session);
-  enum MHD_GNUTLS_CredentialsType
-    MHD_gtls_auth_server_get_type (MHD_gtls_session_t session);
-  enum MHD_GNUTLS_CredentialsType
-    MHD_gtls_auth_client_get_type (MHD_gtls_session_t session);
-
   /*
    * DH
    */
@@ -640,25 +494,6 @@
                                        const MHD_gnutls_datum_t * hash,
                                        MHD_gnutls_datum_t * signature);
 
-  void MHD_gtls_sign_callback_set (MHD_gtls_session_t session,
-                                   MHD_gnutls_sign_func sign_func,
-                                   void *userdata);
-  MHD_gnutls_sign_func MHD_gtls_sign_callback_get (MHD_gtls_session_t session,
-                                                   void **userdata);
-
-  /* These are set on the credentials structure.
-   */
-  void MHD_gtls_certificate_client_set_retrieve_function
-    (MHD_gtls_cert_credentials_t cred,
-     MHD_gnutls_certificate_client_retrieve_function * func);
-  void MHD_gtls_certificate_server_set_retrieve_function
-    (MHD_gtls_cert_credentials_t cred,
-     MHD_gnutls_certificate_server_retrieve_function * func);
-
-  void MHD_gtls_certificate_server_set_request (MHD_gtls_session_t session,
-                                                
MHD_gnutls_certificate_request_t
-                                                req);
-
   int MHD_gtls_pem_base64_encode (const char *msg,
                                   const MHD_gnutls_datum_t * data,
                                   char *result, size_t * result_size);

Modified: libmicrohttpd/src/daemon/https/tls/Makefile.am
===================================================================
--- libmicrohttpd/src/daemon/https/tls/Makefile.am      2008-11-16 07:36:05 UTC 
(rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/Makefile.am      2008-11-16 08:46:25 UTC 
(rev 7906)
@@ -54,8 +54,6 @@
 gnutls_priority.c \
 gnutls_record.c \
 gnutls_rsa_export.c \
-gnutls_session.c \
-gnutls_session_pack.c \
 gnutls_sig.c \
 gnutls_state.c \
 gnutls_str.c \
@@ -97,7 +95,6 @@
 gnutls_pk.h \
 gnutls_record.h \
 gnutls_rsa_export.h \
-gnutls_session_pack.h \
 gnutls_sig.h \
 gnutls_state.h \
 gnutls_str.h \

Modified: libmicrohttpd/src/daemon/https/tls/auth_cert.c
===================================================================
--- libmicrohttpd/src/daemon/https/tls/auth_cert.c      2008-11-16 07:36:05 UTC 
(rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/auth_cert.c      2008-11-16 08:46:25 UTC 
(rev 7906)
@@ -639,7 +639,7 @@
  */
 
 #define CLEAR_CERTS for(x=0;x<peer_certificate_list_size;x++) 
MHD_gtls_gcert_deinit(&peer_certificate_list[x])
-int
+static int
 MHD_gtls_proc_x509_server_certificate (MHD_gtls_session_t session,
                                        opaque * data, size_t data_size)
 {

Modified: libmicrohttpd/src/daemon/https/tls/debug.c
===================================================================
--- libmicrohttpd/src/daemon/https/tls/debug.c  2008-11-16 07:36:05 UTC (rev 
7905)
+++ libmicrohttpd/src/daemon/https/tls/debug.c  2008-11-16 08:46:25 UTC (rev 
7906)
@@ -94,14 +94,3 @@
     }
 }
 
-void
-MHD__gnutls_dump_mpi (const char *prefix, mpi_t a)
-{
-  opaque buf[1024];
-  size_t n = sizeof buf;
-
-  if (gcry_mpi_print (GCRYMPI_FMT_HEX, buf, n, &n, a))
-    strcpy ((char *) buf, "[can't print value]");       /* Flawfinder: ignore 
*/
-  MHD__gnutls_hard_log ("MPI: length: %d\n\t%s%s\n", (n - 1) / 2, prefix,
-                        buf);
-}

Modified: libmicrohttpd/src/daemon/https/tls/debug.h
===================================================================
--- libmicrohttpd/src/daemon/https/tls/debug.h  2008-11-16 07:36:05 UTC (rev 
7905)
+++ libmicrohttpd/src/daemon/https/tls/debug.h  2008-11-16 08:46:25 UTC (rev 
7906)
@@ -25,4 +25,3 @@
 const char *MHD__gnutls_packet2str (content_type_t packet);
 const char *MHD__gnutls_handshake2str (MHD_gnutls_handshake_description_t
                                        handshake);
-void MHD__gnutls_dump_mpi (const char *prefix, mpi_t a);

Modified: libmicrohttpd/src/daemon/https/tls/ext_oprfi.c
===================================================================
--- libmicrohttpd/src/daemon/https/tls/ext_oprfi.c      2008-11-16 07:36:05 UTC 
(rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/ext_oprfi.c      2008-11-16 08:46:25 UTC 
(rev 7906)
@@ -215,52 +215,3 @@
     return oprfi_send_server (session, data, data_size);
 }
 
-/**
- * MHD_gtls_oprfi_enable_client:
- * @session: is a #MHD_gtls_session_t structure.
- * @len: length of Opaque PRF data to use in client.
- * @data: Opaque PRF data to use in client.
- *
- * Request that the client should attempt to negotiate the Opaque PRF
- * Input TLS extension, using the given data as the client's Opaque
- * PRF input.
- *
- * The data is copied into the session context after this call, so you
- * may de-allocate it immediately after calling this function.
- **/
-void
-MHD_gtls_oprfi_enable_client (MHD_gtls_session_t session,
-                              size_t len, unsigned char *data)
-{
-  session->security_parameters.extensions.oprfi_client_len = len;
-  session->security_parameters.extensions.oprfi_client = data;
-}
-
-/**
- * MHD_gtls_oprfi_enable_server:
- * @session: is a #MHD_gtls_session_t structure.
- * @cb: function pointer to Opaque PRF extension server callback.
- * @userdata: hook passed to callback function for passing application state.
- *
- * Request that the server should attempt to accept the Opaque PRF
- * Input TLS extension.  If the client requests the extension, the
- * provided callback @cb will be invoked.  The callback must have the
- * following prototype:
- *
- * int callback (MHD_gtls_session_t session, void *userdata,
- *               size_t oprfi_len, const unsigned char *in_oprfi,
- *               unsigned char *out_oprfi);
- *
- * The callback can inspect the client-provided data in the input
- * parameters, and specify its own opaque prf input data in the output
- * variable.  The function must return 0 on success, otherwise the
- * handshake will be aborted.
- **/
-void
-MHD_gtls_oprfi_enable_server (MHD_gtls_session_t session,
-                              MHD_gnutls_oprfi_callback_func cb,
-                              void *userdata)
-{
-  session->security_parameters.extensions.oprfi_cb = cb;
-  session->security_parameters.extensions.oprfi_userdata = userdata;
-}

Modified: libmicrohttpd/src/daemon/https/tls/ext_server_name.c
===================================================================
--- libmicrohttpd/src/daemon/https/tls/ext_server_name.c        2008-11-16 
07:36:05 UTC (rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/ext_server_name.c        2008-11-16 
08:46:25 UTC (rev 7906)
@@ -209,122 +209,3 @@
   return total_size;
 }
 
-/**
-  * MHD__gnutls_server_name_get - Used to get the server name indicator send 
by a client
-  * @session: is a #MHD_gtls_session_t structure.
-  * @data: will hold the data
-  * @data_length: will hold the data length. Must hold the maximum size of 
data.
-  * @type: will hold the server name indicator type
-  * @indx: is the index of the server_name
-  *
-  * 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
-  * MHD_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.
-  *
-  **/
-int
-MHD__gnutls_server_name_get (MHD_gtls_session_t session, void *data,
-                             size_t * data_length,
-                             unsigned int *type, unsigned int indx)
-{
-  char *_data = data;
-#if MHD_DEBUG_TLS
-  if (session->security_parameters.entity == GNUTLS_CLIENT)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_INVALID_REQUEST;
-    }
-#endif
-  if (indx + 1 > session->security_parameters.extensions.server_names_size)
-    {
-      return GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE;
-    }
-
-  *type = session->security_parameters.extensions.server_names[indx].type;
-
-  if (*data_length >            /* greater since we need one extra byte for 
the null */
-      session->security_parameters.extensions.server_names[indx].name_length)
-    {
-      *data_length =
-        session->security_parameters.extensions.
-        server_names[indx].name_length;
-      memcpy (data,
-              session->security_parameters.extensions.server_names[indx].name,
-              *data_length);
-
-      if (*type == GNUTLS_NAME_DNS)     /* null terminate */
-        _data[(*data_length)] = 0;
-
-    }
-  else
-    {
-      *data_length =
-        session->security_parameters.extensions.
-        server_names[indx].name_length;
-      return GNUTLS_E_SHORT_MEMORY_BUFFER;
-    }
-
-  return 0;
-}
-
-/**
-  * MHD__gnutls_server_name_set - Used to set a name indicator to be sent as 
an extension
-  * @session: is a #MHD_gtls_session_t structure.
-  * @type: specifies the indicator type
-  * @name: is a string that contains the server name.
-  * @name_length: holds the length of name
-  *
-  * This function is to be used by clients that want to inform
-  * (via a TLS extension mechanism) the server of the name they
-  * connected to. This should be used by clients that connect
-  * to servers that do virtual hosting.
-  *
-  * The value of @name depends on the @ind type. In case of GNUTLS_NAME_DNS,
-  * an ASCII or UTF-8 null terminated string, without the trailing dot, is 
expected.
-  * IPv4 or IPv6 addresses are not permitted.
-  *
-  **/
-int
-MHD__gnutls_server_name_set (MHD_gtls_session_t session,
-                             MHD_gnutls_server_name_type_t type,
-                             const void *name, size_t name_length)
-{
-  int server_names;
-
-  if (session->security_parameters.entity == GNUTLS_SERVER)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_INVALID_REQUEST;
-    }
-
-  if (name_length > MAX_SERVER_NAME_SIZE)
-    return GNUTLS_E_SHORT_MEMORY_BUFFER;
-
-  server_names =
-    session->security_parameters.extensions.server_names_size + 1;
-
-  if (server_names > MAX_SERVER_NAME_EXTENSIONS)
-    server_names = MAX_SERVER_NAME_EXTENSIONS;
-
-  session->security_parameters.extensions.server_names[server_names -
-                                                       1].type = type;
-  memcpy (session->security_parameters.
-          extensions.server_names[server_names - 1].name, name, name_length);
-  session->security_parameters.extensions.server_names[server_names -
-                                                       1].name_length =
-    name_length;
-
-  session->security_parameters.extensions.server_names_size++;
-
-  return 0;
-}

Modified: libmicrohttpd/src/daemon/https/tls/gnutls_algorithms.c
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_algorithms.c      2008-11-16 
07:36:05 UTC (rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_algorithms.c      2008-11-16 
08:46:25 UTC (rev 7906)
@@ -54,15 +54,6 @@
   {MHD_GNUTLS_KX_DHE_RSA,
    MHD_GNUTLS_CRD_CERTIFICATE,
    MHD_GNUTLS_CRD_CERTIFICATE},
-  {MHD_GNUTLS_KX_SRP,
-   MHD_GNUTLS_CRD_SRP,
-   MHD_GNUTLS_CRD_SRP},
-  {MHD_GNUTLS_KX_SRP_RSA,
-   MHD_GNUTLS_CRD_SRP,
-   MHD_GNUTLS_CRD_CERTIFICATE},
-  {MHD_GNUTLS_KX_SRP_DSS,
-   MHD_GNUTLS_CRD_SRP,
-   MHD_GNUTLS_CRD_CERTIFICATE},
   {0,
    0,
    0}
@@ -423,17 +414,6 @@
    &MHD_gtls_dhe_dss_auth_struct,
    1,
    0},
-
-#ifdef ENABLE_SRP
-  {"SRP-DSS", MHD_GNUTLS_KX_SRP_DSS, &srp_dss_auth_struct, 0, 0},
-  {"SRP-RSA", MHD_GNUTLS_KX_SRP_RSA, &srp_rsa_auth_struct, 0, 0},
-  {"SRP", MHD_GNUTLS_KX_SRP, &srp_auth_struct, 0, 0},
-#endif
-#ifdef ENABLE_PSK
-  {"PSK", GNUTLS_KX_PSK, &psk_auth_struct, 0, 0},
-  {"DHE-PSK", GNUTLS_KX_DHE_PSK, &dhe_psk_auth_struct,
-   1 /* needs DHE params */ , 0},
-#endif
   {0,
    0,
    0,
@@ -448,15 +428,6 @@
   MHD_GNUTLS_KX_RSA_EXPORT,
   MHD_GNUTLS_KX_DHE_RSA,
   MHD_GNUTLS_KX_DHE_DSS,
-#ifdef ENABLE_SRP
-  MHD_GNUTLS_KX_SRP_DSS,
-  MHD_GNUTLS_KX_SRP_RSA,
-  MHD_GNUTLS_KX_SRP,
-#endif
-#ifdef ENABLE_PSK
-  GNUTLS_KX_PSK,
-  GNUTLS_KX_DHE_PSK,
-#endif
   0
 };
 
@@ -728,106 +699,7 @@
   return -1;
 }
 
-/**
- * MHD__gnutls_mac_get_name - Returns a string with the name of the specified 
mac algorithm
- * @algorithm: is a MAC algorithm
- *
- * Returns: a string that contains the name of the specified MAC
- * algorithm, or %NULL.
- **/
-const char *
-MHD__gnutls_mac_get_name (enum MHD_GNUTLS_HashAlgorithm algorithm)
-{
-  const char *ret = NULL;
 
-  /* avoid prefix */
-  GNUTLS_HASH_ALG_LOOP (ret = p->name);
-
-  return ret;
-}
-
-/**
- * MHD_gtls_mac_get_id - Returns the gnutls id of the specified in string 
algorithm
- * @algorithm: is a MAC algorithm name
- *
- * Returns: an %enum MHD_GNUTLS_HashAlgorithmid of the specified in a string
- * MAC algorithm, or %GNUTLS_MAC_UNKNOWN on failures.  The names are
- * compared in a case insensitive way.
- **/
-enum MHD_GNUTLS_HashAlgorithm
-MHD_gtls_mac_get_id (const char *name)
-{
-  enum MHD_GNUTLS_HashAlgorithm ret = MHD_GNUTLS_MAC_UNKNOWN;
-
-  GNUTLS_HASH_LOOP (if (strcasecmp (p->name, name) == 0) ret = p->id)
-    ;
-
-  return ret;
-}
-
-/**
- * MHD__gnutls_mac_get_key_size - Returns the length of the MAC's key size
- * @algorithm: is an encryption algorithm
- *
- * Returns: length (in bytes) of the given MAC key size, or 0 if the
- * given MAC algorithm is invalid.
- *
- **/
-size_t
-MHD__gnutls_mac_get_key_size (enum MHD_GNUTLS_HashAlgorithm algorithm)
-{
-  size_t ret = 0;
-
-  /* avoid prefix */
-  GNUTLS_HASH_ALG_LOOP (ret = p->key_size);
-
-  return ret;
-}
-
-/**
- * MHD_gtls_mac_list:
- *
- * Get a list of hash algorithms for use as MACs.  Note that not
- * necessarily all MACs are supported in TLS cipher suites.  For
- * example, MD2 is not supported as a cipher suite, but is supported
- * for other purposes (e.g., X.509 signature verification or similar).
- *
- * Returns: Return a zero-terminated list of %enum MHD_GNUTLS_HashAlgorithm
- * integers indicating the available MACs.
- **/
-const enum MHD_GNUTLS_HashAlgorithm *
-MHD_gtls_mac_list (void)
-{
-  return MHD_gtls_supported_macs;
-}
-
-const char *
-MHD_gtls_x509_mac_to_oid (enum MHD_GNUTLS_HashAlgorithm algorithm)
-{
-  const char *ret = NULL;
-
-  /* avoid prefix */
-  GNUTLS_HASH_ALG_LOOP (ret = p->oid);
-
-  return ret;
-}
-
-enum MHD_GNUTLS_HashAlgorithm
-MHD_gtls_x509_oid2mac_algorithm (const char *oid)
-{
-  enum MHD_GNUTLS_HashAlgorithm ret = 0;
-
-  GNUTLS_HASH_LOOP (if (p->oid && strcmp (oid, p->oid) == 0)
-                    {
-                    ret = p->id; break;}
-  )
-    ;
-
-  if (ret == 0)
-    return MHD_GNUTLS_MAC_UNKNOWN;
-  return ret;
-}
-
 int
 MHD_gnutls_mac_is_ok (enum MHD_GNUTLS_HashAlgorithm algorithm)
 {
@@ -840,20 +712,6 @@
   return ret;
 }
 
-/* Compression Functions */
-int
-MHD_gtls_compression_priority (MHD_gtls_session_t session,
-                               enum MHD_GNUTLS_CompressionMethod algorithm)
-{                               /* actually returns the priority */
-  unsigned int i;
-  for (i = 0; i < session->internals.priorities.compression.num_algorithms;
-       i++)
-    {
-      if (session->internals.priorities.compression.priority[i] == algorithm)
-        return i;
-    }
-  return -1;
-}
 
 /**
  * MHD__gnutls_compression_get_name - Returns a string with the name of the 
specified compression algorithm
@@ -897,21 +755,6 @@
   return ret;
 }
 
-/**
- * MHD_gtls_compression_list:
- *
- * Get a list of compression methods.  Note that to be able to use LZO
- * compression, you must link to libgnutls-extra and call
- * MHD_gnutls_global_init_extra().
- *
- * Returns: a zero-terminated list of %enum MHD_GNUTLS_CompressionMethod
- * integers indicating the available compression methods.
- **/
-const enum MHD_GNUTLS_CompressionMethod *
-MHD_gtls_compression_list (void)
-{
-  return MHD_gtls_supported_compressions;
-}
 
 /* return the tls number of the specified algorithm */
 int
@@ -1048,63 +891,7 @@
 
 }
 
-/**
- * MHD__gnutls_cipher_get_name - Returns a string with the name of the 
specified cipher algorithm
- * @algorithm: is an encryption algorithm
- *
- * Returns: a pointer to a string that contains the name of the
- *   specified cipher, or %NULL.
- **/
-const char *
-MHD__gnutls_cipher_get_name (enum MHD_GNUTLS_CipherAlgorithm algorithm)
-{
-  const char *ret = NULL;
 
-  /* avoid prefix */
-  GNUTLS_ALG_LOOP (ret = p->name);
-
-  return ret;
-}
-
-/**
- * MHD_gtls_cipher_get_id - Returns the gnutls id of the specified in string 
algorithm
- * @algorithm: is a MAC algorithm name
- *
- * The names are compared in a case insensitive way.
- *
- * Returns: an id of the specified cipher, or %GNUTLS_CIPHER_UNKNOWN
- * on error.
- *
- **/
-enum MHD_GNUTLS_CipherAlgorithm
-MHD_gtls_cipher_get_id (const char *name)
-{
-  enum MHD_GNUTLS_CipherAlgorithm ret = MHD_GNUTLS_CIPHER_UNKNOWN;
-
-  GNUTLS_LOOP (if (strcasecmp (p->name, name) == 0) ret = p->id)
-    ;
-
-  return ret;
-}
-
-/**
- * MHD_gtls_cipher_list:
- *
- * Get a list of supported cipher algorithms.  Note that not
- * necessarily all ciphers are supported as TLS cipher suites.  For
- * example, DES is not supported as a cipher suite, but is supported
- * for other purposes (e.g., PKCS#8 or similar).
- *
- * Returns: a zero-terminated list of %enum MHD_GNUTLS_CipherAlgorithm
- * integers indicating the available ciphers.
- *
- **/
-const enum MHD_GNUTLS_CipherAlgorithm *
-MHD_gtls_cipher_list (void)
-{
-  return MHD_gtls_supported_ciphers;
-}
-
 int
 MHD_gtls_cipher_is_ok (enum MHD_GNUTLS_CipherAlgorithm algorithm)
 {
@@ -1140,58 +927,7 @@
   return -1;
 }
 
-/**
- * MHD__gnutls_kx_get_name - Returns a string with the name of the specified 
key exchange algorithm
- * @algorithm: is a key exchange algorithm
- *
- * Returns: a pointer to a string that contains the name of the
- * specified key exchange algorithm, or %NULL.
- **/
-const char *
-MHD__gnutls_kx_get_name (enum MHD_GNUTLS_KeyExchangeAlgorithm algorithm)
-{
-  const char *ret = NULL;
 
-  /* avoid prefix */
-  GNUTLS_KX_ALG_LOOP (ret = p->name);
-
-  return ret;
-}
-
-/**
- * MHD_gtls_kx_get_id - Returns the gnutls id of the specified in string 
algorithm
- * @algorithm: is a KX name
- *
- * The names are compared in a case insensitive way.
- *
- * Returns: an id of the specified KX algorithm, or
- * %GNUTLS_KX_UNKNOWN on error.
- **/
-enum MHD_GNUTLS_KeyExchangeAlgorithm
-MHD_gtls_kx_get_id (const char *name)
-{
-  enum MHD_GNUTLS_CipherAlgorithm ret = MHD_GNUTLS_KX_UNKNOWN;
-
-  GNUTLS_KX_LOOP (if (strcasecmp (p->name, name) == 0) ret = p->algorithm)
-    ;
-
-  return ret;
-}
-
-/**
- * MHD_gtls_kx_list:
- *
- * Get a list of supported key exchange algorithms.
- *
- * Returns: a zero-terminated list of %enum MHD_GNUTLS_KeyExchangeAlgorithm 
integers
- * indicating the available key exchange algorithms.
- **/
-const enum MHD_GNUTLS_KeyExchangeAlgorithm *
-MHD_gtls_kx_list (void)
-{
-  return MHD_gtls_supported_kxs;
-}
-
 int
 MHD_gtls_kx_is_ok (enum MHD_GNUTLS_KeyExchangeAlgorithm algorithm)
 {
@@ -1241,29 +977,7 @@
   return -1;
 }
 
-enum MHD_GNUTLS_Protocol
-MHD_gtls_version_lowest (MHD_gtls_session_t session)
-{                               /* returns the lowest version supported */
-  unsigned int i, min = 0xff;
 
-  if (session->internals.priorities.protocol.priority == NULL)
-    {
-      return MHD_GNUTLS_PROTOCOL_VERSION_UNKNOWN;
-    }
-  else
-    for (i = 0; i < session->internals.priorities.protocol.num_algorithms;
-         i++)
-      {
-        if (session->internals.priorities.protocol.priority[i] < min)
-          min = session->internals.priorities.protocol.priority[i];
-      }
-
-  if (min == 0xff)
-    return MHD_GNUTLS_PROTOCOL_VERSION_UNKNOWN; /* unknown version */
-
-  return min;
-}
-
 enum MHD_GNUTLS_Protocol
 MHD_gtls_version_max (MHD_gtls_session_t session)
 {                               /* returns the maximum version supported */
@@ -1287,58 +1001,6 @@
   return max;
 }
 
-/**
- * MHD__gnutls_protocol_get_name - Returns a string with the name of the 
specified SSL/TLS version
- * @version: is a (gnutls) version number
- *
- * Returns: a string that contains the name of the specified TLS
- * version (e.g., "TLS 1.0"), or %NULL.
- **/
-const char *
-MHD__gnutls_protocol_get_name (enum MHD_GNUTLS_Protocol version)
-{
-  const char *ret = NULL;
-
-  /* avoid prefix */
-  GNUTLS_VERSION_ALG_LOOP (ret = p->name);
-  return ret;
-}
-
-/**
- * MHD_gtls_protocol_get_id - Returns the gnutls id of the specified in string 
protocol
- * @algorithm: is a protocol name
- *
- * The names are compared in a case insensitive way.
- *
- * Returns: an id of the specified protocol, or
- * %GNUTLS_VERSION_UNKNOWN on error.
- **/
-enum MHD_GNUTLS_Protocol
-MHD_gtls_protocol_get_id (const char *name)
-{
-  enum MHD_GNUTLS_Protocol ret = MHD_GNUTLS_PROTOCOL_VERSION_UNKNOWN;
-
-  GNUTLS_VERSION_LOOP (if (strcasecmp (p->name, name) == 0) ret = p->id)
-    ;
-
-  return ret;
-}
-
-/**
- * MHD_gtls_protocol_list:
- *
- * Get a list of supported protocols, e.g. SSL 3.0, TLS 1.0 etc.
- *
- * Returns: a zero-terminated list of %enum MHD_GNUTLS_Protocol integers
- * indicating the available protocols.
- *
- **/
-const enum MHD_GNUTLS_Protocol *
-MHD_gtls_protocol_list (void)
-{
-  return MHD_gtls_supported_protocols;
-}
-
 int
 MHD_gtls_version_get_minor (enum MHD_GNUTLS_Protocol version)
 {
@@ -1386,23 +1048,6 @@
     return 1;
 }
 
-/* Type to KX mappings */
-enum MHD_GNUTLS_KeyExchangeAlgorithm
-MHD_gtls_map_kx_get_kx (enum MHD_GNUTLS_CredentialsType type, int server)
-{
-  enum MHD_GNUTLS_KeyExchangeAlgorithm ret = -1;
-
-  if (server)
-    {
-      GNUTLS_KX_MAP_ALG_LOOP_SERVER (ret = p->algorithm);
-    }
-  else
-    {
-      GNUTLS_KX_MAP_ALG_LOOP_SERVER (ret = p->algorithm);
-    }
-  return ret;
-}
-
 enum MHD_GNUTLS_CredentialsType
 MHD_gtls_map_kx_get_cred (enum MHD_GNUTLS_KeyExchangeAlgorithm algorithm,
                           int server)
@@ -1807,62 +1452,12 @@
   return j;
 }
 
-/**
- * MHD__gnutls_certificate_type_get_name - Returns a string with the name of 
the specified certificate type
- * @type: is a certificate type
- *
- * Returns: a string (or %NULL) that contains the name of the
- * specified certificate type.
- **/
-const char *
-MHD__gnutls_certificate_type_get_name (enum MHD_GNUTLS_CertificateType type)
-{
-  const char *ret = NULL;
-
-  if (type == MHD_GNUTLS_CRT_X509)
-    ret = "X.509";
-  return ret;
-}
-
-/**
- * MHD_gtls_certificate_type_get_id - Returns the gnutls id of the specified 
in string type
- * @name: is a certificate type name
- *
- * The names are compared in a case insensitive way.
- *
- * Returns: an id of the specified in a string certificate type, or
- * %GNUTLS_CRT_UNKNOWN on error.
- **/
-enum MHD_GNUTLS_CertificateType
-MHD_gtls_certificate_type_get_id (const char *name)
-{
-  enum MHD_GNUTLS_CertificateType ret = MHD_GNUTLS_CRT_UNKNOWN;
-
-  if (strcasecmp (name, "X.509") == 0 || strcasecmp (name, "X509") == 0)
-    return MHD_GNUTLS_CRT_X509;
-  return ret;
-}
-
 static const enum MHD_GNUTLS_CertificateType
   MHD_gtls_supported_certificate_types[] =
 { MHD_GNUTLS_CRT_X509,
   0
 };
 
-/**
- * MHD_gtls_certificate_type_list:
- *
- * Get a list of certificate types.
- *
- * Returns: a zero-terminated list of %enum MHD_GNUTLS_CertificateType
- * integers indicating the available certificate types.
- *
- **/
-const enum MHD_GNUTLS_CertificateType *
-MHD_gtls_certificate_type_list (void)
-{
-  return MHD_gtls_supported_certificate_types;
-}
 
 /* returns the enum MHD_GNUTLS_PublicKeyAlgorithm which is compatible with
  * the given enum MHD_GNUTLS_KeyExchangeAlgorithm.
@@ -1942,55 +1537,6 @@
 #define GNUTLS_SIGN_ALG_LOOP(a) \
   GNUTLS_SIGN_LOOP( if(p->id && p->id == sign) { a; break; } )
 
-MHD_gnutls_sign_algorithm_t
-MHD_gtls_x509_oid2sign_algorithm (const char *oid)
-{
-  MHD_gnutls_sign_algorithm_t ret = 0;
-
-  GNUTLS_SIGN_LOOP (if (strcmp (oid, p->oid) == 0)
-                    {
-                    ret = p->id; break;}
-  );
-
-  if (ret == 0)
-    {
-      MHD__gnutls_x509_log ("Unknown SIGN OID: '%s'\n", oid);
-      return GNUTLS_SIGN_UNKNOWN;
-    }
-  return ret;
-}
-
-MHD_gnutls_sign_algorithm_t
-MHD_gtls_x509_pk_to_sign (enum MHD_GNUTLS_PublicKeyAlgorithm pk,
-                          enum MHD_GNUTLS_HashAlgorithm mac)
-{
-  MHD_gnutls_sign_algorithm_t ret = 0;
-
-  GNUTLS_SIGN_LOOP (if (pk == p->pk && mac == p->mac)
-                    {
-                    ret = p->id; break;}
-  );
-
-  if (ret == 0)
-    return GNUTLS_SIGN_UNKNOWN;
-  return ret;
-}
-
-const char *
-MHD_gtls_x509_sign_to_oid (enum MHD_GNUTLS_PublicKeyAlgorithm pk,
-                           enum MHD_GNUTLS_HashAlgorithm mac)
-{
-  MHD_gnutls_sign_algorithm_t sign;
-  const char *ret = NULL;
-
-  sign = MHD_gtls_x509_pk_to_sign (pk, mac);
-  if (sign == GNUTLS_SIGN_UNKNOWN)
-    return NULL;
-
-  GNUTLS_SIGN_ALG_LOOP (ret = p->oid);
-  return ret;
-}
-
 /* pk algorithms;
  */
 struct MHD_gnutls_pk_entry
@@ -2032,18 +1578,3 @@
   return ret;
 }
 
-const char *
-MHD_gtls_x509_pk_to_oid (enum MHD_GNUTLS_PublicKeyAlgorithm algorithm)
-{
-  const char *ret = NULL;
-  const MHD_gnutls_pk_entry *p;
-
-  for (p = MHD_gtls_pk_algorithms; p->name != NULL; p++)
-    if (p->id == algorithm)
-      {
-        ret = p->oid;
-        break;
-      }
-
-  return ret;
-}

Modified: libmicrohttpd/src/daemon/https/tls/gnutls_algorithms.h
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_algorithms.h      2008-11-16 
07:36:05 UTC (rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_algorithms.h      2008-11-16 
08:46:25 UTC (rev 7906)
@@ -28,7 +28,6 @@
 #include "gnutls_auth.h"
 
 /* Functions for version handling. */
-enum MHD_GNUTLS_Protocol MHD_gtls_version_lowest (MHD_gtls_session_t session);
 enum MHD_GNUTLS_Protocol MHD_gtls_version_max (MHD_gtls_session_t session);
 int MHD_gtls_version_priority (MHD_gtls_session_t session,
                                enum MHD_GNUTLS_Protocol version);
@@ -40,10 +39,6 @@
 
 /* Functions for MACs. */
 int MHD_gnutls_mac_is_ok (enum MHD_GNUTLS_HashAlgorithm algorithm);
-enum MHD_GNUTLS_HashAlgorithm MHD_gtls_x509_oid2mac_algorithm (const char
-                                                               *oid);
-const char *MHD_gtls_x509_mac_to_oid (enum MHD_GNUTLS_HashAlgorithm mac);
-
 /* Functions for cipher suites. */
 int MHD_gtls_supported_ciphersuites (MHD_gtls_session_t session,
                                      cipher_suite_st ** ciphers);
@@ -103,10 +98,6 @@
                                     algorithm);
 
 /* Type to KX mappings. */
-enum MHD_GNUTLS_KeyExchangeAlgorithm MHD_gtls_map_kx_get_kx (enum
-                                                             
MHD_GNUTLS_CredentialsType
-                                                             type,
-                                                             int server);
 enum MHD_GNUTLS_CredentialsType MHD_gtls_map_kx_get_cred (enum
                                                           
MHD_GNUTLS_KeyExchangeAlgorithm
                                                           algorithm,
@@ -118,8 +109,6 @@
                                                            kx_algorithm);
 enum MHD_GNUTLS_PublicKeyAlgorithm MHD_gtls_x509_oid2pk_algorithm (const char
                                                                    *oid);
-const char *MHD_gtls_x509_pk_to_oid (enum MHD_GNUTLS_PublicKeyAlgorithm pk);
-
 enum encipher_type
 { CIPHER_ENCRYPT = 0, CIPHER_SIGN = 1, CIPHER_IGN };
 
@@ -141,16 +130,6 @@
 typedef struct MHD_gtls_compression_entry MHD_gnutls_compression_entry;
 
 /* Functions for sign algorithms. */
-MHD_gnutls_sign_algorithm_t MHD_gtls_x509_oid2sign_algorithm (const char
-                                                              *oid);
-MHD_gnutls_sign_algorithm_t MHD_gtls_x509_pk_to_sign (enum
-                                                      
MHD_GNUTLS_PublicKeyAlgorithm
-                                                      pk,
-                                                      enum
-                                                      MHD_GNUTLS_HashAlgorithm
-                                                      mac);
-const char *MHD_gtls_x509_sign_to_oid (enum MHD_GNUTLS_PublicKeyAlgorithm,
-                                       enum MHD_GNUTLS_HashAlgorithm mac);
 
 int MHD_gtls_mac_priority (MHD_gtls_session_t session,
                            enum MHD_GNUTLS_HashAlgorithm algorithm);
@@ -158,9 +137,6 @@
                               enum MHD_GNUTLS_CipherAlgorithm algorithm);
 int MHD_gtls_kx_priority (MHD_gtls_session_t session,
                           enum MHD_GNUTLS_KeyExchangeAlgorithm algorithm);
-int MHD_gtls_compression_priority (MHD_gtls_session_t session,
-                                   enum MHD_GNUTLS_CompressionMethod
-                                   algorithm);
 
 enum MHD_GNUTLS_HashAlgorithm MHD_gtls_mac_get_id (const char *name);
 enum MHD_GNUTLS_CipherAlgorithm MHD_gtls_cipher_get_id (const char *name);

Modified: libmicrohttpd/src/daemon/https/tls/gnutls_auth.c
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_auth.c    2008-11-16 07:36:05 UTC 
(rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_auth.c    2008-11-16 08:46:25 UTC 
(rev 7906)
@@ -171,43 +171,6 @@
                               server);
 }
 
-/**
-  * MHD_gtls_auth_server_get_type - Returns the type of credentials for the 
server authentication schema.
-  * @session: is a #MHD_gtls_session_t structure.
-  *
-  * Returns the type of credentials that were used for server authentication.
-  * The returned information is to be used to distinguish the function used
-  * to access authentication data.
-  *
-  **/
-enum MHD_GNUTLS_CredentialsType
-MHD_gtls_auth_server_get_type (MHD_gtls_session_t session)
-{
-  return
-    MHD_gtls_map_kx_get_cred (MHD_gtls_cipher_suite_get_kx_algo
-                              (&session->
-                               security_parameters.current_cipher_suite), 1);
-}
-
-/**
-  * MHD_gtls_auth_client_get_type - Returns the type of credentials for the 
client authentication schema.
-  * @session: is a #MHD_gtls_session_t structure.
-  *
-  * Returns the type of credentials that were used for client authentication.
-  * The returned information is to be used to distinguish the function used
-  * to access authentication data.
-  *
-  **/
-enum MHD_GNUTLS_CredentialsType
-MHD_gtls_auth_client_get_type (MHD_gtls_session_t session)
-{
-  return
-    MHD_gtls_map_kx_get_cred (MHD_gtls_cipher_suite_get_kx_algo
-                              (&session->
-                               security_parameters.current_cipher_suite), 0);
-}
-
-
 /*
  * This returns a pointer to the linked list. Don't
  * free that!!!
@@ -294,8 +257,6 @@
 
   switch (session->key->auth_info_type)
     {
-    case MHD_GNUTLS_CRD_SRP:
-      break;
     case MHD_GNUTLS_CRD_CERTIFICATE:
       {
         unsigned int i;

Modified: libmicrohttpd/src/daemon/https/tls/gnutls_buffers.c
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_buffers.c 2008-11-16 07:36:05 UTC 
(rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_buffers.c 2008-11-16 08:46:25 UTC 
(rev 7906)
@@ -67,58 +67,6 @@
 # include <io_debug.h>
 #endif
 
-/**
- * MHD__gnutls_transport_set_errno:
- * @session: is a #MHD_gtls_session_t structure.
- * @err: error value to store in session-specific errno variable.
- *
- * Store @err in the session-specific errno variable.  Useful values
- * for @err is EAGAIN and EINTR, other values are treated will be
- * treated as real errors in the push/pull function.
- *
- * This function is useful in replacement push/pull functions set by
- * MHD__gnutls_transport_set_push_function and
- * MHD_gnutls_transport_set_pullpush_function under Windows, where the
- * replacement push/pull may not have access to the same @errno
- * variable that is used by GnuTLS (e.g., the application is linked to
- * msvcr71.dll and gnutls is linked to msvcrt.dll).
- *
- * If you don't have the @session variable easily accessible from the
- * push/pull function, and don't worry about thread conflicts, you can
- * also use MHD__gnutls_transport_set_global_errno().
- **/
-void
-MHD__gnutls_transport_set_errno (MHD_gtls_session_t session, int err)
-{
-  session->internals.errnum = err;
-}
-
-/**
- * MHD__gnutls_transport_set_global_errno:
- * @err: error value to store in global errno variable.
- *
- * Store @err in the global errno variable.  Useful values for @err is
- * EAGAIN and EINTR, other values are treated will be treated as real
- * errors in the push/pull function.
- *
- * This function is useful in replacement push/pull functions set by
- * MHD__gnutls_transport_set_push_function and
- * MHD_gnutls_transport_set_pullpush_function under Windows, where the
- * replacement push/pull may not have access to the same @errno
- * variable that is used by GnuTLS (e.g., the application is linked to
- * msvcr71.dll and gnutls is linked to msvcrt.dll).
- *
- * Whether this function is thread safe or not depends on whether the
- * global variable errno is thread safe, some system libraries make it
- * a thread-local variable.  When feasible, using the guaranteed
- * thread-safe MHD__gnutls_transport_set_errno() may be better.
- **/
-void
-MHD__gnutls_transport_set_global_errno (int err)
-{
-  errno = err;
-}
-
 /* Buffers received packets of type APPLICATION DATA and
  * HANDSHAKE DATA.
  */
@@ -186,23 +134,6 @@
     }
 }
 
-/**
- * MHD_gtls_record_check_pending - checks if there are any data to receive in 
gnutls buffers.
- * @session: is a #MHD_gtls_session_t structure.
- *
- * This function checks if there are any data to receive
- * in the gnutls buffers. Returns the size of that data or 0.
- * Notice that you may also use select() to check for data in
- * a TCP connection, instead of this function.
- * (gnutls leaves some data in the tcp buffer in order for select
- * to work).
- **/
-size_t
-MHD_gtls_record_check_pending (MHD_gtls_session_t session)
-{
-  return MHD_gnutls_record_buffer_get_size (GNUTLS_APPLICATION_DATA, session);
-}
-
 int
 MHD_gtls_record_buffer_get (content_type_t type, MHD_gtls_session_t session,
                             opaque * data, size_t length)
@@ -1193,35 +1124,10 @@
   return 0;
 }
 
-int
-MHD_gtls_handshake_buffer_get_size (MHD_gtls_session_t session)
-{
-
-  return session->internals.handshake_hash_buffer.length;
-}
-
 /* this function does not touch the buffer
  * and returns data from it (peek mode!)
  */
 int
-MHD_gtls_handshake_buffer_peek (MHD_gtls_session_t session, opaque * data,
-                                size_t length)
-{
-  if (length > session->internals.handshake_hash_buffer.length)
-    {
-      length = session->internals.handshake_hash_buffer.length;
-    }
-
-  MHD__gnutls_buffers_log ("BUF[HSK]: Peeked %d bytes of Data\n", length);
-
-  memcpy (data, session->internals.handshake_hash_buffer.data, length);
-  return length;
-}
-
-/* this function does not touch the buffer
- * and returns data from it (peek mode!)
- */
-int
 MHD_gtls_handshake_buffer_get_ptr (MHD_gtls_session_t session,
                                    opaque ** data_ptr, size_t * length)
 {

Modified: libmicrohttpd/src/daemon/https/tls/gnutls_buffers.h
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_buffers.h 2008-11-16 07:36:05 UTC 
(rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_buffers.h 2008-11-16 08:46:25 UTC 
(rev 7906)
@@ -40,9 +40,6 @@
 ssize_t MHD_gtls_io_write_buffered2 (MHD_gtls_session_t, const void *iptr,
                                      size_t n, const void *iptr2, size_t n2);
 
-int MHD_gtls_handshake_buffer_get_size (MHD_gtls_session_t session);
-int MHD_gtls_handshake_buffer_peek (MHD_gtls_session_t session, opaque * data,
-                                    size_t length);
 int MHD_gtls_handshake_buffer_put (MHD_gtls_session_t session, opaque * data,
                                    size_t length);
 int MHD_gtls_handshake_buffer_clear (MHD_gtls_session_t session);

Modified: libmicrohttpd/src/daemon/https/tls/gnutls_cert.c
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_cert.c    2008-11-16 07:36:05 UTC 
(rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_cert.c    2008-11-16 08:46:25 UTC 
(rev 7906)
@@ -279,88 +279,7 @@
 }
 
 
-/**
-  * MHD_gtls_certificate_server_set_request - Used to set whether to request a 
client certificate
-  * @session: is an #MHD_gtls_session_t structure.
-  * @req: is one of GNUTLS_CERT_REQUEST, GNUTLS_CERT_REQUIRE
-  *
-  * This function specifies if we (in case of a server) are going
-  * to send a certificate request message to the client. If @req
-  * is GNUTLS_CERT_REQUIRE then the server will return an error if
-  * the peer does not provide a certificate. If you do not
-  * call this function then the client will not be asked to
-  * send a certificate.
-  **/
-void
-MHD_gtls_certificate_server_set_request (MHD_gtls_session_t session,
-                                         MHD_gnutls_certificate_request_t req)
-{
-  session->internals.send_cert_req = req;
-}
 
-/**
-  * MHD_gtls_certificate_client_set_retrieve_function - Used to set a callback 
to retrieve the certificate
-  * @cred: is a #MHD_gtls_cert_credentials_t structure.
-  * @func: is the callback function
-  *
-  * This function sets a callback to be called in order to retrieve the 
certificate
-  * to be used in the handshake.
-  * The callback's function prototype is:
-  * int (*callback)(MHD_gtls_session_t, const MHD_gnutls_datum_t* req_ca_dn, 
int nreqs,
-  * const enum MHD_GNUTLS_PublicKeyAlgorithm* pk_algos, int pk_algos_length, 
MHD_gnutls_retr_st* st);
-  *
-  * @req_ca_cert is only used in X.509 certificates.
-  * Contains a list with the CA names that the server considers trusted.
-  * Normally we should send a certificate that is signed
-  * by one of these CAs. These names are DER encoded. To get a more
-  * meaningful value use the function MHD_gnutls_x509_rdn_get().
-  *
-  * @pk_algos contains a list with server's acceptable signature algorithms.
-  * The certificate returned should support the server's given algorithms.
-  *
-  * @st should contain the certificates and private keys.
-  *
-  * If the callback function is provided then gnutls will call it, in the
-  * handshake, after the certificate request message has been received.
-  *
-  * The callback function should set the certificate list to be sent, and
-  * return 0 on success. If no certificate was selected then the number of 
certificates
-  * should be set to zero. The value (-1) indicates error and the handshake
-  * will be terminated.
-  **/
-void MHD_gtls_certificate_client_set_retrieve_function
-  (MHD_gtls_cert_credentials_t cred,
-   MHD_gnutls_certificate_client_retrieve_function * func)
-{
-  cred->client_get_cert_callback = func;
-}
-
-/**
-  * MHD_gtls_certificate_server_set_retrieve_function - Used to set a callback 
to retrieve the certificate
-  * @cred: is a #MHD_gtls_cert_credentials_t structure.
-  * @func: is the callback function
-  *
-  * This function sets a callback to be called in order to retrieve the 
certificate
-  * to be used in the handshake.
-  * The callback's function prototype is:
-  * int (*callback)(MHD_gtls_session_t, MHD_gnutls_retr_st* st);
-  *
-  * @st should contain the certificates and private keys.
-  *
-  * If the callback function is provided then gnutls will call it, in the
-  * handshake, after the certificate request message has been received.
-  *
-  * The callback function should set the certificate list to be sent, and
-  * return 0 on success.  The value (-1) indicates error and the handshake
-  * will be terminated.
-  **/
-void MHD_gtls_certificate_server_set_retrieve_function
-  (MHD_gtls_cert_credentials_t cred,
-   MHD_gnutls_certificate_server_retrieve_function * func)
-{
-  cred->server_get_cert_callback = func;
-}
-
 int
 MHD_gtls_raw_cert_to_gcert (MHD_gnutls_cert * gcert,
                             enum MHD_GNUTLS_CertificateType type,
@@ -377,23 +296,6 @@
     }
 }
 
-int
-MHD_gtls_raw_privkey_to_gkey (MHD_gnutls_privkey * key,
-                              enum MHD_GNUTLS_CertificateType type,
-                              const MHD_gnutls_datum_t * raw_key,
-                              int key_enc /* DER or PEM */ )
-{
-  switch (type)
-    {
-    case MHD_GNUTLS_CRT_X509:
-      return MHD__gnutls_x509_raw_privkey_to_gkey (key, raw_key, key_enc);
-    default:
-      MHD_gnutls_assert ();
-      return GNUTLS_E_INTERNAL_ERROR;
-    }
-}
-
-
 /* This function will convert a der certificate to a format
  * (structure) that gnutls can understand and use. Actually the
  * important thing on this function is that it extracts the
@@ -538,47 +440,3 @@
   MHD__gnutls_free_datum (&cert->raw);
 }
 
-/**
- * MHD_gtls_sign_callback_set:
- * @session: is a gnutls session
- * @sign_func: function pointer to application's sign callback.
- * @userdata: void pointer that will be passed to sign callback.
- *
- * Set the callback function.  The function must have this prototype:
- *
- * 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);
- *
- * The @userdata parameter is passed to the @sign_func verbatim, and
- * can be used to store application-specific data needed in the
- * callback function.  See also MHD_gtls_sign_callback_get().
- **/
-void
-MHD_gtls_sign_callback_set (MHD_gtls_session_t session,
-                            MHD_gnutls_sign_func sign_func, void *userdata)
-{
-  session->internals.sign_func = sign_func;
-  session->internals.sign_func_userdata = userdata;
-}
-
-/**
- * MHD_gtls_sign_callback_get:
- * @session: is a gnutls session
- * @userdata: if non-%NULL, will be set to abstract callback pointer.
- *
- * Retrieve the callback function, and its userdata pointer.
- *
- * Returns: The function pointer set by MHD_gtls_sign_callback_set(), or
- *   if not set, %NULL.
- **/
-MHD_gnutls_sign_func
-MHD_gtls_sign_callback_get (MHD_gtls_session_t session, void **userdata)
-{
-  if (userdata)
-    *userdata = session->internals.sign_func_userdata;
-  return session->internals.sign_func;
-}

Modified: libmicrohttpd/src/daemon/https/tls/gnutls_cert.h
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_cert.h    2008-11-16 07:36:05 UTC 
(rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_cert.h    2008-11-16 08:46:25 UTC 
(rev 7906)
@@ -124,9 +124,4 @@
                                 enum MHD_GNUTLS_CertificateType type,
                                 const MHD_gnutls_datum_t * raw_cert,
                                 int flags /* OR of ConvFlags */ );
-int MHD_gtls_raw_privkey_to_gkey (MHD_gnutls_privkey * key,
-                                  enum MHD_GNUTLS_CertificateType type,
-                                  const MHD_gnutls_datum_t * raw_key,
-                                  int key_enc /* DER or PEM */ );
-
 #endif

Modified: libmicrohttpd/src/daemon/https/tls/gnutls_datum.c
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_datum.c   2008-11-16 07:36:05 UTC 
(rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_datum.c   2008-11-16 08:46:25 UTC 
(rev 7906)
@@ -49,23 +49,6 @@
     memcpy (&dest[3], dat.data, dat.size);
 }
 
-void
-MHD_gtls_write_datum32 (opaque * dest, MHD_gnutls_datum_t dat)
-{
-  MHD_gtls_write_uint32 (dat.size, dest);
-  if (dat.data != NULL)
-    memcpy (&dest[4], dat.data, dat.size);
-}
-
-void
-MHD_gtls_write_datum8 (opaque * dest, MHD_gnutls_datum_t dat)
-{
-  dest[0] = (uint8_t) dat.size;
-  if (dat.data != NULL)
-    memcpy (&dest[1], dat.data, dat.size);
-}
-
-
 int
 MHD_gtls_set_datum_m (MHD_gnutls_datum_t * dat, const void *data,
                       size_t data_size, MHD_gnutls_alloc_function galloc_func)
@@ -87,22 +70,6 @@
   return 0;
 }
 
-int
-MHD_gtls_datum_append_m (MHD_gnutls_datum_t * dst, const void *data,
-                         size_t data_size,
-                         MHD_gnutls_realloc_function grealloc_func)
-{
-
-  dst->data = grealloc_func (dst->data, data_size + dst->size);
-  if (dst->data == NULL)
-    return GNUTLS_E_MEMORY_ERROR;
-
-  memcpy (&dst->data[dst->size], data, data_size);
-  dst->size += data_size;
-
-  return 0;
-}
-
 void
 MHD_gtls_free_datum_m (MHD_gnutls_datum_t * dat,
                        MHD_gnutls_free_function gfree_func)

Modified: libmicrohttpd/src/daemon/https/tls/gnutls_datum.h
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_datum.h   2008-11-16 07:36:05 UTC 
(rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_datum.h   2008-11-16 08:46:25 UTC 
(rev 7906)
@@ -24,16 +24,12 @@
 
 void MHD_gtls_write_datum16 (opaque * dest, MHD_gnutls_datum_t dat);
 void MHD_gtls_write_datum24 (opaque * dest, MHD_gnutls_datum_t dat);
-void MHD_gtls_write_datum32 (opaque * dest, MHD_gnutls_datum_t dat);
-void MHD_gtls_write_datum8 (opaque * dest, MHD_gnutls_datum_t dat);
 
 int MHD_gtls_set_datum_m (MHD_gnutls_datum_t * dat, const void *data,
                           size_t data_size, MHD_gnutls_alloc_function);
 #define MHD__gnutls_set_datum( x, y, z) MHD_gtls_set_datum_m(x,y,z, 
MHD_gnutls_malloc)
 #define MHD__gnutls_sset_datum( x, y, z) MHD_gtls_set_datum_m(x,y,z, 
MHD_gnutls_secure_malloc)
 
-int MHD_gtls_datum_append_m (MHD_gnutls_datum_t * dat, const void *data,
-                             size_t data_size, MHD_gnutls_realloc_function);
 #define MHD__gnutls_datum_append(x,y,z) MHD_gtls_datum_append_m(x,y,z, 
MHD_gnutls_realloc)
 
 void MHD_gtls_free_datum_m (MHD_gnutls_datum_t * dat,

Modified: libmicrohttpd/src/daemon/https/tls/gnutls_extensions.c
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_extensions.c      2008-11-16 
07:36:05 UTC (rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_extensions.c      2008-11-16 
08:46:25 UTC (rev 7906)
@@ -64,12 +64,6 @@
                           MHD_gtls_oprfi_recv_params,
                           MHD_gtls_oprfi_send_params),
 #endif
-#ifdef ENABLE_SRP
-  GNUTLS_EXTENSION_ENTRY (GNUTLS_EXTENSION_SRP,
-                          EXTENSION_TLS,
-                          MHD__gnutls_srp_recv_params,
-                          MHD__gnutls_srp_send_params),
-#endif
   {0, 0, 0, 0}
 };
 

Modified: libmicrohttpd/src/daemon/https/tls/gnutls_handshake.c
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_handshake.c       2008-11-16 
07:36:05 UTC (rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_handshake.c       2008-11-16 
08:46:25 UTC (rev 7906)
@@ -1929,36 +1929,6 @@
 
   datalen = 0;
 
-#ifdef ENABLE_SRP
-  if (IS_SRP_KX
-      (MHD_gtls_cipher_suite_get_kx_algo
-       (&session->security_parameters.current_cipher_suite)))
-    {
-      /* While resuming we cannot check the username extension since it is
-       * not available at this point. It will be copied on connection
-       * state activation.
-       */
-      if (session->internals.resumed == RESUME_FALSE &&
-          session->security_parameters.extensions.srp_username[0] == 0)
-        {
-          /* The peer didn't send a valid SRP extension with the
-           * SRP username. The draft requires that we send a fatal
-           * alert and abort.
-           */
-          MHD_gnutls_assert ();
-          ret = MHD__gnutls_alert_send (session, GNUTLS_AL_FATAL,
-                                        GNUTLS_A_UNKNOWN_PSK_IDENTITY);
-          if (ret < 0)
-            {
-              MHD_gnutls_assert ();
-              return ret;
-            }
-
-          return GNUTLS_E_ILLEGAL_SRP_USERNAME;
-        }
-    }
-#endif
-
   if (again == 0)
     {
       datalen = 2 + session_id_len + 1 + TLS_RANDOM_SIZE + 3;
@@ -2807,23 +2777,7 @@
       if (delete == 1)
         return 1;
 
-#ifdef ENABLE_PSK
     }
-  else if (cred_type == MHD_GNUTLS_CRD_PSK)
-    {
-      MHD_gnutls_psk_server_credentials_t psk_cred =
-        (MHD_gnutls_psk_server_credentials_t) MHD_gtls_get_cred (session->key,
-                                                                 cred_type,
-                                                                 NULL);
-
-      if (psk_cred != NULL)
-        {
-          dh_params =
-            MHD_gtls_get_dh_params (psk_cred->dh_params,
-                                    psk_cred->params_func, session);
-        }
-#endif
-    }
   else
     return 0;                   /* no need for params */
 
@@ -2955,7 +2909,6 @@
          SRP credential too.  */
       if (kx == MHD_GNUTLS_KX_SRP_RSA || kx == MHD_GNUTLS_KX_SRP_DSS)
         {
-          if (!MHD_gtls_get_cred (session->key, MHD_GNUTLS_CRD_SRP, NULL))
             delete = 1;
         }
 

Modified: libmicrohttpd/src/daemon/https/tls/gnutls_mem.c
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_mem.c     2008-11-16 07:36:05 UTC 
(rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_mem.c     2008-11-16 08:46:25 UTC 
(rev 7906)
@@ -32,7 +32,6 @@
 MHD_gnutls_realloc_function MHD_gnutls_realloc = realloc;
 
 void *(*MHD_gnutls_calloc) (size_t, size_t) = calloc;
-char *(*MHD_gnutls_strdup) (const char *) = MHD_gtls_strdup;
 
 int
 MHD__gnutls_is_secure_mem_null (const void *ign)
@@ -64,15 +63,3 @@
 
   return ret;
 }
-
-char *
-MHD_gtls_strdup (const char *str)
-{
-  size_t siz = strlen (str) + 1;
-  char *ret;
-
-  ret = MHD_gnutls_malloc (siz);
-  if (ret != NULL)
-    memcpy (ret, str, siz);
-  return ret;
-}

Modified: libmicrohttpd/src/daemon/https/tls/gnutls_priority.c
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_priority.c        2008-11-16 
07:36:05 UTC (rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_priority.c        2008-11-16 
08:46:25 UTC (rev 7906)
@@ -32,40 +32,6 @@
 
 #define MAX_ELEMENTS 48
 
-/**
- * MHD__gnutls_cipher_set_priority - Sets the priority on the ciphers 
supported by gnutls.
- * @session: is a #MHD_gtls_session_t structure.
- * @list: is a 0 terminated list of enum MHD_GNUTLS_CipherAlgorithm elements.
- *
- * Sets the priority on the ciphers supported by gnutls.
- * Priority is higher for elements specified before others.
- * After specifying the ciphers you want, you must append a 0.
- * Note that the priority is set on the client. The server does
- * not use the algorithm's priority except for disabling
- * algorithms that were not specified.
- *
- * Returns 0 on success.
- *
- **/
-int
-MHD__gnutls_cipher_set_priority (MHD_gtls_session_t session, const int *list)
-{
-  int num = 0, i;
-
-  while (list[num] != 0)
-    num++;
-  if (num > MAX_ALGOS)
-    num = MAX_ALGOS;
-  session->internals.priorities.cipher.num_algorithms = num;
-
-  for (i = 0; i < num; i++)
-    {
-      session->internals.priorities.cipher.priority[i] = list[i];
-    }
-
-  return 0;
-}
-
 static int
 _set_priority (MHD_gtls_priority_st * st, const int *list)
 {
@@ -78,129 +44,6 @@
   return 0;
 }
 
-/**
- * MHD__gnutls_kx_set_priority - Sets the priority on the key exchange 
algorithms supported by gnutls.
- * @session: is a #MHD_gtls_session_t structure.
- * @list: is a 0 terminated list of enum MHD_GNUTLS_KeyExchangeAlgorithm 
elements.
- *
- * Sets the priority on the key exchange algorithms supported by gnutls.
- * Priority is higher for elements specified before others.
- * After specifying the algorithms you want, you must append a 0.
- * Note that the priority is set on the client. The server does
- * not use the algorithm's priority except for disabling
- * algorithms that were not specified.
- *
- * Returns 0 on success.
- *
- **/
-int
-MHD__gnutls_kx_set_priority (MHD_gtls_session_t session, const int *list)
-{
-  return _set_priority (&session->internals.priorities.kx, list);
-}
-
-/**
- * MHD__gnutls_mac_set_priority - Sets the priority on the mac algorithms 
supported by gnutls.
- * @session: is a #MHD_gtls_session_t structure.
- * @list: is a 0 terminated list of enum MHD_GNUTLS_HashAlgorithm elements.
- *
- * Sets the priority on the mac algorithms supported by gnutls.
- * Priority is higher for elements specified before others.
- * After specifying the algorithms you want, you must append a 0.
- * Note that the priority is set on the client. The server does
- * not use the algorithm's priority except for disabling
- * algorithms that were not specified.
- *
- * Returns 0 on success.
- *
- **/
-int
-MHD__gnutls_mac_set_priority (MHD_gtls_session_t session, const int *list)
-{
-  return _set_priority (&session->internals.priorities.mac, list);
-}
-
-/**
- * MHD__gnutls_compression_set_priority - Sets the priority on the compression 
algorithms supported by gnutls.
- * @session: is a #MHD_gtls_session_t structure.
- * @list: is a 0 terminated list of enum MHD_GNUTLS_CompressionMethod elements.
- *
- * Sets the priority on the compression algorithms supported by gnutls.
- * Priority is higher for elements specified before others.
- * After specifying the algorithms you want, you must append a 0.
- * Note that the priority is set on the client. The server does
- * not use the algorithm's priority except for disabling
- * algorithms that were not specified.
- *
- * TLS 1.0 does not define any compression algorithms except
- * NULL. Other compression algorithms are to be considered
- * as gnutls extensions.
- *
- * Returns 0 on success.
- *
- **/
-int
-MHD__gnutls_compression_set_priority (MHD_gtls_session_t session,
-                                      const int *list)
-{
-  return _set_priority (&session->internals.priorities.compression, list);
-}
-
-/**
- * MHD__gnutls_protocol_set_priority - Sets the priority on the protocol 
versions supported by gnutls.
- * @session: is a #MHD_gtls_session_t structure.
- * @list: is a 0 terminated list of enum MHD_GNUTLS_Protocol elements.
- *
- * Sets the priority on the protocol versions supported by gnutls.
- * This function actually enables or disables protocols. Newer protocol
- * versions always have highest priority.
- *
- * Returns 0 on success.
- *
- **/
-int
-MHD__gnutls_protocol_set_priority (MHD_gtls_session_t session,
-                                   const int *list)
-{
-  int ret;
-
-  ret = _set_priority (&session->internals.priorities.protocol, list);
-  /* set the current version to the first in the chain.
-   * This will be overridden later.
-   */
-  MHD_gtls_set_current_version (session, list[0]);
-
-  return ret;
-}
-
-/**
- * MHD__gnutls_certificate_type_set_priority - Sets the priority on the 
certificate types supported by gnutls.
- * @session: is a #MHD_gtls_session_t structure.
- * @list: is a 0 terminated list of enum MHD_GNUTLS_CertificateType elements.
- *
- * Sets the priority on the certificate types supported by gnutls.
- * Priority is higher for elements specified before others.
- * After specifying the types you want, you must append a 0.
- * Note that the certificate type priority is set on the client.
- * The server does not use the cert type priority except for disabling
- * types that were not specified.
- *
- * Returns 0 on success.
- *
- **/
-int
-MHD__gnutls_certificate_type_set_priority (MHD_gtls_session_t session,
-                                           const int *list)
-{
-#if ENABLE_OPENPGP
-  return _set_priority (&session->internals.priorities.cert_type, list);
-#else
-
-  return GNUTLS_E_UNIMPLEMENTED_FEATURE;
-
-#endif
-}
-
 static const int MHD_gtls_protocol_priority[] = { MHD_GNUTLS_PROTOCOL_TLS1_1,
   MHD_GNUTLS_PROTOCOL_TLS1_0,
   MHD_GNUTLS_PROTOCOL_SSL3,

Modified: libmicrohttpd/src/daemon/https/tls/gnutls_record.c
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_record.c  2008-11-16 07:36:05 UTC 
(rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_record.c  2008-11-16 08:46:25 UTC 
(rev 7906)
@@ -81,24 +81,6 @@
 }
 
 /**
- * MHD_gtls_record_disable_padding - Used to disabled padding in TLS 1.0 and 
above
- * @session: is a #MHD_gtls_session_t structure.
- *
- * Used to disabled padding in TLS 1.0 and above.  Normally you do
- * not need to use this function, but there are buggy clients that
- * complain if a server pads the encrypted data.  This of course will
- * disable protection against statistical attacks on the data.
- *
- * Normally only servers that require maximum compatibility with everything
- * out there, need to call this function.
- **/
-void
-MHD_gtls_record_disable_padding (MHD_gtls_session_t session)
-{
-  session->internals.priorities.no_padding = 1;
-}
-
-/**
  * MHD__gnutls_transport_set_ptr - Used to set first argument of the transport 
functions
  * @session: is a #MHD_gtls_session_t structure.
  * @ptr: is the value.
@@ -116,26 +98,6 @@
 }
 
 /**
- * MHD__gnutls_transport_set_ptr2 - Used to set first argument of the 
transport functions
- * @session: is a #MHD_gtls_session_t structure.
- * @recv_ptr: is the value for the pull function
- * @send_ptr: is the value for the push function
- *
- * 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.  With this function you can use two
- * different pointers for receiving and sending.
- **/
-void
-MHD__gnutls_transport_set_ptr2 (MHD_gtls_session_t session,
-                                MHD_gnutls_transport_ptr_t recv_ptr,
-                                MHD_gnutls_transport_ptr_t send_ptr)
-{
-  session->internals.transport_send_ptr = send_ptr;
-  session->internals.transport_recv_ptr = recv_ptr;
-}
-
-/**
  * MHD__gnutls_bye - This function terminates the current TLS/SSL connection.
  * @session: is a #MHD_gtls_session_t structure.
  * @how: is an integer
@@ -1128,59 +1090,3 @@
                             sizeofdata);
 }
 
-/**
- * MHD__gnutls_record_get_max_size - returns the maximum record size
- * @session: is a #MHD_gtls_session_t structure.
- *
- * This function returns the maximum record packet size in this
- * connection.  The maximum record size is negotiated by the client
- * after the first handshake message.
- **/
-size_t
-MHD__gnutls_record_get_max_size (MHD_gtls_session_t session)
-{
-  /* Recv will hold the negotiated max record size
-   * always.
-   */
-  return session->security_parameters.max_record_recv_size;
-}
-
-/**
- * MHD__gnutls_record_set_max_size - sets the maximum record size
- * @session: is a #MHD_gtls_session_t structure.
- * @size: is the new size
- *
- * This function sets the maximum record packet size in this
- * connection.  This property can only be set to clients.  The server
- * may choose not to accept the requested size.
- *
- * Acceptable values are 512(=2^9), 1024(=2^10), 2048(=2^11) and
- * 4096(=2^12).  Returns 0 on success. The requested record size does
- * get in effect immediately only while sending data. The receive
- * part will take effect after a successful handshake.
- *
- * This function uses a TLS extension called 'max record size'.  Not
- * all TLS implementations use or even understand this extension.
- **/
-ssize_t
-MHD__gnutls_record_set_max_size (MHD_gtls_session_t session, size_t size)
-{
-  ssize_t new_size;
-
-  if (session->security_parameters.entity == GNUTLS_SERVER)
-    return GNUTLS_E_INVALID_REQUEST;
-
-  new_size = MHD_gtls_mre_record2num (size);
-
-  if (new_size < 0)
-    {
-      MHD_gnutls_assert ();
-      return new_size;
-    }
-
-  session->security_parameters.max_record_send_size = size;
-
-  session->internals.proposed_record_size = size;
-
-  return 0;
-}

Deleted: libmicrohttpd/src/daemon/https/tls/gnutls_session.c
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_session.c 2008-11-16 07:36:05 UTC 
(rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_session.c 2008-11-16 08:46:25 UTC 
(rev 7906)
@@ -1,71 +0,0 @@
-/*
- * Copyright (C) 2000, 2003, 2004, 2005, 2007 Free Software Foundation
- *
- * Author: Nikos Mavrogiannopoulos
- *
- * This file is part of GNUTLS.
- *
- * The GNUTLS library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public License
- * as published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
- * USA
- *
- */
-#include "gnutls_int.h"
-#include "gnutls_errors.h"
-#include "debug.h"
-#include "gnutls_session_pack.h"
-#include <gnutls_datum.h>
-
-/* TODO this file should be removed if session resumption will be abandoned */
-
-/**
-  * MHD_gtls_session_get_id - Returns session id.
-  * @session: is a #MHD_gtls_session_t structure.
-  * @session_id: is a pointer to space to hold the session id.
-  * @session_id_size: is the session id's size, or it will be set by the 
function.
-  *
-  * Returns the current session id. This can be used if you want to check if
-  * the next session you tried to resume was actually resumed.
-  * This is because resumed sessions have the same sessionID with the
-  * original session.
-  *
-  * Session id is some data set by the server, that identify the current 
session.
-  * In TLS 1.0 and SSL 3.0 session id is always less than 32 bytes.
-  *
-  * Returns zero on success.
-  **/
-int
-MHD_gtls_session_get_id (MHD_gtls_session_t session,
-                         void *session_id, size_t * session_id_size)
-{
-  size_t given_session_id_size = *session_id_size;
-
-  *session_id_size = session->security_parameters.session_id_size;
-
-  /* just return the session size */
-  if (session_id == NULL)
-    {
-      return 0;
-    }
-
-  if (given_session_id_size < session->security_parameters.session_id_size)
-    {
-      return GNUTLS_E_SHORT_MEMORY_BUFFER;
-    }
-
-  memcpy (session_id, &session->security_parameters.session_id,
-          *session_id_size);
-
-  return 0;
-}

Deleted: libmicrohttpd/src/daemon/https/tls/gnutls_session_pack.c
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_session_pack.c    2008-11-16 
07:36:05 UTC (rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_session_pack.c    2008-11-16 
08:46:25 UTC (rev 7906)
@@ -1,1025 +0,0 @@
-/*
- * Copyright (C) 2000, 2004, 2005, 2007 Free Software Foundation
- *
- * Author: Nikos Mavrogiannopoulos
- *
- * This file is part of GNUTLS.
- *
- * The GNUTLS library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public License
- * as published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
- * USA
- *
- */
-
-/* Contains functions that are supposed to pack and unpack session data,
- * before and after they are sent to the database backend.
- */
-
-#include <gnutls_int.h>
-#ifdef ENABLE_SRP
-# include <auth_srp.h>
-#endif
-#ifdef ENABLE_PSK
-# include <auth_psk.h>
-#endif
-#include <auth_cert.h>
-#include <gnutls_errors.h>
-#include <gnutls_auth_int.h>
-#include <gnutls_session_pack.h>
-#include <gnutls_datum.h>
-#include <gnutls_num.h>
-
-#define PACK_HEADER_SIZE 1
-#define MAX_SEC_PARAMS 
7+MAX_SRP_USERNAME+MAX_SERVER_NAME_EXTENSIONS*(3+MAX_SERVER_NAME_SIZE)+165
-static int pack_certificate_auth_info (MHD_gtls_session_t,
-                                       MHD_gnutls_datum_t * packed_session);
-static int unpack_certificate_auth_info (MHD_gtls_session_t,
-                                         const MHD_gnutls_datum_t *
-                                         packed_session);
-
-static int unpack_security_parameters (MHD_gtls_session_t session,
-                                       const MHD_gnutls_datum_t *
-                                       packed_session);
-static int pack_security_parameters (MHD_gtls_session_t session,
-                                     MHD_gnutls_datum_t * packed_session);
-
-/* Since auth_info structures contain malloced data, this function
- * is required in order to pack these structures in a vector in
- * order to store them to the DB.
- *
- * packed_session will contain the session data.
- *
- * The data will be in a platform independent format.
- */
-int
-MHD_gtls_session_pack (MHD_gtls_session_t session,
-                       MHD_gnutls_datum_t * packed_session)
-{
-  int ret;
-
-  if (packed_session == NULL)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_INTERNAL_ERROR;
-    }
-
-
-  switch (MHD_gtls_auth_get_type (session))
-    {
-#ifdef ENABLE_SRP
-    case MHD_GNUTLS_CRD_SRP:
-      ret = pack_srp_auth_info (session, packed_session);
-      if (ret < 0)
-        {
-          MHD_gnutls_assert ();
-          return ret;
-        }
-      break;
-#endif
-#ifdef ENABLE_PSK
-    case MHD_GNUTLS_CRD_PSK:
-      ret = pack_psk_auth_info (session, packed_session);
-      if (ret < 0)
-        {
-          MHD_gnutls_assert ();
-          return ret;
-        }
-      break;
-#endif
-    case MHD_GNUTLS_CRD_CERTIFICATE:
-      ret = pack_certificate_auth_info (session, packed_session);
-      if (ret < 0)
-        {
-          MHD_gnutls_assert ();
-          return ret;
-        }
-      break;
-    default:
-      return GNUTLS_E_INTERNAL_ERROR;
-
-    }
-
-  /* Auth_info structures copied. Now copy MHD_gtls_security_param_st.
-   * packed_session must have allocated space for the security parameters.
-   */
-  ret = pack_security_parameters (session, packed_session);
-  if (ret < 0)
-    {
-      MHD_gnutls_assert ();
-      MHD__gnutls_free_datum (packed_session);
-      return ret;
-    }
-
-  return 0;
-}
-
-
-/* Load session data from a buffer.
- */
-int
-MHD_gtls_session_unpack (MHD_gtls_session_t session,
-                         const MHD_gnutls_datum_t * packed_session)
-{
-  int ret;
-
-  if (packed_session == NULL || packed_session->size == 0)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_INTERNAL_ERROR;
-    }
-
-  if (MHD_gtls_get_auth_info (session) != NULL)
-    {
-      MHD_gtls_free_auth_info (session);
-    }
-
-  switch (packed_session->data[0])
-    {
-#ifdef ENABLE_SRP
-    case MHD_GNUTLS_CRD_SRP:
-      ret = unpack_srp_auth_info (session, packed_session);
-      if (ret < 0)
-        {
-          MHD_gnutls_assert ();
-          return ret;
-        }
-      break;
-#endif
-#ifdef ENABLE_PSK
-    case MHD_GNUTLS_CRD_PSK:
-      ret = unpack_psk_auth_info (session, packed_session);
-      if (ret < 0)
-        {
-          MHD_gnutls_assert ();
-          return ret;
-        }
-      break;
-#endif
-    case MHD_GNUTLS_CRD_CERTIFICATE:
-      ret = unpack_certificate_auth_info (session, packed_session);
-      if (ret < 0)
-        {
-          MHD_gnutls_assert ();
-          return ret;
-        }
-      break;
-    default:
-      MHD_gnutls_assert ();
-      return GNUTLS_E_INTERNAL_ERROR;
-
-    }
-
-  /* Auth_info structures copied. Now copy MHD_gtls_security_param_st.
-   * packed_session must have allocated space for the security parameters.
-   */
-  ret = unpack_security_parameters (session, packed_session);
-  if (ret < 0)
-    {
-      MHD_gnutls_assert ();
-      return ret;
-    }
-
-  return 0;
-}
-
-
-/* Format:
- *      1 byte the credentials type
- *      4 bytes the size of the whole structure
- *        DH stuff
- *      2 bytes the size of secret key in bits
- *      4 bytes the size of the prime
- *      x bytes the prime
- *      4 bytes the size of the generator
- *      x bytes the generator
- *      4 bytes the size of the public key
- *      x bytes the public key
- *        RSA stuff
- *      4 bytes the size of the modulus
- *      x bytes the modulus
- *      4 bytes the size of the exponent
- *      x bytes the exponent
- *        CERTIFICATES
- *      4 bytes the length of the certificate list
- *      4 bytes the size of first certificate
- *      x bytes the certificate
- *       and so on...
- */
-static int
-pack_certificate_auth_info (MHD_gtls_session_t session,
-                            MHD_gnutls_datum_t * packed_session)
-{
-  unsigned int pos = 0, i;
-  int cert_size, pack_size;
-  cert_auth_info_t info = MHD_gtls_get_auth_info (session);
-
-  if (info)
-    {
-      cert_size = 4;
-
-      for (i = 0; i < info->ncerts; i++)
-        cert_size += 4 + info->raw_certificate_list[i].size;
-
-      pack_size = 2 + 4 + info->dh.prime.size +
-        4 + info->dh.generator.size + 4 + info->dh.public_key.size +
-        4 + info->rsa_export.modulus.size +
-        4 + info->rsa_export.exponent.size + cert_size;
-    }
-  else
-    pack_size = 0;
-
-  packed_session->size = PACK_HEADER_SIZE + pack_size + sizeof (uint32_t);
-
-  /* calculate the size and allocate the data.
-   */
-  packed_session->data =
-    MHD_gnutls_malloc (packed_session->size + MAX_SEC_PARAMS);
-
-  if (packed_session->data == NULL)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_MEMORY_ERROR;
-    }
-
-  packed_session->data[0] = MHD_GNUTLS_CRD_CERTIFICATE;
-  MHD_gtls_write_uint32 (pack_size, &packed_session->data[PACK_HEADER_SIZE]);
-  pos += 4 + PACK_HEADER_SIZE;
-
-
-  if (pack_size > 0)
-    {
-
-      MHD_gtls_write_uint16 (info->dh.secret_bits,
-                             &packed_session->data[pos]);
-      pos += 2;
-
-      MHD_gtls_write_datum32 (&packed_session->data[pos], info->dh.prime);
-      pos += 4 + info->dh.prime.size;
-      MHD_gtls_write_datum32 (&packed_session->data[pos], info->dh.generator);
-      pos += 4 + info->dh.generator.size;
-      MHD_gtls_write_datum32 (&packed_session->data[pos],
-                              info->dh.public_key);
-      pos += 4 + info->dh.public_key.size;
-
-      MHD_gtls_write_datum32 (&packed_session->data[pos],
-                              info->rsa_export.modulus);
-      pos += 4 + info->rsa_export.modulus.size;
-      MHD_gtls_write_datum32 (&packed_session->data[pos],
-                              info->rsa_export.exponent);
-      pos += 4 + info->rsa_export.exponent.size;
-
-      MHD_gtls_write_uint32 (info->ncerts, &packed_session->data[pos]);
-      pos += 4;
-
-      for (i = 0; i < info->ncerts; i++)
-        {
-          MHD_gtls_write_datum32 (&packed_session->data[pos],
-                                  info->raw_certificate_list[i]);
-          pos += sizeof (uint32_t) + info->raw_certificate_list[i].size;
-        }
-    }
-
-  return 0;
-}
-
-
-/* Upack certificate info.
- */
-static int
-unpack_certificate_auth_info (MHD_gtls_session_t session,
-                              const MHD_gnutls_datum_t * packed_session)
-{
-  int pos = 0, size, ret;
-  unsigned int i = 0, j;
-  size_t pack_size;
-  cert_auth_info_t info;
-
-  if (packed_session->data[0] != MHD_GNUTLS_CRD_CERTIFICATE)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_INVALID_REQUEST;
-    }
-
-  pack_size = MHD_gtls_read_uint32 (&packed_session->data[PACK_HEADER_SIZE]);
-  pos += PACK_HEADER_SIZE + 4;
-
-  if (pack_size == 0)
-    return 0;                   /* nothing to be done */
-
-  /* a simple check for integrity */
-  if (pack_size + PACK_HEADER_SIZE + 4 > packed_session->size)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_INVALID_REQUEST;
-    }
-
-  /* client and server have the same auth_info here
-   */
-  ret =
-    MHD_gtls_auth_info_set (session, MHD_GNUTLS_CRD_CERTIFICATE,
-                            sizeof (cert_auth_info_st), 1);
-  if (ret < 0)
-    {
-      MHD_gnutls_assert ();
-      return ret;
-    }
-
-  info = MHD_gtls_get_auth_info (session);
-  if (info == NULL)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_INTERNAL_ERROR;
-    }
-
-  info->dh.secret_bits = MHD_gtls_read_uint16 (&packed_session->data[pos]);
-  pos += 2;
-
-  size = MHD_gtls_read_uint32 (&packed_session->data[pos]);
-  pos += 4;
-  ret =
-    MHD__gnutls_set_datum (&info->dh.prime, &packed_session->data[pos], size);
-  if (ret < 0)
-    {
-      MHD_gnutls_assert ();
-      goto error;
-    }
-  pos += size;
-
-  size = MHD_gtls_read_uint32 (&packed_session->data[pos]);
-  pos += 4;
-  ret =
-    MHD__gnutls_set_datum (&info->dh.generator, &packed_session->data[pos],
-                           size);
-  if (ret < 0)
-    {
-      MHD_gnutls_assert ();
-      goto error;
-    }
-  pos += size;
-
-  size = MHD_gtls_read_uint32 (&packed_session->data[pos]);
-  pos += 4;
-  ret =
-    MHD__gnutls_set_datum (&info->dh.public_key, &packed_session->data[pos],
-                           size);
-  if (ret < 0)
-    {
-      MHD_gnutls_assert ();
-      goto error;
-    }
-  pos += size;
-
-  size = MHD_gtls_read_uint32 (&packed_session->data[pos]);
-  pos += 4;
-  ret =
-    MHD__gnutls_set_datum (&info->rsa_export.modulus,
-                           &packed_session->data[pos], size);
-  if (ret < 0)
-    {
-      MHD_gnutls_assert ();
-      goto error;
-    }
-  pos += size;
-
-  size = MHD_gtls_read_uint32 (&packed_session->data[pos]);
-  pos += 4;
-  ret =
-    MHD__gnutls_set_datum (&info->rsa_export.exponent,
-                           &packed_session->data[pos], size);
-  if (ret < 0)
-    {
-      MHD_gnutls_assert ();
-      goto error;
-    }
-  pos += size;
-
-  info->ncerts = MHD_gtls_read_uint32 (&packed_session->data[pos]);
-  pos += 4;
-
-  if (info->ncerts > 0)
-    {
-      info->raw_certificate_list =
-        MHD_gnutls_calloc (1, sizeof (MHD_gnutls_datum_t) * info->ncerts);
-      if (info->raw_certificate_list == NULL)
-        {
-          MHD_gnutls_assert ();
-          ret = GNUTLS_E_MEMORY_ERROR;
-          goto error;
-        }
-    }
-
-  for (i = 0; i < info->ncerts; i++)
-    {
-      size = MHD_gtls_read_uint32 (&packed_session->data[pos]);
-      pos += sizeof (uint32_t);
-
-      ret =
-        MHD__gnutls_set_datum (&info->raw_certificate_list[i],
-                               &packed_session->data[pos], size);
-      pos += size;
-
-      if (ret < 0)
-        {
-          MHD_gnutls_assert ();
-          goto error;
-        }
-    }
-
-
-  return 0;
-
-error:
-  MHD__gnutls_free_datum (&info->dh.prime);
-  MHD__gnutls_free_datum (&info->dh.generator);
-  MHD__gnutls_free_datum (&info->dh.public_key);
-
-  MHD__gnutls_free_datum (&info->rsa_export.modulus);
-  MHD__gnutls_free_datum (&info->rsa_export.exponent);
-
-  for (j = 0; j < i; j++)
-    MHD__gnutls_free_datum (&info->raw_certificate_list[j]);
-
-  MHD_gnutls_free (info->raw_certificate_list);
-
-  return ret;
-
-}
-
-#ifdef ENABLE_SRP
-/* Packs the SRP session authentication data.
- */
-
-/* Format:
- *      1 byte the credentials type
- *      4 bytes the size of the SRP username (x)
- *      x bytes the SRP username
- */
-static int
-pack_srp_auth_info (MHD_gtls_session_t session,
-                    MHD_gnutls_datum_t * packed_session)
-{
-  srp_server_auth_info_t info = MHD_gtls_get_auth_info (session);
-  int pack_size;
-
-  if (info && info->username)
-    pack_size = strlen (info->username) + 1;    /* include the terminating 
null */
-  else
-    pack_size = 0;
-
-  packed_session->size = PACK_HEADER_SIZE + pack_size + sizeof (uint32_t);
-
-  /* calculate the size and allocate the data.
-   */
-  packed_session->data =
-    MHD_gnutls_malloc (packed_session->size + MAX_SEC_PARAMS);
-
-  if (packed_session->data == NULL)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_MEMORY_ERROR;
-    }
-
-  packed_session->data[0] = MHD_GNUTLS_CRD_SRP;
-  MHD_gtls_write_uint32 (pack_size, &packed_session->data[PACK_HEADER_SIZE]);
-
-  if (pack_size > 0)
-    memcpy (&packed_session->data[PACK_HEADER_SIZE + sizeof (uint32_t)],
-            info->username, pack_size + 1);
-
-  return 0;
-}
-
-
-static int
-unpack_srp_auth_info (MHD_gtls_session_t session,
-                      const MHD_gnutls_datum_t * packed_session)
-{
-  size_t username_size;
-  int ret;
-  srp_server_auth_info_t info;
-
-  if (packed_session->data[0] != MHD_GNUTLS_CRD_SRP)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_INVALID_REQUEST;
-    }
-
-  username_size =
-    MHD_gtls_read_uint32 (&packed_session->data[PACK_HEADER_SIZE]);
-
-  if (username_size == 0)
-    return 0;                   /* nothing to be done */
-
-  /* a simple check for integrity */
-  if (username_size + 4 + PACK_HEADER_SIZE > packed_session->size)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_INVALID_REQUEST;
-    }
-
-  ret =
-    MHD_gtls_auth_info_set (session, MHD_GNUTLS_CRD_SRP,
-                            sizeof (srp_server_auth_info_st), 1);
-  if (ret < 0)
-    {
-      MHD_gnutls_assert ();
-      return ret;
-    }
-
-  info = MHD_gtls_get_auth_info (session);
-  if (info == NULL)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_INTERNAL_ERROR;
-    }
-
-  memcpy (info->username,
-          &packed_session->data[PACK_HEADER_SIZE + sizeof (uint32_t)],
-          username_size);
-
-  return 0;
-}
-#endif
-
-
-
-#ifdef ENABLE_PSK
-/* Packs the PSK session authentication data.
- */
-
-/* Format:
- *      1 byte the credentials type
- *      4 bytes the size of the whole structure
- *      4 bytes the size of the PSK username (x)
- *      x bytes the PSK username
- *      2 bytes the size of secret key in bits
- *      4 bytes the size of the prime
- *      x bytes the prime
- *      4 bytes the size of the generator
- *      x bytes the generator
- *      4 bytes the size of the public key
- *      x bytes the public key
- */
-static int
-pack_psk_auth_info (MHD_gtls_session_t session,
-                    MHD_gnutls_datum_t * packed_session)
-{
-  psk_auth_info_t info;
-  int pack_size, username_size = 0, pos;
-
-  info = MHD_gtls_get_auth_info (session);
-
-  if (info)
-    {
-      username_size = strlen (info->username) + 1;      /* include the 
terminating null */
-      pack_size = username_size +
-        2 + 4 * 3 + info->dh.prime.size + info->dh.generator.size +
-        info->dh.public_key.size;
-    }
-  else
-    pack_size = 0;
-
-  packed_session->size = PACK_HEADER_SIZE + pack_size + sizeof (uint32_t);
-
-  /* calculate the size and allocate the data.
-   */
-  packed_session->data =
-    MHD_gnutls_malloc (packed_session->size + MAX_SEC_PARAMS);
-
-  if (packed_session->data == NULL)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_MEMORY_ERROR;
-    }
-
-  pos = 0;
-
-  packed_session->data[pos] = MHD_GNUTLS_CRD_PSK;
-  pos++;
-
-  MHD_gtls_write_uint32 (pack_size, &packed_session->data[pos]);
-  pos += 4;
-
-
-  if (pack_size > 0)
-    {
-      MHD_gtls_write_uint32 (username_size, &packed_session->data[pos]);
-      pos += 4;
-
-      memcpy (&packed_session->data[pos], info->username, username_size);
-      pos += username_size;
-
-      MHD_gtls_write_uint16 (info->dh.secret_bits,
-                             &packed_session->data[pos]);
-      pos += 2;
-
-      MHD_gtls_write_datum32 (&packed_session->data[pos], info->dh.prime);
-      pos += 4 + info->dh.prime.size;
-      MHD_gtls_write_datum32 (&packed_session->data[pos], info->dh.generator);
-      pos += 4 + info->dh.generator.size;
-      MHD_gtls_write_datum32 (&packed_session->data[pos],
-                              info->dh.public_key);
-      pos += 4 + info->dh.public_key.size;
-
-    }
-
-
-  return 0;
-}
-
-static int
-unpack_psk_auth_info (MHD_gtls_session_t session,
-                      const MHD_gnutls_datum_t * packed_session)
-{
-  size_t username_size;
-  size_t pack_size;
-  int pos = 0, size, ret;
-  psk_auth_info_t info;
-
-  if (packed_session->data[0] != MHD_GNUTLS_CRD_PSK)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_INVALID_REQUEST;
-    }
-
-  pack_size = MHD_gtls_read_uint32 (&packed_session->data[PACK_HEADER_SIZE]);
-  pos += PACK_HEADER_SIZE + 4;
-
-
-  if (pack_size == 0)
-    return 0;                   /* nothing to be done */
-
-  /* a simple check for integrity */
-  if (pack_size + PACK_HEADER_SIZE + 4 > packed_session->size)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_INVALID_REQUEST;
-    }
-
-  /* client and serer have the same auth_info here
-   */
-  ret =
-    MHD_gtls_auth_info_set (session, MHD_GNUTLS_CRD_PSK,
-                            sizeof (psk_auth_info_st), 1);
-  if (ret < 0)
-    {
-      MHD_gnutls_assert ();
-      return ret;
-    }
-
-  info = MHD_gtls_get_auth_info (session);
-  if (info == NULL)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_INTERNAL_ERROR;
-    }
-
-  username_size = MHD_gtls_read_uint32 (&packed_session->data[pos]);
-  pos += 4;
-
-  memcpy (info->username, &packed_session->data[pos], username_size);
-  pos += username_size;
-
-  info->dh.secret_bits = MHD_gtls_read_uint16 (&packed_session->data[pos]);
-  pos += 2;
-
-  size = MHD_gtls_read_uint32 (&packed_session->data[pos]);
-  pos += 4;
-  ret =
-    MHD__gnutls_set_datum (&info->dh.prime, &packed_session->data[pos], size);
-  if (ret < 0)
-    {
-      MHD_gnutls_assert ();
-      goto error;
-    }
-  pos += size;
-
-  size = MHD_gtls_read_uint32 (&packed_session->data[pos]);
-  pos += 4;
-  ret =
-    MHD__gnutls_set_datum (&info->dh.generator, &packed_session->data[pos],
-                           size);
-  if (ret < 0)
-    {
-      MHD_gnutls_assert ();
-      goto error;
-    }
-  pos += size;
-
-  size = MHD_gtls_read_uint32 (&packed_session->data[pos]);
-  pos += 4;
-  ret =
-    MHD__gnutls_set_datum (&info->dh.public_key, &packed_session->data[pos],
-                           size);
-  if (ret < 0)
-    {
-      MHD_gnutls_assert ();
-      goto error;
-    }
-  pos += size;
-
-  return 0;
-
-error:
-  MHD__gnutls_free_datum (&info->dh.prime);
-  MHD__gnutls_free_datum (&info->dh.generator);
-  MHD__gnutls_free_datum (&info->dh.public_key);
-  return ret;
-}
-#endif
-
-
-/* Packs the security parameters.
- */
-
-/* Format:
- *      4 bytes the total security data size
- *      1 byte the entity type (client/server)
- *      1 byte the key exchange algorithm used
- *      1 byte the read cipher algorithm
- *      1 byte the read mac algorithm
- *      1 byte the read compression algorithm
- *
- *      1 byte the write cipher algorithm
- *      1 byte the write mac algorithm
- *      1 byte the write compression algorithm
- *
- *      1 byte the certificate type
- *      1 byte the protocol version
- *
- *      2 bytes the cipher suite
- *
- *      48 bytes the master secret
- *
- *      32 bytes the client random
- *      32 bytes the server random
- *
- *      1 byte the session ID size
- *      x bytes the session ID (32 bytes max)
- *
- *      4 bytes a timestamp
- *            -------------------
- *                MAX: 165 bytes
- *
- *      EXTENSIONS:
- *      2 bytes the record send size
- *      2 bytes the record recv size
- *
- *      1 byte the SRP username size
- *      x bytes the SRP username (MAX_SRP_USERNAME)
- *
- *      2 bytes the number of server name extensions (up to 
MAX_SERVER_NAME_EXTENSIONS)
- *      1 byte the first name type
- *      2 bytes the size of the first name
- *      x bytes the first name (MAX_SERVER_NAME_SIZE)
- *       and so on...
- *
- *           --------------------
- *                MAX: 
7+MAX_SRP_USERNAME+MAX_SERVER_NAME_EXTENSIONS*(3+MAX_SERVER_NAME_SIZE)
- */
-static int
-pack_security_parameters (MHD_gtls_session_t session,
-                          MHD_gnutls_datum_t * packed_session)
-{
-  int pos = 0;
-  size_t len, init, i;
-
-  /* move after the auth info stuff.
-   */
-  init =
-    MHD_gtls_read_uint32 (&packed_session->data[PACK_HEADER_SIZE]) + 4 +
-    PACK_HEADER_SIZE;
-
-  pos = init + 4;               /* make some space to write later the size */
-
-  packed_session->data[pos++] = session->security_parameters.entity;
-  packed_session->data[pos++] = session->security_parameters.kx_algorithm;
-  packed_session->data[pos++] =
-    session->security_parameters.read_bulk_cipher_algorithm;
-  packed_session->data[pos++] =
-    session->security_parameters.read_mac_algorithm;
-  packed_session->data[pos++] =
-    session->security_parameters.read_compression_algorithm;
-  packed_session->data[pos++] =
-    session->security_parameters.write_bulk_cipher_algorithm;
-  packed_session->data[pos++] =
-    session->security_parameters.write_mac_algorithm;
-  packed_session->data[pos++] =
-    session->security_parameters.write_compression_algorithm;
-  packed_session->data[pos++] =
-    session->security_parameters.current_cipher_suite.suite[0];
-  packed_session->data[pos++] =
-    session->security_parameters.current_cipher_suite.suite[1];
-
-  packed_session->data[pos++] = session->security_parameters.cert_type;
-  packed_session->data[pos++] = session->security_parameters.version;
-
-  memcpy (&packed_session->data[pos],
-          session->security_parameters.master_secret, TLS_MASTER_SIZE);
-  pos += TLS_MASTER_SIZE;
-
-  memcpy (&packed_session->data[pos],
-          session->security_parameters.client_random, TLS_RANDOM_SIZE);
-  pos += TLS_RANDOM_SIZE;
-  memcpy (&packed_session->data[pos],
-          session->security_parameters.server_random, TLS_RANDOM_SIZE);
-  pos += TLS_RANDOM_SIZE;
-
-  packed_session->data[pos++] = session->security_parameters.session_id_size;
-  memcpy (&packed_session->data[pos], session->security_parameters.session_id,
-          session->security_parameters.session_id_size);
-  pos += session->security_parameters.session_id_size;
-
-  MHD_gtls_write_uint32 (session->security_parameters.timestamp,
-                         &packed_session->data[pos]);
-  pos += 4;
-
-  /* Extensions */
-  MHD_gtls_write_uint16 (session->security_parameters.max_record_send_size,
-                         &packed_session->data[pos]);
-  pos += 2;
-
-  MHD_gtls_write_uint16 (session->security_parameters.max_record_recv_size,
-                         &packed_session->data[pos]);
-  pos += 2;
-
-  /* SRP */
-  len =
-    strlen ((char *) session->security_parameters.extensions.srp_username);
-  packed_session->data[pos++] = len;
-  memcpy (&packed_session->data[pos],
-          session->security_parameters.extensions.srp_username, len);
-  pos += len;
-
-  MHD_gtls_write_uint16 (session->security_parameters.
-                         extensions.server_names_size,
-                         &packed_session->data[pos]);
-  pos += 2;
-
-  for (i = 0; i < session->security_parameters.extensions.server_names_size;
-       i++)
-    {
-      packed_session->data[pos++] =
-        session->security_parameters.extensions.server_names[i].type;
-      MHD_gtls_write_uint16 (session->security_parameters.
-                             extensions.server_names[i].name_length,
-                             &packed_session->data[pos]);
-      pos += 2;
-
-      memcpy (&packed_session->data[pos],
-              session->security_parameters.extensions.server_names[i].name,
-              session->security_parameters.extensions.
-              server_names[i].name_length);
-      pos +=
-        session->security_parameters.extensions.server_names[i].name_length;
-    }
-
-  /* write the total size */
-  MHD_gtls_write_uint32 (pos - init - 4, &packed_session->data[init]);
-  packed_session->size += pos - init;
-
-  return 0;
-}
-
-
-static int
-unpack_security_parameters (MHD_gtls_session_t session,
-                            const MHD_gnutls_datum_t * packed_session)
-{
-  size_t pack_size, init, i;
-  int pos = 0, len;
-  time_t timestamp = time (0);
-
-
-  /* skip the auth info stuff */
-  init =
-    MHD_gtls_read_uint32 (&packed_session->data[PACK_HEADER_SIZE]) + 4 +
-    PACK_HEADER_SIZE;
-
-  pos = init;
-
-  pack_size = MHD_gtls_read_uint32 (&packed_session->data[pos]);
-  pos += 4;
-
-
-  if (pack_size == 0)
-    return GNUTLS_E_INVALID_REQUEST;
-
-  /* a simple check for integrity */
-  if (pack_size > MAX_SEC_PARAMS)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_INVALID_REQUEST;
-    }
-
-  session->internals.resumed_security_parameters.entity =
-    packed_session->data[pos++];
-  session->internals.resumed_security_parameters.kx_algorithm =
-    packed_session->data[pos++];
-  session->internals.resumed_security_parameters.read_bulk_cipher_algorithm =
-    packed_session->data[pos++];
-  session->internals.resumed_security_parameters.read_mac_algorithm =
-    packed_session->data[pos++];
-  session->internals.resumed_security_parameters.read_compression_algorithm =
-    packed_session->data[pos++];
-  session->internals.resumed_security_parameters.write_bulk_cipher_algorithm =
-    packed_session->data[pos++];
-  session->internals.resumed_security_parameters.write_mac_algorithm =
-    packed_session->data[pos++];
-  session->internals.resumed_security_parameters.write_compression_algorithm =
-    packed_session->data[pos++];
-  session->internals.resumed_security_parameters.
-    current_cipher_suite.suite[0] = packed_session->data[pos++];
-  session->internals.resumed_security_parameters.
-    current_cipher_suite.suite[1] = packed_session->data[pos++];
-
-  session->internals.resumed_security_parameters.cert_type =
-    packed_session->data[pos++];
-  session->internals.resumed_security_parameters.version =
-    packed_session->data[pos++];
-
-  memcpy (session->internals.resumed_security_parameters.master_secret,
-          &packed_session->data[pos], TLS_MASTER_SIZE);
-  pos += TLS_MASTER_SIZE;
-
-  memcpy (session->internals.resumed_security_parameters.client_random,
-          &packed_session->data[pos], TLS_RANDOM_SIZE);
-  pos += TLS_RANDOM_SIZE;
-  memcpy (session->internals.resumed_security_parameters.server_random,
-          &packed_session->data[pos], TLS_RANDOM_SIZE);
-  pos += TLS_RANDOM_SIZE;
-
-  session->internals.resumed_security_parameters.session_id_size =
-    packed_session->data[pos++];
-  memcpy (session->internals.resumed_security_parameters.session_id,
-          &packed_session->data[pos],
-          session->internals.resumed_security_parameters.session_id_size);
-  pos += session->internals.resumed_security_parameters.session_id_size;
-
-  session->internals.resumed_security_parameters.timestamp =
-    MHD_gtls_read_uint32 (&packed_session->data[pos]);
-  pos += 4;
-
-  if (timestamp - session->internals.resumed_security_parameters.timestamp >
-      session->internals.expire_time
-      || session->internals.resumed_security_parameters.timestamp > timestamp)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_EXPIRED;
-    }
-
-  /* Extensions */
-  session->internals.resumed_security_parameters.max_record_send_size =
-    MHD_gtls_read_uint16 (&packed_session->data[pos]);
-  pos += 2;
-
-  session->internals.resumed_security_parameters.max_record_recv_size =
-    MHD_gtls_read_uint16 (&packed_session->data[pos]);
-  pos += 2;
-
-
-  /* SRP */
-  len = packed_session->data[pos++];    /* srp username length */
-  memcpy (session->internals.resumed_security_parameters.
-          extensions.srp_username, &packed_session->data[pos], len);
-  session->internals.resumed_security_parameters.
-    extensions.srp_username[len] = 0;
-  pos += len;
-
-  session->internals.resumed_security_parameters.
-    extensions.server_names_size =
-    MHD_gtls_read_uint16 (&packed_session->data[pos]);
-  pos += 2;
-  for (i = 0;
-       i <
-       session->internals.resumed_security_parameters.
-       extensions.server_names_size; i++)
-    {
-      session->internals.resumed_security_parameters.
-        extensions.server_names[i].type = packed_session->data[pos++];
-      session->internals.resumed_security_parameters.
-        extensions.server_names[i].name_length =
-        MHD_gtls_read_uint16 (&packed_session->data[pos]);
-      pos += 2;
-
-      memcpy (session->internals.resumed_security_parameters.
-              extensions.server_names[i].name, &packed_session->data[pos],
-              session->internals.resumed_security_parameters.
-              extensions.server_names[i].name_length);
-      pos +=
-        session->internals.resumed_security_parameters.
-        extensions.server_names[i].name_length;
-    }
-  return 0;
-}

Deleted: libmicrohttpd/src/daemon/https/tls/gnutls_session_pack.h
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_session_pack.h    2008-11-16 
07:36:05 UTC (rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_session_pack.h    2008-11-16 
08:46:25 UTC (rev 7906)
@@ -1,28 +0,0 @@
-/*
- * Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation
- *
- * Author: Nikos Mavrogiannopoulos
- *
- * This file is part of GNUTLS.
- *
- * The GNUTLS library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public License
- * as published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
- * USA
- *
- */
-
-int MHD_gtls_session_pack (MHD_gtls_session_t session,
-                           MHD_gnutls_datum_t * packed_session);
-int MHD_gtls_session_unpack (MHD_gtls_session_t session,
-                             const MHD_gnutls_datum_t * packed_session);

Modified: libmicrohttpd/src/daemon/https/tls/gnutls_state.c
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_state.c   2008-11-16 07:36:05 UTC 
(rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_state.c   2008-11-16 08:46:25 UTC 
(rev 7906)
@@ -89,18 +89,6 @@
 }
 
 /**
- * MHD_gnutls_mac_get - Returns the currently used mac algorithm.
- * @session: is a #MHD_gtls_session_t structure.
- *
- * Returns: the currently used mac algorithm.
- **/
-enum MHD_GNUTLS_HashAlgorithm
-MHD_gnutls_mac_get (MHD_gtls_session_t session)
-{
-  return session->security_parameters.read_mac_algorithm;
-}
-
-/**
  * MHD_gnutls_compression_get - Returns the currently used compression 
algorithm.
  * @session: is a #MHD_gtls_session_t structure.
  *
@@ -322,13 +310,6 @@
   return 0;
 }
 
-/* returns RESUME_FALSE or RESUME_TRUE.
- */
-int
-MHD_gtls_session_is_resumable (MHD_gtls_session_t session)
-{
-  return session->internals.resumable;
-}
 
 /**
  * MHD__gnutls_deinit - This function clears all buffers associated with a 
session
@@ -607,29 +588,6 @@
   session->internals.default_record_version[1] = minor;
 }
 
-/**
- * MHD_gtls_handshake_set_private_extensions - Used to enable the private 
cipher suites
- * @session: is a #MHD_gtls_session_t structure.
- * @allow: is an integer (0 or 1)
- *
- * This function will enable or disable the use of private cipher
- * suites (the ones that start with 0xFF).  By default or if @allow
- * is 0 then these cipher suites will not be advertized nor used.
- *
- * Unless this function is called with the option to allow (1), then
- * no compression algorithms, like LZO.  That is because these
- * algorithms are not yet defined in any RFC or even internet draft.
- *
- * Enabling the private ciphersuites when talking to other than
- * gnutls servers and clients may cause interoperability problems.
- **/
-void
-MHD_gtls_handshake_set_private_extensions (MHD_gtls_session_t session,
-                                           int allow)
-{
-  session->internals.enable_private = allow;
-}
-
 inline static int
 MHD__gnutls_cal_PRF_A (enum MHD_GNUTLS_HashAlgorithm algorithm,
                        const void *secret,
@@ -834,209 +792,7 @@
 
 }
 
-/**
- * MHD__gnutls_prf_raw - access the TLS PRF directly
- * @session: is a #MHD_gtls_session_t structure.
- * @label_size: length of the @label variable.
- * @label: label used in PRF computation, typically a short string.
- * @seed_size: length of the @seed variable.
- * @seed: optional extra data to seed the PRF with.
- * @outsize: size of pre-allocated output buffer to hold the output.
- * @out: pre-allocate buffer to hold the generated data.
- *
- * Apply the TLS Pseudo-Random-Function (PRF) using the master secret
- * on some data.
- *
- * The @label variable usually contain a string denoting the purpose
- * for the generated data.  The @seed usually contain data such as the
- * client and server random, perhaps together with some additional
- * data that is added to guarantee uniqueness of the output for a
- * particular purpose.
- *
- * Because the output is not guaranteed to be unique for a particular
- * session unless @seed include the client random and server random
- * fields (the PRF would output the same data on another connection
- * resumed from the first one), it is not recommended to use this
- * function directly.  The MHD__gnutls_prf() function seed the PRF with the
- * client and server random fields directly, and is recommended if you
- * want to generate pseudo random data unique for each session.
- *
- * Returns: %GNUTLS_E_SUCCESS on success, or an error code.
- **/
-int
-MHD__gnutls_prf_raw (MHD_gtls_session_t session,
-                     size_t label_size,
-                     const char *label,
-                     size_t seed_size, const char *seed, size_t outsize,
-                     char *out)
-{
-  int ret;
 
-  ret = MHD_gtls_PRF (session, session->security_parameters.master_secret,
-                      TLS_MASTER_SIZE, label, label_size, (opaque *) seed,
-                      seed_size, outsize, out);
-
-  return ret;
-}
-
-/**
- * MHD__gnutls_prf - derive pseudo-random data using the TLS PRF
- * @session: is a #MHD_gtls_session_t structure.
- * @label_size: length of the @label variable.
- * @label: label used in PRF computation, typically a short string.
- * @server_random_first: non-0 if server random field should be first in seed
- * @extra_size: length of the @extra variable.
- * @extra: optional extra data to seed the PRF with.
- * @outsize: size of pre-allocated output buffer to hold the output.
- * @out: pre-allocate buffer to hold the generated data.
- *
- * Apply the TLS Pseudo-Random-Function (PRF) using the master secret
- * on some data, seeded with the client and server random fields.
- *
- * The @label variable usually contain a string denoting the purpose
- * for the generated data.  The @server_random_first indicate whether
- * the client random field or the server random field should be first
- * in the seed.  Non-0 indicate that the server random field is first,
- * 0 that the client random field is first.
- *
- * The @extra variable can be used to add more data to the seed, after
- * the random variables.  It can be used to tie make sure the
- * generated output is strongly connected to some additional data
- * (e.g., a string used in user authentication).
- *
- * The output is placed in address@hidden, which must be pre-allocated.
- *
- * Returns: %GNUTLS_E_SUCCESS on success, or an error code.
- **/
-int
-MHD__gnutls_prf (MHD_gtls_session_t session,
-                 size_t label_size,
-                 const char *label,
-                 int server_random_first,
-                 size_t extra_size, const char *extra, size_t outsize,
-                 char *out)
-{
-  int ret;
-  opaque *seed;
-  size_t seedsize = 2 * TLS_RANDOM_SIZE + extra_size;
-
-  seed = MHD_gnutls_malloc (seedsize);
-  if (!seed)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_MEMORY_ERROR;
-    }
-
-  memcpy (seed,
-          server_random_first ? session->security_parameters.server_random
-          : session->security_parameters.client_random, TLS_RANDOM_SIZE);
-  memcpy (seed + TLS_RANDOM_SIZE,
-          server_random_first ? session->security_parameters.client_random
-          : session->security_parameters.server_random, TLS_RANDOM_SIZE);
-
-  memcpy (seed + 2 * TLS_RANDOM_SIZE, extra, extra_size);
-
-  ret = MHD_gtls_PRF (session, session->security_parameters.master_secret,
-                      TLS_MASTER_SIZE, label, label_size, seed, seedsize,
-                      outsize, out);
-
-  MHD_gnutls_free (seed);
-
-  return ret;
-}
-
-/**
- * MHD_gtls_session_get_client_random - get the session's client random value
- * @session: is a #MHD_gtls_session_t structure.
- *
- * Return a pointer to the 32-byte client random field used in the
- * session.  The pointer must not be modified or deallocated.
- *
- * If a client random value has not yet been established, the output
- * will be garbage; in particular, a %NULL return value should not be
- * expected.
- *
- * Returns: pointer to client random data.
- **/
-const void *
-MHD_gtls_session_get_client_random (MHD_gtls_session_t session)
-{
-  return (char *) session->security_parameters.client_random;
-}
-
-/**
- * MHD_gtls_session_get_server_random - get the session's server random value
- * @session: is a #MHD_gtls_session_t structure.
- *
- * Return a pointer to the 32-byte server random field used in the
- * session.  The pointer must not be modified or deallocated.
- *
- * If a server random value has not yet been established, the output
- * will be garbage; in particular, a %NULL return value should not be
- * expected.
- *
- * Returns: pointer to server random data.
- **/
-const void *
-MHD_gtls_session_get_server_random (MHD_gtls_session_t session)
-{
-  return (char *) session->security_parameters.server_random;
-}
-
-/**
- * MHD_gtls_session_get_master_secret - get the session's master secret value
- * @session: is a #MHD_gtls_session_t structure.
- *
- * Return a pointer to the 48-byte master secret in the session.  The
- * pointer must not be modified or deallocated.
- *
- * If a master secret value has not yet been established, the output
- * will be garbage; in particular, a %NULL return value should not be
- * expected.
- *
- * Consider using MHD__gnutls_prf() rather than extracting the master
- * secret and use it to derive further data.
- *
- * Returns: pointer to master secret data.
- **/
-const void *
-MHD_gtls_session_get_master_secret (MHD_gtls_session_t session)
-{
-  return (char *) session->security_parameters.master_secret;
-}
-
-/**
- * MHD_gtls_session_is_resumed - Used to check whether this session is a 
resumed one
- * @session: is a #MHD_gtls_session_t structure.
- *
- * Returns: non zero if this session is resumed, or a zero if this is
- * a new session.
- **/
-int
-MHD_gtls_session_is_resumed (MHD_gtls_session_t session)
-{
-#if MHD_DEBUG_TLS
-  if (session->security_parameters.entity == GNUTLS_CLIENT)
-    {
-      if (session->security_parameters.session_id_size > 0
-          && session->security_parameters.session_id_size
-          == session->internals.resumed_security_parameters.session_id_size
-          && memcmp (session->security_parameters.session_id,
-                     session->internals.
-                     resumed_security_parameters.session_id,
-                     session->security_parameters.session_id_size) == 0)
-        return 1;
-    }
-  else
-#endif
-    {
-      if (session->internals.resumed == RESUME_TRUE)
-        return 1;
-    }
-
-  return 0;
-}
-
 /*-
  * MHD_gtls_session_is_export - Used to check whether this session is of 
export grade
  * @session: is a #MHD_gtls_session_t structure.
@@ -1060,34 +816,6 @@
 }
 
 /**
- * MHD_gtls_session_get_ptr - Used to get the user pointer from the session 
structure
- * @session: is a #MHD_gtls_session_t structure.
- *
- * Returns: the user given pointer from the session structure.  This
- * is the pointer set with MHD__gnutls_session_set_ptr().
- **/
-void *
-MHD_gtls_session_get_ptr (MHD_gtls_session_t session)
-{
-  return session->internals.user_ptr;
-}
-
-/**
- * MHD__gnutls_session_set_ptr - Used to set the user pointer to the session 
structure
- * @session: is a #MHD_gtls_session_t structure.
- * @ptr: is the user pointer
- *
- * This function will set (associate) the user given pointer to the
- * session structure.  This is pointer can be accessed with
- * MHD_gtls_session_get_ptr().
- **/
-void
-MHD__gnutls_session_set_ptr (MHD_gtls_session_t session, void *ptr)
-{
-  session->internals.user_ptr = ptr;
-}
-
-/**
  * MHD__gnutls_record_get_direction - This function will return the direction 
of the last interrupted function call
  * @session: is a #MHD_gtls_session_t structure.
  *
@@ -1110,52 +838,3 @@
   return session->internals.direction;
 }
 
-/*-
- * MHD__gnutls_rsa_pms_set_version - Sets a version to be used at the RSA PMS
- * @session: is a #MHD_gtls_session_t structure.
- * @major: is the major version to use
- * @minor: is the minor version to use
- *
- * This function will set the given version number to be used at the
- * RSA PMS secret. This is only useful to clients, which want to
- * test server's capabilities.
- *
- -*/
-void
-MHD__gnutls_rsa_pms_set_version (MHD_gtls_session_t session,
-                                 unsigned char major, unsigned char minor)
-{
-  session->internals.rsa_pms_version[0] = major;
-  session->internals.rsa_pms_version[1] = minor;
-}
-
-/**
- * MHD__gnutls_handshake_set_post_client_hello_function - This function will a 
callback to be called after the client hello is received
- * @res: is a MHD_gtls_anon_server_credentials_t structure
- * @func: is the function to be called
- *
- * This function will set a callback to be called after the client
- * hello has been received (callback valid in server side only). This
- * allows the server to adjust settings based on received extensions.
- *
- * Those settings could be ciphersuites, requesting certificate, or
- * anything else except for version negotiation (this is done before
- * the hello message is parsed).
- *
- * This callback must return 0 on success or a gnutls error code to
- * terminate the handshake.
- *
- * NOTE: You should not use this function to terminate the handshake
- * based on client input unless you know what you are doing. Before
- * the handshake is finished there is no way to know if there is a
- * man-in-the-middle attack being performed.
- *
- **/
-void
-MHD__gnutls_handshake_set_post_client_hello_function (MHD_gtls_session_t
-                                                      session,
-                                                      
MHD_gnutls_handshake_post_client_hello_func
-                                                      func)
-{
-  session->internals.user_hello_func = func;
-}

Modified: libmicrohttpd/src/daemon/https/tls/gnutls_str.c
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_str.c     2008-11-16 07:36:05 UTC 
(rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_str.c     2008-11-16 08:46:25 UTC 
(rev 7906)
@@ -73,24 +73,6 @@
 }
 
 void
-MHD_gtls_mem_cpy (char *dest,
-                  size_t dest_tot_size, const char *src, size_t src_size)
-{
-
-  if (dest_tot_size >= src_size)
-    {
-      memcpy (dest, src, src_size);
-    }
-  else
-    {
-      if (dest_tot_size > 0)
-        {
-          memcpy (dest, src, dest_tot_size);
-        }
-    }
-}
-
-void
 MHD_gtls_string_init (MHD_gtls_string * str,
                       MHD_gnutls_alloc_function alloc_func,
                       MHD_gnutls_realloc_function realloc_func,
@@ -117,85 +99,10 @@
   str->length = 0;
 }
 
-/* This one does not copy the string.
- */
-MHD_gnutls_datum_t
-MHD_gtls_string2datum (MHD_gtls_string * str)
-{
-  MHD_gnutls_datum_t ret;
-
-  ret.data = str->data;
-  ret.size = str->length;
-
-  return ret;
-}
-
 #define MIN_CHUNK 256
 
-int
-MHD_gtls_string_copy_str (MHD_gtls_string * dest, const char *src)
-{
-  size_t src_len = strlen (src);
-  size_t max;
-  if (dest->max_length >= src_len)
-    {
-      memcpy (dest->data, src, src_len);
-      dest->length = src_len;
 
-      return src_len;
-    }
-  else
-    {
-      max = (src_len > MIN_CHUNK) ? src_len : MIN_CHUNK;
-      dest->data = dest->realloc_func (dest->data, max);
-      if (dest->data == NULL)
-        {
-          MHD_gnutls_assert ();
-          return GNUTLS_E_MEMORY_ERROR;
-        }
-      dest->max_length = MAX (MIN_CHUNK, src_len);
-
-      memcpy (dest->data, src, src_len);
-      dest->length = src_len;
-
-      return src_len;
-    }
-}
-
 int
-MHD_gtls_string_append_str (MHD_gtls_string * dest, const char *src)
-{
-  size_t src_len = strlen (src);
-  size_t tot_len = src_len + dest->length;
-
-  if (dest->max_length >= tot_len)
-    {
-      memcpy (&dest->data[dest->length], src, src_len);
-      dest->length = tot_len;
-
-      return tot_len;
-    }
-  else
-    {
-      size_t new_len =
-        MAX (src_len, MIN_CHUNK) + MAX (dest->max_length, MIN_CHUNK);
-
-      dest->data = dest->realloc_func (dest->data, new_len);
-      if (dest->data == NULL)
-        {
-          MHD_gnutls_assert ();
-          return GNUTLS_E_MEMORY_ERROR;
-        }
-      dest->max_length = new_len;
-
-      memcpy (&dest->data[dest->length], src, src_len);
-      dest->length = tot_len;
-
-      return tot_len;
-    }
-}
-
-int
 MHD_gtls_string_append_data (MHD_gtls_string * dest,
                              const void *data, size_t data_size)
 {
@@ -249,39 +156,3 @@
   return buffer;
 }
 
-/* just a hex2bin function.
- */
-int
-MHD_gtls_hex2bin (const opaque * hex_data,
-                  int hex_size, opaque * bin_data, size_t * bin_size)
-{
-  int i, j;
-  opaque hex2_data[3];
-  unsigned long val;
-
-  /* FIXME: we don't handle whitespace.
-   */
-  hex_size /= 2;
-
-  if (*bin_size < (size_t) hex_size)
-    {
-      MHD_gnutls_assert ();
-      return GNUTLS_E_SHORT_MEMORY_BUFFER;
-    }
-
-  for (i = j = 0; j < hex_size; i += 2, j++)
-    {
-      hex2_data[0] = hex_data[i];
-      hex2_data[1] = hex_data[i + 1];
-      hex2_data[2] = 0;
-      val = strtoul ((char *) hex2_data, NULL, 16);
-      if (val == ULONG_MAX)
-        {
-          MHD_gnutls_assert ();
-          return GNUTLS_E_SRP_PWD_PARSING_ERROR;
-        }
-      bin_data[j] = val;
-    }
-
-  return 0;
-}

Modified: libmicrohttpd/src/daemon/https/tls/gnutls_str.h
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_str.h     2008-11-16 07:36:05 UTC 
(rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_str.h     2008-11-16 08:46:25 UTC 
(rev 7906)
@@ -28,8 +28,6 @@
 #include <gnutls_int.h>
 
 void MHD_gtls_str_cpy (char *dest, size_t dest_tot_size, const char *src);
-void MHD_gtls_mem_cpy (char *dest, size_t dest_tot_size, const char *src,
-                       size_t src_size);
 void MHD_gtls_str_cat (char *dest, size_t dest_tot_size, const char *src);
 
 typedef struct
@@ -47,18 +45,9 @@
                            MHD_gnutls_free_function);
 void MHD_gtls_string_clear (MHD_gtls_string *);
 
-/* Beware, do not clear the string, after calling this
- * function
- */
-MHD_gnutls_datum_t MHD_gtls_string2datum (MHD_gtls_string * str);
-
-int MHD_gtls_string_copy_str (MHD_gtls_string * dest, const char *src);
-int MHD_gtls_string_append_str (MHD_gtls_string *, const char *str);
 int MHD_gtls_string_append_data (MHD_gtls_string *, const void *data,
                                  size_t data_size);
 char *MHD_gtls_bin2hex (const void *old, size_t oldlen, char *buffer,
                         size_t buffer_size);
-int MHD_gtls_hex2bin (const opaque * hex_data, int hex_size,
-                      opaque * bin_data, size_t * bin_size);
 
 #endif

Modified: libmicrohttpd/src/daemon/https/tls/gnutls_supplemental.c
===================================================================
--- libmicrohttpd/src/daemon/https/tls/gnutls_supplemental.c    2008-11-16 
07:36:05 UTC (rev 7905)
+++ libmicrohttpd/src/daemon/https/tls/gnutls_supplemental.c    2008-11-16 
08:46:25 UTC (rev 7906)
@@ -67,19 +67,7 @@
   {0, 0, 0, 0}
 };
 
-const char *
-MHD_gtls_supplemental_get_name (MHD_gnutls_supplemental_data_format_type_t
-                                type)
-{
-  MHD_gnutls_supplemental_entry *p;
 
-  for (p = MHD__gnutls_supplemental; p->name != NULL; p++)
-    if (p->type == type)
-      return p->name;
-
-  return NULL;
-}
-
 static supp_recv_func
 get_supp_func_recv (MHD_gnutls_supplemental_data_format_type_t type)
 {

Modified: libmicrohttpd/src/include/microhttpd.h
===================================================================
--- libmicrohttpd/src/include/microhttpd.h      2008-11-16 07:36:05 UTC (rev 
7905)
+++ libmicrohttpd/src/include/microhttpd.h      2008-11-16 08:46:25 UTC (rev 
7906)
@@ -547,16 +547,6 @@
    */
   MHD_GNUTLS_CRD_CERTIFICATE = 1,
 
-  /**
-   * Use SRP (password-based authentication).
-   */
-  MHD_GNUTLS_CRD_SRP,
-
-  /**
-   * Use PSK (pre-shared keys).
-   */
-  MHD_GNUTLS_CRD_PSK,
-
 };
 
 /**





reply via email to

[Prev in Thread] Current Thread [Next in Thread]