From: Nikos Mavrogiannopoulos Date: Tue, 22 Jan 2013 00:08:14 +0000 (+0100) Subject: Added gnutls_session_clear_invalid X-Git-Tag: gnutls_3_1_7~90 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=1e679e0d18d2a87d9fb6ae90bfb0a986901a047d;p=thirdparty%2Fgnutls.git Added gnutls_session_clear_invalid --- diff --git a/lib/gnutls_session.c b/lib/gnutls_session.c index 2f7bfd1639..e980a48206 100644 --- a/lib/gnutls_session.c +++ b/lib/gnutls_session.c @@ -224,3 +224,20 @@ gnutls_session_set_data (gnutls_session_t session, return 0; } + +/** + * gnutls_session_clear_invalid: + * @session: is a #gnutls_session_t structure. + * + * Clears the invalid flag in a session. That means + * that sessions were corrupt or invalid data were received + * can be re-used. Use only when debugging or experimenting + * with the TLS protocol. Should not be used in typical + * applications. + * + **/ +void +gnutls_session_clear_invalid (gnutls_session_t session) +{ + session->internals.invalid_connection = 0; +} diff --git a/lib/includes/gnutls/gnutls.h.in b/lib/includes/gnutls/gnutls.h.in index ce6538dd3f..1fb1ff13c0 100644 --- a/lib/includes/gnutls/gnutls.h.in +++ b/lib/includes/gnutls/gnutls.h.in @@ -905,6 +905,8 @@ gnutls_ecc_curve_t gnutls_ecc_curve_get(gnutls_session_t session); size_t gnutls_record_check_pending (gnutls_session_t session); + void gnutls_session_clear_invalid (gnutls_session_t session); + int gnutls_prf (gnutls_session_t session, size_t label_size, const char *label, int server_random_first, diff --git a/lib/libgnutls.map b/lib/libgnutls.map index 4917513443..e77b14735d 100644 --- a/lib/libgnutls.map +++ b/lib/libgnutls.map @@ -884,6 +884,7 @@ GNUTLS_3_1_0 { gnutls_x509_crt_set_dn; gnutls_x509_crq_set_dn; gnutls_x509_crt_set_issuer_dn; + gnutls_session_clear_invalid; } GNUTLS_3_0_0; GNUTLS_PRIVATE {