From 6b84ddee83e70aff944da084129624226b7a32fa Mon Sep 17 00:00:00 2001 From: Peter Wu Date: Thu, 9 Feb 2017 15:00:19 +0100 Subject: Make Libgcrypt a mandatory dependency Removed all guards for HAVE_LIBGCRYPT, change autotools and CMake to error out if it is not available. Update release notes, developer documentation and README with the new status. Clarify relation with GnuTLS in macosx-setup.sh. Install Libgcrypt via brew script. Motivation for this change is that many dissectors depend on Libgcrypt and having it optional increases the maintenance burden (there have been several compile issues in the past due to the optional status). Furthermore, wsutil has crypto code that can be replaced by Libgcrypt. Change-Id: Idf0021b8c4cd5db70b8766f7dcc2a8b3acbf042f Link: https://www.wireshark.org/lists/wireshark-dev/201702/msg00011.html Reviewed-on: https://code.wireshark.org/review/20030 Petri-Dish: Peter Wu Tested-by: Petri Dish Buildbot Reviewed-by: Pascal Quantin Reviewed-by: Peter Wu --- epan/dissectors/asn1/snmp/packet-snmp-template.c | 30 ++++-------------------- 1 file changed, 4 insertions(+), 26 deletions(-) (limited to 'epan/dissectors/asn1/snmp') diff --git a/epan/dissectors/asn1/snmp/packet-snmp-template.c b/epan/dissectors/asn1/snmp/packet-snmp-template.c index 13719286a4..3665a761fd 100644 --- a/epan/dissectors/asn1/snmp/packet-snmp-template.c +++ b/epan/dissectors/asn1/snmp/packet-snmp-template.c @@ -1649,9 +1649,8 @@ snmp_usm_auth_sha1(snmp_usm_params_t* p _U_, guint8** calc_auth_p, guint* calc_a } static tvbuff_t* -snmp_usm_priv_des(snmp_usm_params_t* p _U_, tvbuff_t* encryptedData _U_, packet_info *pinfo _U_, gchar const** error _U_) +snmp_usm_priv_des(snmp_usm_params_t* p, tvbuff_t* encryptedData, packet_info *pinfo, gchar const** error) { -#ifdef HAVE_LIBGCRYPT gcry_error_t err; gcry_cipher_hd_t hd = NULL; @@ -1716,13 +1715,8 @@ on_gcry_error: *error = (const gchar *)gpg_strerror(err); if (hd) gcry_cipher_close(hd); return NULL; -#else - *error = "libgcrypt not present, cannot decrypt"; - return NULL; -#endif } -#ifdef HAVE_LIBGCRYPT static tvbuff_t* snmp_usm_priv_aes_common(snmp_usm_params_t* p, tvbuff_t* encryptedData, packet_info *pinfo, gchar const** error, int algo) { @@ -1787,39 +1781,23 @@ on_gcry_error: if (hd) gcry_cipher_close(hd); return NULL; } -#endif static tvbuff_t* -snmp_usm_priv_aes128(snmp_usm_params_t* p _U_, tvbuff_t* encryptedData _U_, packet_info *pinfo _U_, gchar const** error) +snmp_usm_priv_aes128(snmp_usm_params_t* p, tvbuff_t* encryptedData, packet_info *pinfo, gchar const** error) { -#ifdef HAVE_LIBGCRYPT return snmp_usm_priv_aes_common(p, encryptedData, pinfo, error, GCRY_CIPHER_AES); -#else - *error = "libgcrypt not present, cannot decrypt"; - return NULL; -#endif } static tvbuff_t* -snmp_usm_priv_aes192(snmp_usm_params_t* p _U_, tvbuff_t* encryptedData _U_, packet_info *pinfo _U_, gchar const** error) +snmp_usm_priv_aes192(snmp_usm_params_t* p, tvbuff_t* encryptedData, packet_info *pinfo, gchar const** error) { -#ifdef HAVE_LIBGCRYPT return snmp_usm_priv_aes_common(p, encryptedData, pinfo, error, GCRY_CIPHER_AES192); -#else - *error = "libgcrypt not present, cannot decrypt"; - return NULL; -#endif } static tvbuff_t* -snmp_usm_priv_aes256(snmp_usm_params_t* p _U_, tvbuff_t* encryptedData _U_, packet_info *pinfo _U_, gchar const** error) +snmp_usm_priv_aes256(snmp_usm_params_t* p, tvbuff_t* encryptedData, packet_info *pinfo, gchar const** error) { -#ifdef HAVE_LIBGCRYPT return snmp_usm_priv_aes_common(p, encryptedData, pinfo, error, GCRY_CIPHER_AES256); -#else - *error = "libgcrypt not present, cannot decrypt"; - return NULL; -#endif } static gboolean -- cgit v1.2.3