Fixes: #12963 Signed-off-by: Michael Tremer michael.tremer@ipfire.org --- config/ovpn/openvpn-authenticator | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/config/ovpn/openvpn-authenticator b/config/ovpn/openvpn-authenticator index c22e08f0a..4341993e6 100644 --- a/config/ovpn/openvpn-authenticator +++ b/config/ovpn/openvpn-authenticator @@ -68,6 +68,12 @@ class OpenVPNAuthenticator(object):
while True: char = self.sock.recv(1) + + # Break if we could not read from the socket + if not char: + raise EOFError("Could not read from socket") + + # Append to buffer buf.append(char)
# Reached end of line @@ -112,7 +118,7 @@ class OpenVPNAuthenticator(object): self._client_event(line)
# Terminate the daemon when it loses its connection to the OpenVPN daemon - except ConnectionResetError as e: + except (ConnectionResetError, EOFError) as e: log.error("Connection to OpenVPN has been lost: %s" % e)
log.info("OpenVPN Authenticator terminated")