diff options
author | Loïc Hoguin <[email protected]> | 2024-11-07 15:26:45 +0100 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2025-01-14 14:32:15 +0100 |
commit | 555522553e3e2f38b178922f778b59c5d89fa069 (patch) | |
tree | 265379b1793c0c0ea51dd3835f9629e1989f865b | |
parent | 4bec14fbf04f4c38b22dcebbbac5ba7e60ff3860 (diff) | |
download | ranch-555522553e3e2f38b178922f778b59c5d89fa069.tar.gz ranch-555522553e3e2f38b178922f778b59c5d89fa069.tar.bz2 ranch-555522553e3e2f38b178922f778b59c5d89fa069.zip |
Fix ranch:recv_proxy_header/2 with OTP-28 (master)
-rw-r--r-- | src/ranch_ssl.erl | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/ranch_ssl.erl b/src/ranch_ssl.erl index f769868..a40986c 100644 --- a/src/ranch_ssl.erl +++ b/src/ranch_ssl.erl @@ -174,7 +174,12 @@ recv_proxy_header(SSLSocket, Timeout) -> %% nothing prevents us from retrieving the TCP socket and using %% it. Since it's an undocumented interface this may however %% make forward-compatibility more difficult. - {sslsocket, {gen_tcp, TCPSocket, _, _}, _} = SSLSocket, + TCPSocket = case element(2, SSLSocket) of + %% Before OTP-28. + {gen_tcp, TCPSocket0, _, _} -> TCPSocket0; + %% OTP-28+. + TCPSocket0 -> TCPSocket0 + end, ranch_tcp:recv_proxy_header(TCPSocket, Timeout). -spec send(ssl:sslsocket(), iodata()) -> ok | {error, atom()}. |