Huge thanks to our Platinum Members Endace and LiveAction,
and our Silver Member Veeam, for supporting the Wireshark Foundation and project.

Wireshark-dev: Re: [Wireshark-dev] Is it possible to update the version of gcrypt?

From: Pascal Quantin <pascal.quantin@xxxxxxxxx>
Date: Wed, 8 Jan 2014 00:25:29 +0100
Hi Martin,

I tried myself to compile the libgpg-error 1.12 and libgcrypt 1.6.0 libraries using the mingw cross-compilation toolchain but I was not really successful (Wireshark does not start due to an issue with the exported symbols from libgpg-error-0.dll).

The good news is that OpenSUSE now provides updated libgcrypt / libgpg-error libraries both for win32 and win64 now
http://download.opensuse.org/repositories/windows:/mingw:/win32/openSUSE_13.1/noarch/
http://download.opensuse.org/repositories/windows:/mingw:/win64/openSUSE_13.1/noarch/

It means that we might be able to have support for AES CMAC on Windows (IF those new libraries are still compatible with our current version of GnuTLS).

So I tried those OpenSUSE libraries but I have the same error as with my own build: I get an error that can be roughly translated as
"the procedure entry point gpg_strerror cannot be found in the dynamic library libgcrypt-20.dll"
This function is supposed to be exported by libgpg-error-0.dll.

Gerald, according to the README.Wireshark file found in gnutls-2.12.18-1.2-win32ws archive, you manually modified the OpenSUSE packages:
  - Definition files were created using "pexports".
  - Import libraries were created using the MSVC++ "lib" utility using the "make-lib.sh" script.
I do not know where to find those utilities neither how to use them.

Maybe those missing steps on my side can explain my issue. Would you be OK if we to try to upgrade those libraries? If yes, could you help?

2 small things I noted:
- libgcrypt-11.dll/lib is now renamed libgcrypt-20.dll/lib. It impacts config.nmake, Makefile.nmake, cmake\modules\FindGCRYPT.cmake, packaging\nsis\wireshark.nsi and ui\qt\QtShark.pro
- the openSUSE libraries require an extra libgcc_s_sjlj-1.dll file found in mingw32-libgcc-4.8.2-1.2.noarch.rpm archive (my own compiled libraries did not need it but I failed to compile a win64 variant so far).

Thanks,
Pascal.



2013/12/23 Martin Mathieson <martin.r.mathieson@xxxxxxxxxxxxxx>
Hi,

I would like to make use of an AES mode only available in the most recent version of gcrypt (1.6).  Is it possible to upgrade the version that comes as a result of running the Windows 'setup' target?

My guess is that its not easy, and that we take the version that came with an old version of gnutls, whereas recent versions now use nettle as the low-level crypto library?  We have 10 dissectors that use libgcrypt, so moving to nettle would take a bit of work.  I'm not yet certain that nettle supports what I need (never mind the other current users of gcrypt)- I'd need to write a test program to see if it does what I need.

Regards,
Martin

___________________________________________________________________________
Sent via:    Wireshark-dev mailing list <wireshark-dev@xxxxxxxxxxxxx>
Archives:    http://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev
             mailto:wireshark-dev-request@xxxxxxxxxxxxx?subject=unsubscribe