diff options
author | Erlang/OTP <[email protected]> | 2019-06-12 09:51:18 +0200 |
---|---|---|
committer | Erlang/OTP <[email protected]> | 2019-06-12 09:51:18 +0200 |
commit | 3af70ef223b832e34aa85bf7789e1795a0650825 (patch) | |
tree | c715956b839a72e091c07c7dc5a307f7dde11ce5 | |
parent | f13d2ba7a5090858117c629eae165d2a620060f9 (diff) | |
parent | 9fdfaa533a131aa1b6b73accf739bdf23be84fb6 (diff) | |
download | otp-3af70ef223b832e34aa85bf7789e1795a0650825.tar.gz otp-3af70ef223b832e34aa85bf7789e1795a0650825.tar.bz2 otp-3af70ef223b832e34aa85bf7789e1795a0650825.zip |
Merge branch 'ingela/ssl/ret-ext/ERL-951/OTP-15862' into maint-22
* ingela/ssl/ret-ext/ERL-951/OTP-15862:
ssl: Fix broken return value
-rw-r--r-- | lib/ssl/src/ssl_connection.erl | 8 | ||||
-rw-r--r-- | lib/ssl/test/ssl_test_lib.erl | 1 |
2 files changed, 8 insertions, 1 deletions
diff --git a/lib/ssl/src/ssl_connection.erl b/lib/ssl/src/ssl_connection.erl index 5befda9cac..a8cb9ea815 100644 --- a/lib/ssl/src/ssl_connection.erl +++ b/lib/ssl/src/ssl_connection.erl @@ -124,7 +124,7 @@ handshake(#sslsocket{pid = [Pid|_]} = Socket, Timeout) -> connected -> {ok, Socket}; {ok, Ext} -> - {ok, Socket, Ext}; + {ok, Socket, no_records(Ext)}; Error -> Error end. @@ -709,6 +709,7 @@ handle_session(#server_hello{cipher_suite = CipherSuite, {ExpectNPN, Protocol} = case Protocol0 of undefined -> + {false, CurrentProtocol}; _ -> {ProtoExt =:= npn, Protocol0} @@ -3000,3 +3001,8 @@ new_emulated([], EmOpts) -> EmOpts; new_emulated(NewEmOpts, _) -> NewEmOpts. + +no_records(Extensions) -> + maps:map(fun(_, Value) -> + ssl_handshake:extension_value(Value) + end, Extensions). diff --git a/lib/ssl/test/ssl_test_lib.erl b/lib/ssl/test/ssl_test_lib.erl index 733ee993a8..6294ce3739 100644 --- a/lib/ssl/test/ssl_test_lib.erl +++ b/lib/ssl/test/ssl_test_lib.erl @@ -159,6 +159,7 @@ connect(ListenSocket, Node, N, _, Timeout, SslOpts, [_|_] =ContOpts) -> case ssl:handshake(AcceptSocket, SslOpts, Timeout) of {ok, Socket0, Ext} -> + [_|_] = maps:get(sni, Ext), ct:log("Ext ~p:~n", [Ext]), ct:log("~p:~p~nssl:handshake_continue(~p,~p,~p)~n", [?MODULE,?LINE, Socket0, ContOpts,Timeout]), case ssl:handshake_continue(Socket0, ContOpts, Timeout) of |