mirror of
https://github.com/openvswitch/ovs
synced 2025-08-31 14:25:26 +00:00
Shutdown SSL connection before closing socket
Without shutting down the SSL connection, log messages like: stream_ssl|WARN|SSL_read: unexpected SSL connection close jsonrpc|WARN|ssl:127.0.0.1:47052: receive error: Protocol error reconnect|WARN|ssl:127.0.0.1:47052: connection dropped (Protocol error) would occur whenever the socket is closed. This just adds an SSLStream.close() that calls shutdown() and ignores SSL errors, the same way that lib/stream-ssl.c does in ssl_close(). Signed-off-by: Terry Wilson <twilson@redhat.com> Signed-off-by: Ben Pfaff <blp@ovn.org>
This commit is contained in:
@@ -825,6 +825,14 @@ class SSLStream(Stream):
|
|||||||
except SSL.SysCallError as e:
|
except SSL.SysCallError as e:
|
||||||
return -ovs.socket_util.get_exception_errno(e)
|
return -ovs.socket_util.get_exception_errno(e)
|
||||||
|
|
||||||
|
def close(self):
|
||||||
|
if self.socket:
|
||||||
|
try:
|
||||||
|
self.socket.shutdown()
|
||||||
|
except SSL.Error:
|
||||||
|
pass
|
||||||
|
return super(SSLStream, self).close()
|
||||||
|
|
||||||
|
|
||||||
if SSL:
|
if SSL:
|
||||||
# Register SSL only if the OpenSSL module is available
|
# Register SSL only if the OpenSSL module is available
|
||||||
|
Reference in New Issue
Block a user