<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:times new roman, new york, times, serif;font-size:12pt"><div><script type="text/javascript" defer="defer">var YAHOO = {'Shortcuts' : {}};
YAHOO.Shortcuts.hasSensitiveText = true;
YAHOO.Shortcuts.sensitivityType = ["sensitive_news_terms"];
YAHOO.Shortcuts.doUlt = false;
YAHOO.Shortcuts.location = "us";
YAHOO.Shortcuts.document_id = 0;
YAHOO.Shortcuts.document_type = "";
YAHOO.Shortcuts.document_title = "Automatic DLL loading behavior";
YAHOO.Shortcuts.document_publish_date = "";
YAHOO.Shortcuts.document_author = "kaizyn@sbcglobal.net";
YAHOO.Shortcuts.document_url = "";
YAHOO.Shortcuts.document_tags = "";
YAHOO.Shortcuts.annotationSet = {
};
</script>
<style type="text/css"><!-- DIV {margin:0px;}--></style><link rel="stylesheet" href="http://us.js2.yimg.com/us.js.yimg.com/lib/lw/contextual_shortcuts_3.0.4.css" type="text/css" media="all"><div style="font-family: times new roman,new york,times,serif; font-size: 12pt;"><div>Hello All,<br><br>I
have a fairly straightforward script that attempts to connect to a web
server using https and retrieve some data which is then compared to a
file retrieved out of subversion. To do these tasks, my script is
using M2Crypto 0.18.2 and PySVN 1.5.3-904. While these are only
incidental to my problem, I thought it worth including for background.<br><br>If
in the script the import order is to load M2Crypto followed by PySVN,
the function call attempting to connect to the subversion fails with
the following error: <br><br>"pysvn._pysvn_2_5.ClientError: PROPFIND request failed on '<svn path>'<br>PROPFIND of '<svn path>': SSL negotiation failed: SSL <span>disabled due to library version mismatch (<a rel="nofollow" target="_blank" href="https://typhon/">https://typhon</a>)"</span><br><br>If
I upgrade to Python 2.5.2 from 2.5.1, the python interpreter crashes
with a fatal exception instead of throwing the exception listed above.<br><br>Now, if instead I import PySVN first before M2Crypto, then compilation of the script fails with this exception:<br><br>"Traceback (most recent call last):<br> File "D:\programs\working\test.py", line 20, in <module><br> import M2Crypto<br> File "C:\utils\Python25\Lib\site-packages\M2Crypto\__init__.py", line 14, in <module><br> import __m2crypto<br>ImportError: DLL load failed: The specified procedure could not be found."<br><br>Further
research into this problem shows that M2Crypto and PySVN are compiled
against different versions of the OpenSSL dlls. I can't help but
wonder if this suggests a wider problem with how dlls are handled. It
makes sense that the Python VM would only want to load 1 copy of any
dlls for memory and performance reasons, but then it leaves problems
like this one. Maybe the only 'workaround' is to compile external
modules for yourself rather than relying on pre-built binaries. If you
have any information or advice for me, it would be appreciated.<br><br>Thank you,<br>John Siegrist<br><br><br><br></div></div><span id="lw_beacon_1209663933351"></span><div style="top: -400px; left: -400px; position: absolute;" class="module overlay yui-module yui-overlay" id="lwPreview"><div class="hd"></div><div class="bd"></div><div class="ft"></div></div></div></div></body></html>