Start up error message - openssl


#1

Steps I took that resulted in the problem:

  1. Start Fritzing
    Get error message:
    Window title: Fritzing.exe - Entry Point Not Found
    Message: The procedure entry point EC_curve_nist2nid could not be located in the dynamik link library C:\Program Files\OpenVPN\bin\ssleay32.dll

What I expected should have happened instead:

Fritzing starting without error message

My version of Fritzing and my operating system:

0.9.3 Windows 10 64 bit latest release (autoupdate)

Please also attach any files that help explaining this problem
##ScreenShot205

BTW, what does Fritzing use OpenSSL for to start?


#2

Fritzing does not use openssl directly but it does check for parts updates when started and since you are using a VPN all of your traffic is being redirected through your VPN which does use openssl to secure its connection. So your problem is not with Fritzing but rather with your installation of openVPN.


#3

Well. I am not running through an active VPN connection and all other software - network enabled - works fine both through and without out an active VPN connection and since the error happens in Fritzing.exe who gives the error message Fritzing must be doing something with OpenVPN or? Does it link to it? Does not matter if OpenVPN is running or not (or connected or not).


#4

The libgit2 library that Fritzing uses to check github for parts updates is likely using open ssl. My guess (given it is patch tuesday at least here) is the latest patches for the latest bug have affected open ssl. I haven’t rebooted to update yet so I don’t yet know if it will bite Win7 if this is true.

Edit: just rebooted Win7 to apply the updates and my machine didn’t brick and Fritzing still works, so maybe it isn’t the new patches (or maybe only on Win10
which I’m not running).

Peter


#5

Well, any way to get this fixed - any info I can provide. That Fritzing calls a DLL in another program’s install directory seems wrong and is if there is a bug.


#6

It appears to be something odd about your machine. There haven’t been any other complaints about Win10 lately making it unlikely to be patch related and the libgit2 dlls are installed in Fritzing’s code directory. In the case of my Win7 machine that looks to be git2.dll in the same directory with Fritzing.exe. On my development build from source with openssl and libssh2 there is a similar name dll but the production version either has it in git2.dll or doesn’t use it. It is possible that there is something odd about your dll search paths that is confusing fritzing although I thought that Fritzing was supposed to be static linked to avoid such problems. You might check that all the dlls in the Fritzing zip file are actually present in the Fritizng directory on your machine to make sure AV or something else hasn’t eaten one of the expected dlls.

Peter


#7

Well, my machine does not “suggest” Fritzing to load a DLL, so Fritzing must be asking for it by itself or by one of its dependencies. If I rename the OpenVPN library - Fritzing does not load the ssleay32.dll at all so it does not seem to care or complain about that if it can’t find one. But it seem like Fritizing loads the dll and expect another version importing an entry that no longer exists in the newest version of ssleay32.dll


#8

Just reading the error it looks like EC_curve_nist2nid is missing from ssleay32.dll, so Win won’t report a missing ssleay32.dll because it’s there, it’s just that version is different to what FZ wants.

Maybe Google EC_curve_nist2nid and ssleay32.dll, because currently FZ is unsupported and only maned by a few - actually one - volunteers that don’t know much about it and are getting no help from the developers.


#9

Actually that specific function is exported by libeay32.dll and not by ssleay32.dll - so it seems like Fritzing or one if its modules are trying to import a function from a wrong dll.


#10

It looks like you know more about debugging on Windows than I do (not hard I will admit :slight_smile: ). Did you check that the directory that contains fritzing.exe (C:\fritzing\fritzing.0.9.3b.64.pc in my case) contains git2.dll? I believe that everything Fritzing needs should be contained in that dll (I’m starting to suspect that I don’t need libssh2 and openssl on Windows but could use the native Windows crypto module to avoid a bunch of extra dlls, I may try that later). If that is what the production release did (and I don’t know, I wasn’t here when 0.9.3.b was released) then it may be the Windows crypto module that is looking for libeay32.dll, that seems unlikely to me as my Win7 system only has that dll in my video driver as far as I can see, but it may be different on Win10. So far as we know you are the only one seeing this particular error and there are (or at least were) lots of folks running Fritzing on Win 10. If it will help you I can dig up the windows crypto module that libgit2 docs indicate can be used (it didn’t appear to work for me, possibly because of other problems which is why I used libssh2 and openssl) as it is a funny named cmake file option that I don’t recognize but may be meaningful to a Windows person. I suspect your problem may be that something else installed on your system is changing something about that api that breaks Fritzing, but I’m only speculating because I don’t know if the Windows distribution used that or not. As Old_Grey said, the original developers are not responding in any forum I know of because they are busy with other things now. That’s life. I’m trying (with so far limited success) to get a development environment for Linux and Windows up and able to compile the development version head code (which gets occasional small changes) and to fix bugs so that development can continue, but that’s a long way from knowing what causes errors. For that I can only guess. If you can tell me how to generate the dll dependency page you show above on Fritzing.exe I can do it on my working Win7 system which may tell us what system dlls Fritzing is expecting to find (because I suspect we will find this is in the Windows crypto module that git2.dll may be referencing)

edit: in case it helps here is the Microsoft library that libgit2 on Windows can use for crypto: -DCRYPTO_BACKEND=WinCNG

as I said doesn’t mean anything to me, but may to you.

Peter


#11

Hi, Yes it contains git2.dll- to be sure I made a new install (Fritzting does not really install) after deleting the old.

Ok - thanks for the thorough answer and I fully understand this is a hard place to be in - not easy to fix things. It is not really a problem to dismiss the error message. If you or someone else ever gets around to making bigger updates, then at least it is recorded as a potential bug / issue.

Thanks.

The tool I use for showing dependencies is: https://github.com/lucasg/Dependencies
I have not been able to find out what really loads the ssleay32.dll which then seems to generate the error and if I remove the OpenVPN folder no other ssleay32.dll or libeay32.dll is loaded instead. As soon as the error message is acknowledged by pressing OK the two DLLs ssleay32.dll or libeay32.dll are unloaded again. A bit strange.

Here is the module load list from WinDbg:


Microsoft (R) Windows Debugger Version 10.0.16299.15 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.

CommandLine: C:\WINPROGS\fritzing.0.9.3b.64.pc\Fritzing.exe
Symbol search path is: srv*
Executable search path is: 
ModLoad: 00007ff7`82df0000 00007ff7`835d3000   image00007ff7`82df0000
ModLoad: 00007ffd`f3410000 00007ffd`f35f0000   ntdll.dll
ModLoad: 00007ffd`f0cf0000 00007ffd`f0d9e000   C:\WINDOWS\System32\KERNEL32.DLL
ModLoad: 00007ffd`f04c0000 00007ffd`f0726000   C:\WINDOWS\System32\KERNELBASE.dll
ModLoad: 00007ffd`f0730000 00007ffd`f0826000   C:\WINDOWS\System32\ucrtbase.dll
ModLoad: 00007ffd`afaa0000 00007ffd`afdb4000   C:\WINPROGS\fritzing.0.9.3b.64.pc\git2.dll
ModLoad: 00007ffd`d8180000 00007ffd`d81d3000   C:\WINPROGS\fritzing.0.9.3b.64.pc\Qt5PrintSupport.dll
ModLoad: 00000000`72d60000 00000000`72db3000   C:\WINPROGS\fritzing.0.9.3b.64.pc\Qt5Svg.dll
ModLoad: 00007ffd`f1ef0000 00007ffd`f3326000   C:\WINDOWS\System32\SHELL32.dll
ModLoad: 00007ffd`f1110000 00007ffd`f11ad000   C:\WINDOWS\System32\msvcrt.dll
ModLoad: 00007ffd`f0410000 00007ffd`f045a000   C:\WINDOWS\System32\cfgmgr32.dll
ModLoad: 00007ffd`f1310000 00007ffd`f141a000   C:\WINDOWS\System32\COMDLG32.dll
ModLoad: 00007ffd`f1790000 00007ffd`f1836000   C:\WINDOWS\System32\shcore.dll
ModLoad: 00007ffd`f0e00000 00007ffd`f1108000   C:\WINDOWS\System32\combase.dll
ModLoad: 00007ffd`f14e0000 00007ffd`f15ff000   C:\WINDOWS\System32\RPCRT4.dll
ModLoad: 00007ffd`ef930000 00007ffd`f0077000   C:\WINDOWS\System32\windows.storage.dll
ModLoad: 00007ffd`ef810000 00007ffd`ef882000   C:\WINDOWS\System32\bcryptPrimitives.dll
ModLoad: 00007ffd`f1420000 00007ffd`f14c1000   C:\WINDOWS\System32\advapi32.dll
ModLoad: 00007ffd`f1600000 00007ffd`f178f000   C:\WINDOWS\System32\USER32.dll
ModLoad: 00007ffd`f12b0000 00007ffd`f130b000   C:\WINDOWS\System32\sechost.dll
ModLoad: 00007ffd`f0080000 00007ffd`f00a0000   C:\WINDOWS\System32\win32u.dll
ModLoad: 00007ffd`f33b0000 00007ffd`f33d8000   C:\WINDOWS\System32\GDI32.dll
ModLoad: 00007ffd`f1e80000 00007ffd`f1ed1000   C:\WINDOWS\System32\shlwapi.dll
ModLoad: 00007ffd`f0270000 00007ffd`f0403000   C:\WINDOWS\System32\gdi32full.dll
ModLoad: 00007ffd`ef7f0000 00007ffd`ef801000   C:\WINDOWS\System32\kernel.appcore.dll
ModLoad: 00007ffd`ef890000 00007ffd`ef92b000   C:\WINDOWS\System32\msvcp_win.dll
ModLoad: 00007ffd`ef760000 00007ffd`ef7ac000   C:\WINDOWS\System32\powrprof.dll
ModLoad: 00007ffd`ef7b0000 00007ffd`ef7cb000   C:\WINDOWS\System32\profapi.dll
ModLoad: 00000000`6fcb0000 00000000`701f1000   C:\WINPROGS\fritzing.0.9.3b.64.pc\Qt5Widgets.dll
ModLoad: 00007ffd`af4d0000 00007ffd`afa98000   C:\WINPROGS\fritzing.0.9.3b.64.pc\Qt5Gui.dll
ModLoad: 00007ffd`f1840000 00007ffd`f1989000   C:\WINDOWS\System32\ole32.dll
ModLoad: 00000000`71790000 00000000`717c4000   C:\WINPROGS\fritzing.0.9.3b.64.pc\Qt5Xml.dll
ModLoad: 00000000`6fba0000 00000000`6fcae000   C:\WINPROGS\fritzing.0.9.3b.64.pc\Qt5Network.dll
ModLoad: 00000000`6fb60000 00000000`6fb97000   C:\WINPROGS\fritzing.0.9.3b.64.pc\Qt5Sql.dll
ModLoad: 00007ffd`f1990000 00007ffd`f19fc000   C:\WINDOWS\System32\WS2_32.dll
ModLoad: 00007ffd`f00a0000 00007ffd`f026e000   C:\WINDOWS\System32\CRYPT32.dll
ModLoad: 00007ffd`e86d0000 00007ffd`e86e8000   C:\WINPROGS\fritzing.0.9.3b.64.pc\Qt5SerialPort.dll
ModLoad: 00007ffd`ef7d0000 00007ffd`ef7e2000   C:\WINDOWS\System32\MSASN1.dll
ModLoad: 00007ffd`f1a00000 00007ffd`f1e4e000   C:\WINDOWS\System32\SETUPAPI.dll
ModLoad: 00000000`6f5f0000 00000000`6fb5b000   C:\WINPROGS\fritzing.0.9.3b.64.pc\Qt5Core.dll
ModLoad: 00007ffd`d2ca0000 00007ffd`d2d3e000   C:\WINPROGS\fritzing.0.9.3b.64.pc\MSVCP140.dll
ModLoad: 00007ffd`e8490000 00007ffd`e84a7000   C:\WINPROGS\fritzing.0.9.3b.64.pc\VCRUNTIME140.dll
ModLoad: 00007ffd`e9170000 00007ffd`e91f6000   C:\WINDOWS\SYSTEM32\WINSPOOL.DRV
ModLoad: 00007ffd`e3b40000 00007ffd`e3be6000   C:\WINDOWS\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_5.82.16299.192_none_887f70824ab5b0de\COMCTL32.dll
ModLoad: 00007ffd`eed60000 00007ffd`eee16000   C:\WINDOWS\SYSTEM32\DNSAPI.dll
ModLoad: 00007ffd`eed20000 00007ffd`eed59000   C:\WINDOWS\SYSTEM32\IPHLPAPI.DLL
ModLoad: 00007ffd`f1e70000 00007ffd`f1e78000   C:\WINDOWS\System32\NSI.dll
ModLoad: 00007ffd`e4920000 00007ffd`e493b000   C:\WINDOWS\SYSTEM32\MPR.dll
ModLoad: 00007ffd`ef260000 00007ffd`ef285000   C:\WINDOWS\SYSTEM32\bcrypt.dll
ModLoad: 00007ffd`ef170000 00007ffd`ef17b000   C:\WINDOWS\SYSTEM32\CRYPTBASE.DLL
ModLoad: 00007ffd`eb2a0000 00007ffd`eb37e000   C:\WINDOWS\SYSTEM32\WINHTTP.dll
(57ec.27c0): Break instruction exception - code 80000003 (first chance)
ntdll!LdrpDoDebuggerBreak+0x30:
00007ffd`f34e2ebc cc              int     3
0:000> g
ModLoad: 00007ffd`f11b0000 00007ffd`f11dd000   C:\WINDOWS\System32\IMM32.DLL
ModLoad: 00007ffd`d2600000 00007ffd`d2737000   C:\WINPROGS\fritzing.0.9.3b.64.pc\platforms\qwindows.dll
ModLoad: 00007ffd`f11e0000 00007ffd`f12a5000   C:\WINDOWS\System32\OLEAUT32.dll
ModLoad: 00007ffd`e5400000 00007ffd`e5423000   C:\WINDOWS\SYSTEM32\WINMM.dll
ModLoad: 00007ffd`e5260000 00007ffd`e528a000   C:\WINDOWS\SYSTEM32\WINMMBASE.dll
ModLoad: 00007ffd`ed740000 00007ffd`ed7d5000   C:\WINDOWS\system32\uxtheme.dll
ModLoad: 00000000`70fc0000 00000000`70fcd000   C:\Program Files (x86)\WinSplit Revolution\WinSplitHook64.DLL
ModLoad: 00007ffd`b5ca0000 00007ffd`b5d49000   C:\Program Files\Common Files\microsoft shared\ink\tiptsf.dll
ModLoad: 00007ffd`b2fd0000 00007ffd`b312c000   C:\WINDOWS\system32\wintab32.dll
ModLoad: 00007ffd`ed800000 00007ffd`ed82a000   C:\WINDOWS\system32\dwmapi.dll
ModLoad: 00007ffd`b3e50000 00007ffd`b3fed000   C:\WINDOWS\SYSTEM32\Pen_Tablet.dll
ModLoad: 00007ffd`d8330000 00007ffd`d8372000   C:\WINPROGS\fritzing.0.9.3b.64.pc\lib\imageformats\qjpeg.dll
ModLoad: 00007ffd`f08e0000 00007ffd`f0a47000   C:\WINDOWS\System32\MSCTF.dll
ModLoad: 00007ffd`f0a50000 00007ffd`f0aee000   C:\WINDOWS\System32\clbcatq.dll
ModLoad: 00007ffd`d3400000 00007ffd`d3606000   C:\Windows\System32\uiautomationcore.dll
ModLoad: 00007ffd`e3ad0000 00007ffd`e3b3e000   C:\WINDOWS\system32\oleacc.dll
onecore\com\combase\inc\comcataloghelpers.hpp(67)\combase.dll!00007FFDF0E9FE7A: (caller: 00007FFDF0E9E2D5) ReturnHr(1) tid(4bfc) 80004002 No such interface supported
ModLoad: 00007ffd`c8ab0000 00007ffd`c8b1d000   C:\Windows\System32\OneCoreCommonProxyStub.dll
ModLoad: 00007ffd`ef5c0000 00007ffd`ef65a000   C:\WINDOWS\SYSTEM32\sxs.dll
mincore\com\oleaut32\dispatch\ups.cpp(2125)\OLEAUT32.dll!00007FFDF11F4D32: (caller: 00007FFDF11F4E96) ReturnHr(1) tid(27c0) 8002801D Library not registered.
mincore\com\oleaut32\dispatch\ups.cpp(2125)\OLEAUT32.dll!00007FFDF11F4D32: (caller: 00007FFDF11F4E96) ReturnHr(2) tid(27c0) 8002801D Library not registered.
ModLoad: 00007ffd`ece20000 00007ffd`ecefc000   C:\Windows\System32\CoreMessaging.dll
ModLoad: 00007ffd`d3e30000 00007ffd`d411e000   C:\Windows\System32\CoreUIComponents.dll
ModLoad: 00007ffd`ee330000 00007ffd`ee361000   C:\WINDOWS\SYSTEM32\ntmarta.dll
ModLoad: 00007ffd`eadf0000 00007ffd`eaf26000   C:\WINDOWS\SYSTEM32\wintypes.dll
ModLoad: 00000275`cff20000 00000275`d0056000   C:\WINDOWS\SYSTEM32\wintypes.dll
ModLoad: 00000275`d0060000 00000275`d0196000   C:\WINDOWS\SYSTEM32\wintypes.dll
ModLoad: 00007ffd`d2bc0000 00007ffd`d2ca0000   C:\WINPROGS\fritzing.0.9.3b.64.pc\lib\sqldrivers\qsqlite.dll
ModLoad: 00000000`6f570000 00000000`6f5ed000   C:\Program Files\OpenVPN\bin\ssleay32.dll
ModLoad: 00007ffd`c2ac0000 00007ffd`c2c4b000   C:\PROGRAM FILES\COMMON FILES\INTEL\WIRELESSCOMMON\LIBEAY32.dll
ModLoad: 00007ffd`d2860000 00007ffd`d292e000   C:\WINDOWS\SYSTEM32\MSVCR110.dll
(57ec.3650): Unknown exception - code c0000139 (first chance)
ModLoad: 00007ffd`ebe70000 00007ffd`ebe88000   C:\WINDOWS\system32\NLAapi.dll
ModLoad: 00007ffd`d64e0000 00007ffd`d64f6000   C:\WINDOWS\system32\napinsp.dll
ModLoad: 00007ffd`d64c0000 00007ffd`d64da000   C:\WINDOWS\system32\pnrpnsp.dll
ModLoad: 00007ffd`eef90000 00007ffd`eeff6000   C:\WINDOWS\System32\mswsock.dll
ModLoad: 00007ffd`d48f0000 00007ffd`d48fe000   C:\WINDOWS\System32\winrnr.dll
ModLoad: 00000000`726d0000 00000000`726f6000   C:\Program Files\Bonjour\mdnsNSP.dll
ModLoad: 00007ffd`e75f0000 00007ffd`e75fa000   C:\Windows\System32\rasadhlp.dll
ModLoad: 00007ffd`e77e0000 00007ffd`e7850000   C:\WINDOWS\System32\fwpuclnt.dll
ModLoad: 00007ffd`d86f0000 00007ffd`d873f000   C:\WINDOWS\system32\dataexchange.dll
ModLoad: 00007ffd`ecf00000 00007ffd`ed042000   C:\WINDOWS\system32\dcomp.dll
ModLoad: 00007ffd`ec560000 00007ffd`ec841000   C:\WINDOWS\system32\d3d11.dll
ModLoad: 00007ffd`ee020000 00007ffd`ee0cf000   C:\WINDOWS\system32\dxgi.dll
ModLoad: 00007ffd`ed830000 00007ffd`ed9ab000   C:\WINDOWS\system32\twinapi.appcore.dll
ModLoad: 00007ffd`ed9f0000 00007ffd`eda10000   C:\WINDOWS\system32\RMCLIENT.dll
libpng warning: iCCP: known incorrect sRGB profile
ModLoad: 00007ffd`ef510000 00007ffd`ef537000   C:\WINDOWS\SYSTEM32\DEVOBJ.dll
ModLoad: 00007ffd`f0460000 00007ffd`f04b8000   C:\WINDOWS\System32\WINTRUST.dll
ModLoad: 00007ffd`cf780000 00007ffd`cf7c4000   C:\WINDOWS\SYSTEM32\edputil.dll
ModLoad: 00007ffd`c3860000 00007ffd`c3875000   C:\WINDOWS\system32\OnDemandConnRouteHelper.dll
ModLoad: 00007ffd`db490000 00007ffd`db525000   C:\WINDOWS\SYSTEM32\webio.dll
ModLoad: 00007ffd`eaaf0000 00007ffd`eaafb000   C:\WINDOWS\SYSTEM32\WINNSI.DLL
ModLoad: 00007ffd`ef660000 00007ffd`ef690000   C:\WINDOWS\SYSTEM32\SspiCli.dll
ModLoad: 00007ffd`eeae0000 00007ffd`eeb5a000   C:\WINDOWS\system32\schannel.DLL
ModLoad: 00007ffd`de140000 00007ffd`de154000   C:\WINDOWS\SYSTEM32\mskeyprotect.dll
ModLoad: 00007ffd`ef230000 00007ffd`ef256000   C:\WINDOWS\SYSTEM32\ncrypt.dll
ModLoad: 00007ffd`ef1f0000 00007ffd`ef226000   C:\WINDOWS\SYSTEM32\NTASN1.dll
ModLoad: 00007ffd`de160000 00007ffd`de181000   C:\WINDOWS\system32\ncryptsslp.dll
ModLoad: 00007ffd`eebe0000 00007ffd`eebea000   C:\WINDOWS\SYSTEM32\DPAPI.DLL
ModLoad: 00007ffd`c8fd0000 00007ffd`c9068000   C:\WINDOWS\System32\TextInputFramework.dll
ntdll!NtTerminateProcess+0x14:
00007ffd`f34b03f4 c3              ret
*** WARNING: Unable to verify checksum for C:\WINPROGS\fritzing.0.9.3b.64.pc\Fritzing.exe
*** ERROR: Module load completed but symbols could not be loaded for C:\WINPROGS\fritzing.0.9.3b.64.pc\Fritzing.exe

Thanks


#12

So it looks like something about openvpn is causing Fritzing confusion (or is doing something to the crypto api that then affects Fritzing because I don’t see the libssh2 and openssl dlls I have in my dev version, which leads me to believe I can simplify my windows build by using the Microsoft api. As I get further towards getting a working Windows build I’ll think about installing openVPN on my dev drive and see if it breaks for me.

edit: This may be as simple as bit rot. The prod release uses libgit2-23.4 (current version is -26.0). Initially on linux I couldn’t compile Fritzing with 26.0 due to api changes and had to install the old version, but someone (I think one of the developers) fixed up some build problems, including that one in the head tree so now it builds with libgit-26.0 so its at least possible that whatever this is is fixed with the latest build.

Peter