Skip to content
Closed
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 12 additions & 3 deletions lib/plug/ssl.ex
Original file line number Diff line number Diff line change
Expand Up @@ -242,9 +242,18 @@ defmodule Plug.SSL do
end

defp set_secure_defaults(options) do
options
|> Keyword.put_new(:secure_renegotiate, true)
|> Keyword.put_new(:reuse_sessions, true)
if List.keyfind(options, :versions, 0) == {:versions, [:"tlsv1.3"]} do
# secure_renegotiate and reuse_sessions options are not supported
# by the OTP SSL module when earlier versions of TLS are not being used.
# (i.e. TLS1.2 or earlier versions must be specified as it's not supported in TLS1.3)
options
|> Keyword.delete(:secure_renegotiate)
|> Keyword.delete(:reuse_sessions)
else
options
|> Keyword.put_new(:secure_renegotiate, true)
|> Keyword.put_new(:reuse_sessions, true)
end
end

defp configure_managed_tls(options) do
Expand Down