aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/tls/tls_server.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/tls/tls_server.cpp')
-rw-r--r--src/lib/tls/tls_server.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/lib/tls/tls_server.cpp b/src/lib/tls/tls_server.cpp
index 215cf0f04..fb0b5eacc 100644
--- a/src/lib/tls/tls_server.cpp
+++ b/src/lib/tls/tls_server.cpp
@@ -454,7 +454,10 @@ void Server::process_client_hello_msg(const Handshake_State* active_state,
if(initial_handshake == false && policy().allow_client_initiated_renegotiation() == false)
{
- send_warning_alert(Alert::NO_RENEGOTIATION);
+ if(policy().abort_connection_on_undesired_renegotiation())
+ throw TLS_Exception(Alert::NO_RENEGOTIATION, "Server policy prohibits renegotiation");
+ else
+ send_warning_alert(Alert::NO_RENEGOTIATION);
return;
}