Create one permanent proxy socket per TLSProxy::Proxy instance
authorRichard Levitte <levitte@openssl.org>
Wed, 17 Jan 2018 10:22:47 +0000 (11:22 +0100)
committerRichard Levitte <levitte@openssl.org>
Fri, 19 Jan 2018 09:09:32 +0000 (10:09 +0100)
commitc7454e1af74b1b99f3f47f782a6ac484c4c55b7f
tree3963435cef8dd4cedec7cf2e1c322ff0f87be6bf
parente44c7d02ddac975ec6abff7901e77a0c37f9949d
Create one permanent proxy socket per TLSProxy::Proxy instance

On Windows, we sometimes see a behavior with SO_REUSEADDR where there
remains lingering listening sockets on the same address and port as a
newly created one.

To avoid this scenario, we don't create a new proxy port for each new
client run.  Instead, we create one proxy socket when the proxy object
is created, and close it when destroying that object.

Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de>
(Merged from https://github.com/openssl/openssl/pull/5095)
util/perl/TLSProxy/Proxy.pm