The following text is an excerpt from SSL-Decrypt plugin 0.4.0 file Install. Note I did perform these same steps and was able to get gnutls.lib built. But the problem you will face on the Windows platform is the extraction of the bz2 file. I actually had to extract on my Linux box and then copy back to my Windows box. But in any case, the file should extract 4 directories and a number of files. Also note the order of the files you need to extract. Once you have everything in the right place then the build should work with MSVC 6 from the Visual Studio application. Another fact, even though I was able to build gnutls.lib, I have yet to be able to decrypt any real data with either the plugin or without on Win32 based operating systems. The console window always says that it cannot read the private key. Don't know if we actually need to build a DLL of the gnutls library for runtime access but Ethereal doesn't complain. Let me know if you have any better success.
Greg
**** Compiling the plungin under Windows
This is slighlty complicated, so if you get scared, just change your os :-)
You need to have installed ethereal from source. See README.win32 into the ethereal distribution You need also to install gnutls from source. Follow the istruction reported here:
Before compiling the gnutls library edit the gnutls project setting, select the "win32 release" target, go to c++ tab, select the "Code Generation" category and set the "use runtime library" to "Single-threaded". This must be done for all the projects into the workspace
Edit the file rndw32.c of the w32gcrypt project. Go to line 240 and sobstituted the lines:
/* Walk through the local heap */ { HEAPLIST32 hl32; hl32.dwSize = sizeof (HEAPLIST32); if (pHeap32ListFirst (hSnapshot, &hl32)) { if ( debug_me ) log_debug ("rndw32#slow_gatherer_95: walk heap\n" ); do { HEAPENTRY32 he32;
/* First add the information from the basic Heaplist32 struct */ (*add) ( &hl32, sizeof (hl32), requester );
/* Now walk through the heap blocks getting information * on each of them */ he32.dwSize = sizeof (HEAPENTRY32); if (pHeap32First (&he32, hl32.th32ProcessID, hl32.th32HeapID)){ do { (*add) ( &he32, sizeof (he32), requester ); } while (pHeap32Next (&he32)); } } while (pHeap32ListNext (hSnapshot, &hl32)); }
with:
#if 0 /* Walk through the local heap */ { HEAPLIST32 hl32; hl32.dwSize = sizeof (HEAPLIST32); if (pHeap32ListFirst (hSnapshot, &hl32)) { if ( debug_me ) log_debug ("rndw32#slow_gatherer_95: walk heap\n" ); do { HEAPENTRY32 he32;
/* First add the information from the basic Heaplist32 struct */ (*add) ( &hl32, sizeof (hl32), requester );
/* Now walk through the heap blocks getting information * on each of them */ he32.dwSize = sizeof (HEAPENTRY32); if (pHeap32First (&he32, hl32.th32ProcessID, hl32.th32HeapID)){ do { (*add) ( &he32, sizeof (he32), requester ); } while (pHeap32Next (&he32)); } } while (pHeap32ListNext (hSnapshot, &hl32)); } #endif
(ok I shold provide a patch for this, but it' a really nasty hack...)
Now you can compile the gnutls library with the "Win32 Release" target
>>> Lars.Roland@xxxxxxx 2/6/2006 6:09:20 PM >>>
Hi Paolo, I have to thank you for your efforts on this work. Am 05.02.2006, 17:48 Uhr, schrieb Paolo Abeni <00918190@xxxxxxxxx>: > > I checked out svn revision 17164 and tryed to fix the issue you > reported. Quite anomaly, with the fresh checkout source I got a list of > warning shorter or the one you reported. > Anyway with the attached patch the code compiles on my machine without > any warning. I suppose there are still some fix to be applied to the > config.nmake file to enable the decryption on windows build (but > building gnutls under windows with vc6 is quite a scary thing). > I'd like to try ethereal with gnutls on windows. Could you tell us where to get the sources for gnutls you have used and a short description about what you have done in order to make gnutls compile with MSVC6. I'll work on a full integration of gnutls into the ethereal build process on windows, including the integration into the installer. Best regards, Lars _______________________________________________ Ethereal-dev mailing list Ethereal-dev@xxxxxxxxxxxx http://www.ethereal.com/mailman/listinfo/ethereal-dev
|