diff options
author | Tom Ryder <tom@sanctum.geek.nz> | 2021-02-07 02:03:41 +1300 |
---|---|---|
committer | Tom Ryder <tom@sanctum.geek.nz> | 2021-02-07 02:05:50 +1300 |
commit | a2a6b489e5bceda1dda10d90f7cee62f9ff62852 (patch) | |
tree | e6cc9daa483419742a9cde4c6c870eb411ff8674 | |
parent | Switch protocol for Origin header based on TLS (diff) | |
download | POE-Component-Client-WebSocket-a2a6b489e5bceda1dda10d90f7cee62f9ff62852.tar.gz POE-Component-Client-WebSocket-a2a6b489e5bceda1dda10d90f7cee62f9ff62852.zip |
Add SNI parameter to POE::Filter::SSL
-rw-r--r-- | lib/POE/Component/Client/WebSocket.pm | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/POE/Component/Client/WebSocket.pm b/lib/POE/Component/Client/WebSocket.pm index 8f5ff3c..642ac64 100644 --- a/lib/POE/Component/Client/WebSocket.pm +++ b/lib/POE/Component/Client/WebSocket.pm @@ -433,7 +433,10 @@ sub _socket_birth { my ($kernel, $socket, $sockid, $heap) = @_[KERNEL, ARG0, ARG3, HEAP]; if ( uc($heap->{uri}->{scheme}) eq 'WSS' ) { - $heap->{_state}->{sslfilter} = POE::Filter::SSL->new(client=>1); + $heap->{_state}->{sslfilter} = POE::Filter::SSL->new( + client => 1, + sni => $heap->{uri}->{host}, + ); $heap->{filters}->{output} = POE::Filter::Stackable->new(Filters => [ $heap->{_state}->{sslfilter} ]); $heap->{filters}->{input} = POE::Filter::Stackable->new(Filters => [ $heap->{_state}->{sslfilter} ]); |