From: Nikos Mavrogiannopoulos Date: Sun, 20 Mar 2011 10:06:53 +0000 (+0100) Subject: added gnutls_dtls_get_data_mtu(). X-Git-Tag: gnutls_2_99_0~93 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=84e265447ef5f6cada0db92b9f475ab83c2f25a9;p=thirdparty%2Fgnutls.git added gnutls_dtls_get_data_mtu(). --- diff --git a/lib/gnutls_dtls.c b/lib/gnutls_dtls.c index 9a5771ee18..335e237657 100644 --- a/lib/gnutls_dtls.c +++ b/lib/gnutls_dtls.c @@ -333,6 +333,9 @@ int i, offset = 0; * be retransmitted. The total timeout is the time after which the * handshake will be aborted with %GNUTLS_E_TIMEDOUT. * + * The DTLS protocol recommends the values of 1 sec and 60 seconds + * respectively. + * * If the retransmission timeout is zero then the handshake will operate * in a non-blocking way, i.e., return %GNUTLS_E_AGAIN. * @@ -359,7 +362,7 @@ void gnutls_dtls_set_mtu (gnutls_session_t session, unsigned int mtu) } /** - * gnutls_dtls_get_mtu: + * gnutls_dtls_get_data_mtu: * @session: is a #gnutls_session_t structure. * * This function will return the actual maximum transfer unit for @@ -369,7 +372,7 @@ void gnutls_dtls_set_mtu (gnutls_session_t session, unsigned int mtu) * Returns: the maximum allowed transfer unit. * **/ -unsigned int gnutls_dtls_get_mtu (gnutls_session_t session) +unsigned int gnutls_dtls_get_data_mtu (gnutls_session_t session) { int ret; @@ -380,6 +383,23 @@ int ret; return session->internals.dtls.mtu - RECORD_HEADER_SIZE(session); } +/** + * gnutls_dtls_get_mtu: + * @session: is a #gnutls_session_t structure. + * + * This function will return the MTU size as set with + * gnutls_dtls_set_mtu(). This is not the actual MTU + * of data you can transmit. Use gnutls_dtls_get_data_mtu() + * for that reason. + * + * Returns: the set maximum transfer unit. + * + **/ +unsigned int gnutls_dtls_get_mtu (gnutls_session_t session) +{ + return session->internals.dtls.mtu; +} + #define COOKIE_SIZE 16 #define COOKIE_MAC_SIZE 16 diff --git a/lib/includes/gnutls/dtls.h b/lib/includes/gnutls/dtls.h index 89d038898d..39cb52dcd2 100644 --- a/lib/includes/gnutls/dtls.h +++ b/lib/includes/gnutls/dtls.h @@ -42,6 +42,8 @@ void gnutls_dtls_set_timeouts (gnutls_session_t session, unsigned int retrans_ti unsigned int total_timeout); unsigned int gnutls_dtls_get_mtu (gnutls_session_t session); +unsigned int gnutls_dtls_get_data_mtu (gnutls_session_t session); + void gnutls_dtls_set_mtu (gnutls_session_t session, unsigned int mtu); typedef struct { diff --git a/lib/libgnutls.map b/lib/libgnutls.map index 021f8db4f5..f5d967e4fa 100644 --- a/lib/libgnutls.map +++ b/lib/libgnutls.map @@ -700,6 +700,7 @@ GNUTLS_3_0_0 { gnutls_dtls_cookie_verify; gnutls_dtls_cookie_send; gnutls_dtls_prestate_set; + gnutls_dtls_get_data_mtu; } GNUTLS_2_12; GNUTLS_PRIVATE {