** libgnutls: Added gnutls_ocsp_resp_check_crt() to check whether the OCSP
response corresponds to the given certificate.
+** libgnutls: In client side gnutls_init() enables the session ticket and
+OCSP certificate status request extensions by default. The flag
+GNUTLS_NO_EXTENSIONS can be used to prevent that.
+
** libdane: Added. It is a library to provide DANE with DNSSEC certificate
verification.
sd = tcp_connect ();
gnutls_init (&session, GNUTLS_CLIENT);
- /* enable useful extensions */
- gnutls_session_ticket_enable_client(session);
- gnutls_ocsp_status_request_enable_client(session, NULL, 0, NULL);
gnutls_priority_set_direct (session, "PERFORMANCE:!ARCFOUR-128", NULL);
gnutls_session_set_ptr (session, (void *) "my_host_name");
- /* enable useful extensions */
- gnutls_session_ticket_enable_client(session);
- gnutls_ocsp_status_request_enable_client(session, NULL, 0, NULL);
-
gnutls_server_name_set (session, GNUTLS_NAME_DNS, "my_host_name",
strlen("my_host_name"));
* also available. The latter flag will enable a non-blocking
* operation of the DTLS timers.
*
+ * Note that since version 3.1.2 this function enables some common
+ * TLS extensions such as session tickets and OCSP certificate status
+ * request in client side by default. To prevent that use the %GNUTLS_NO_EXTENSIONS
+ * flag.
+ *
* Returns: %GNUTLS_E_SUCCESS on success, or an error code.
**/
int
else
(*session)->internals.dtls.blocking = 1;
+ /* Enable useful extensions */
+ if ((flags & GNUTLS_CLIENT) && !(flags & GNUTLS_NO_EXTENSIONS))
+ {
+ gnutls_session_ticket_enable_client(*session);
+ gnutls_ocsp_status_request_enable_client(*session, NULL, 0, NULL);
+ }
+
return 0;
}
* @GNUTLS_CLIENT: Connection end is a client.
* @GNUTLS_DATAGRAM: Connection is datagram oriented (DTLS).
* @GNUTLS_NONBLOCK: Connection should not block (DTLS).
+ * @GNUTLS_NO_EXTENSIONS: Do not enable any TLS extensions by default.
*
*/
#define GNUTLS_SERVER 1
#define GNUTLS_CLIENT (1<<1)
#define GNUTLS_DATAGRAM (1<<2)
#define GNUTLS_NONBLOCK (1<<3)
+#define GNUTLS_NO_EXTENSIONS (1<<4)
/**
* gnutls_alert_level_t:
*
* DO NOT EDIT THIS FILE (cli-args.c)
*
- * It has been AutoGen-ed October 7, 2012 at 12:14:56 AM by AutoGen 5.16
+ * It has been AutoGen-ed October 7, 2012 at 01:02:46 PM by AutoGen 5.16
* From the definitions cli-args.def
* and the template file options
*
*
* DO NOT EDIT THIS FILE (cli-args.h)
*
- * It has been AutoGen-ed October 7, 2012 at 12:14:56 AM by AutoGen 5.16
+ * It has been AutoGen-ed October 7, 2012 at 01:02:46 PM by AutoGen 5.16
* From the definitions cli-args.def
* and the template file options
*
continue;
}
}
- ERR (err, "connect") gnutls_init (&state, GNUTLS_CLIENT);
+ ERR (err, "connect") gnutls_init (&state, GNUTLS_CLIENT|GNUTLS_NO_EXTENSIONS);
gnutls_transport_set_ptr (state, (gnutls_transport_ptr_t)
gl_fd_to_handle (sd));
/* Initialize TLS session
*/
- gnutls_init (&session, GNUTLS_CLIENT|GNUTLS_DATAGRAM);
+ gnutls_init (&session, GNUTLS_CLIENT|GNUTLS_DATAGRAM|GNUTLS_NO_EXTENSIONS);
/* Use default priorities */
gnutls_priority_set_direct (session, "NONE:+VERS-DTLS1.0:+CIPHER-ALL:+MAC-ALL:+SIGN-ALL:+COMP-ALL:+ANON-DH", NULL);
/* Initialize TLS session
*/
- gnutls_init (&session, GNUTLS_CLIENT);
+ gnutls_init (&session, GNUTLS_CLIENT|GNUTLS_NO_EXTENSIONS);
/* Use default priorities */
gnutls_priority_set_direct (session, "NONE:+VERS-TLS-ALL:+CIPHER-ALL:+MAC-ALL:+SIGN-ALL:+COMP-ALL:+ANON-DH", NULL);