On 15/03/2011 20:28, Christopher Faylor wrote: > On Tue, Mar 15, 2011 at 04:01:35PM -0400, Charles Wilson wrote: >> On 3/15/2011 3:07 PM, Christopher Faylor wrote: >>> On Tue, Mar 15, 2011 at 06:34:27PM +0000, Jon TURNEY wrote: >>>> >>>> I've come across a problem whilst trying to run the twisted test suite, >>>> where >>>> some tests just cause python to segfault. It seems to be the same issue >>>> with >>>> libcrypto as reported in [2],[3] >> >>> Actually you aren't supposed to be able to call anything you like here >>> and it isn't clear why a POSIX/UNIX/Linux program would be relying on >>> DllMain.
Thanks for the clarification. >> There are cases where cygwin-ish code does win32-ish things, like >> login.exe, or the PyWin32 extensions for Python-on-Windows(and cygwin). >> Maybe twisty uses PyWin32? > > The python Twisted stuff works on UNIX systems so there should be no > reason to use Windows-isms in Cygwin code - especially when the > Windows-ism *calls* UNIX code. The ability to get into trouble when you > mix Windows stuff like DllMain with Cygwin stuff is very high. Absolutely. I did read through the UG looking for a statement like that, but the only thing I found was the caveat about mixing POSIX and Win32 calls to set cwd. Perhaps I overlooked something, or maybe it would be good if that was more clearly documented. >> However, it does seem that python (or one of its extensions) is doing >> something it shouldn't. Given the above clarification about cygwin, this is a bug in libcrypto from OpenSSL (which tries to be portable to more than just POSIX, and has a DllMain() which is built for both cygwin and Win32), and a patch like that at [1] (or perhaps one which avoids DllMain on cygwin entirely) should be applied. Sorry that I didn't make it more clear that the underlying issue is in libcrypto rather than twisted or python. [1] http://www.mail-archive.com/openssl-dev@openssl.org/msg24599.html -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple