[ https://issues.apache.org/jira/browse/THRIFT-1549?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
James E. King III resolved THRIFT-1549. --------------------------------------- Resolution: Fixed Fix Version/s: 0.13.0 Based on information in https://bugs.python.org/issue29413 I came up with a fix that essentially does the same thing as the proposed fix. > Python TSSLSocket: Shutdown cleanly > ----------------------------------- > > Key: THRIFT-1549 > URL: https://issues.apache.org/jira/browse/THRIFT-1549 > Project: Thrift > Issue Type: Bug > Components: Python - Library > Affects Versions: 0.8 > Reporter: Yuri Khan > Assignee: James E. King III > Priority: Minor > Fix For: 0.13.0 > > Time Spent: 20m > Remaining Estimate: 0h > > When attempting to use Thrift over SSL, from a Python client to a C++ server, > I noticed in the server logs: > {code:none} > Thrift: Thu Mar 29 18:45:02 2012 SSL_shutdown: error code: 0 > {code} > This seems to be caused by unclean shutdown by the Python client library > where TSocket just closes its socket, and is fixed by the following patch > (against Thrift 0.8): > {code:none} > diff --git a/TSSLSocket.py~ b/TSSLSocket.py > index 15095d3..3e3fd2d 100644 > --- a/TSSLSocket.py~ > +++ b/TSSLSocket.py > @@ -88,6 +88,10 @@ class TSSLSocket(TSocket.TSocket): > if self.validate: > self._validate_cert() > > + def close(self): > + self.handle = self.handle.unwrap() > + TSocket.TSocket.close(self) > + > def _validate_cert(self): > """internal method to validate the peer's SSL certificate, and to check > the > commonName of the certificate to ensure it matches the hostname we > {code} > If needed, ping me, I will do a rebase to HEAD. -- This message was sent by Atlassian JIRA (v7.6.3#76005)