From fecbcc64804068521a5ca4c2426441e584436fbd Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Thu, 6 Feb 2020 15:36:35 +0100 Subject: [PATCH] libcli:smb: Don't use forward declartions for GnuTLS typedefs BUG: https://bugzilla.samba.org/show_bug.cgi?id=14271 Signed-off-by: Stefan Metzmacher Reviewed-by: Andreas Schneider Autobuild-User(master): Andreas Schneider Autobuild-Date(master): Fri Feb 7 13:48:27 UTC 2020 on sn-devel-184 (cherry picked from commit 3894f878183e645421ec440afd8e010218a58eef) --- libcli/smb/smb2_signing.c | 5 +++-- libcli/smb/smb2_signing.h | 19 ++++++++++++------- 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/libcli/smb/smb2_signing.c b/libcli/smb/smb2_signing.c index 7b33a42526e..623fc23fb18 100644 --- a/libcli/smb/smb2_signing.c +++ b/libcli/smb/smb2_signing.c @@ -20,6 +20,9 @@ #include "includes.h" #include "system/filesys.h" +#include +#include +#define SMB2_SIGNING_KEY_GNUTLS_TYPES 1 #include "../libcli/smb/smb_common.h" #include "../lib/crypto/crypto.h" #include "lib/util/iov_buf.h" @@ -30,8 +33,6 @@ #endif #include "lib/crypto/gnutls_helpers.h" -#include -#include int smb2_signing_key_destructor(struct smb2_signing_key *key) { diff --git a/libcli/smb/smb2_signing.h b/libcli/smb/smb2_signing.h index e28b5c8de9a..ca22de9dbfa 100644 --- a/libcli/smb/smb2_signing.h +++ b/libcli/smb/smb2_signing.h @@ -22,16 +22,21 @@ #define _LIBCLI_SMB_SMB2_SIGNING_H_ struct iovec; - /* Forward declaration of GnuTLS typedefs */ -struct hmac_hd_st; -typedef struct hmac_hd_st* gnutls_hmac_hd_t; -struct api_aead_cipher_hd_st; -typedef struct api_aead_cipher_hd_st *gnutls_aead_cipher_hd_t; struct smb2_signing_key { - gnutls_hmac_hd_t hmac_hnd; - gnutls_aead_cipher_hd_t cipher_hnd; DATA_BLOB blob; + union { +#ifdef SMB2_SIGNING_KEY_GNUTLS_TYPES + gnutls_hmac_hd_t hmac_hnd; +#endif + void *__hmac_hnd; + }; + union { +#ifdef SMB2_SIGNING_KEY_GNUTLS_TYPES + gnutls_aead_cipher_hd_t cipher_hnd; +#endif + void *__cipher_hnd; + }; }; int smb2_signing_key_destructor(struct smb2_signing_key *key); -- 2.25.0