diff --git a/src/cw/dtls_gnutls.c b/src/cw/dtls_gnutls.c index f6c70b5d..103276a1 100644 --- a/src/cw/dtls_gnutls.c +++ b/src/cw/dtls_gnutls.c @@ -20,6 +20,7 @@ #include #include +#include #include "dtls_gnutls.h" @@ -215,6 +216,17 @@ struct dtls_gnutls_data *dtls_gnutls_data_create(struct conn *conn,int config) gnutls_transport_set_push_function(d->session, dtls_gnutls_bio_write); gnutls_transport_set_pull_timeout_function(d->session, dtls_gnutls_bio_wait); + +#if GNUTLS_VERSION_NUMBER >= 0x030100 + gnutls_handshake_set_timeout(d->session, GNUTLS_DEFAULT_HANDSHAKE_TIMEOUT); + + gnutls_dtls_set_data_mtu(d->session, conn->dtls_mtu); +#endif + gnutls_dtls_set_mtu(d->session, conn->dtls_mtu); + + + + return d; } diff --git a/src/cw/dtls_gnutls_connect.c b/src/cw/dtls_gnutls_connect.c index ca5eb876..9a9ea80c 100644 --- a/src/cw/dtls_gnutls_connect.c +++ b/src/cw/dtls_gnutls_connect.c @@ -45,12 +45,13 @@ int dtls_gnutls_connect(struct conn *conn) return 0; // gnutls_dh_set_prime_bits(d->session, 512); -#if GNUTLS_VERSION_NUMBER >= 0x030100 +/*#if GNUTLS_VERSION_NUMBER >= 0x030100 gnutls_handshake_set_timeout(d->session, GNUTLS_DEFAULT_HANDSHAKE_TIMEOUT); gnutls_dtls_set_data_mtu(d->session, 1500); #endif gnutls_dtls_set_mtu(d->session, 1500); +*/ int rc; cw_dbg(DBG_DTLS,"Starting handshake");