Hey there, thanks for being there.
I have a Client/Server services originally communicating over TCP. The
client periodically monitors the socket connection by reading from the
socket and, in the case the connection has been lost, the client retries
the connection a given amount of times, after which it realizes that the
server is definitely down.
Now I have implemented secure communication using Stunnel and everything
works fine except for the fact that, whenever the server process crashes
(which is eventually expected), the client is no longer able to
successfully monitor the connection as expected since, no matter what
happens to the server process, the local Stunnel daemon keeps listening on
its local socket. So, when the client retries connection, it successfully
connects to the local socket. Although it soon receives connection reset,
this successful connection attempt happening even when the server process
is actually down completely breaks the client logic. I could change this
logic but I really would like to avoid that path. So here is my question:
Is there a way to configure Stunnel to *close* the local socket (not
listening anymore) whenever the peer process (i.e. the server) has closed
its socket?
Thank you very much in advance.