Declare read_keytab_file() in epan/dissectors/packet-kerberos.h.

Don't throw its declaration in file.h, as it's not defined in file.c.
Instead, include it in epan/dissectors/packet-kerberos.h and include
that wherever read_keytab_file() is called.

Yes, that means you also have to include <epan/asn1.h> and, therefore,
you have to include <epan/packet.h>.  Yes, that should be cleaned up,
perhaps by splitting the Kerberos support code into "stuff that handles
encryption keys without any reference to dissection" and "stuff that
does dissection-related work".

Change-Id: Ide5c31e6d85e6011d57202f728dbc656e36138ef
Reviewed-on: https://code.wireshark.org/review/6210
Reviewed-by: Guy Harris <guy@alum.mit.edu>
This commit is contained in:
Guy Harris 2015-01-01 15:05:25 -08:00
parent 445ddc8336
commit 5981dab95b
9 changed files with 32 additions and 15 deletions

View File

@ -231,9 +231,6 @@ gboolean krb_decrypt = FALSE;
/* keytab filename */
static const char *keytab_filename = "";
WS_DLL_PUBLIC
void read_keytab_file(const char *);
void
read_keytab_file_from_preferences(void)
{

View File

@ -92,6 +92,9 @@ decrypt_krb5_data(proto_tree *tree, packet_info *pinfo,
extern gboolean krb_decrypt;
WS_DLL_PUBLIC
void read_keytab_file(const char *);
WS_DLL_PUBLIC
void read_keytab_file_from_preferences(void);

View File

@ -482,9 +482,6 @@ gboolean krb_decrypt = FALSE;
/* keytab filename */
static const char *keytab_filename = "";
WS_DLL_PUBLIC
void read_keytab_file(const char *);
void
read_keytab_file_from_preferences(void)
{
@ -4264,7 +4261,7 @@ dissect_kerberos_ChangePasswdData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_,
/*--- End of included file: packet-kerberos-fn.c ---*/
#line 2004 "../../asn1/kerberos/packet-kerberos-template.c"
#line 2001 "../../asn1/kerberos/packet-kerberos-template.c"
/* Make wrappers around exported functions for now */
int
@ -5302,7 +5299,7 @@ void proto_register_kerberos(void) {
NULL, HFILL }},
/*--- End of included file: packet-kerberos-hfarr.c ---*/
#line 2385 "../../asn1/kerberos/packet-kerberos-template.c"
#line 2382 "../../asn1/kerberos/packet-kerberos-template.c"
};
/* List of subtrees */
@ -5376,7 +5373,7 @@ void proto_register_kerberos(void) {
&ett_kerberos_ChangePasswdData,
/*--- End of included file: packet-kerberos-ettarr.c ---*/
#line 2401 "../../asn1/kerberos/packet-kerberos-template.c"
#line 2398 "../../asn1/kerberos/packet-kerberos-template.c"
};
static ei_register_info ei[] = {

View File

@ -100,6 +100,9 @@ decrypt_krb5_data(proto_tree *tree, packet_info *pinfo,
extern gboolean krb_decrypt;
WS_DLL_PUBLIC
void read_keytab_file(const char *);
WS_DLL_PUBLIC
void read_keytab_file_from_preferences(void);
@ -112,7 +115,7 @@ void read_keytab_file_from_preferences(void);
int dissect_kerberos_ChangePasswdData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
/*--- End of included file: packet-kerberos-exp.h ---*/
#line 102 "../../asn1/kerberos/packet-kerberos-template.h"
#line 105 "../../asn1/kerberos/packet-kerberos-template.h"
#ifdef __cplusplus
}

5
file.h
View File

@ -703,11 +703,6 @@ guint32 cf_comment_types(capture_file *cf);
void cf_set_frame_edited(capture_file *cf, frame_data *fd, struct wtap_pkthdr *phdr, guint8 *pd);
#endif
#if defined(HAVE_HEIMDAL_KERBEROS) || defined(HAVE_MIT_KERBEROS)
WS_DLL_PUBLIC
void read_keytab_file(const char *);
#endif
#ifdef __cplusplus
}
#endif /* __cplusplus */

View File

@ -89,6 +89,12 @@
#include <epan/tap.h>
#include <epan/stat_tap_ui.h>
#include <epan/ex-opt.h>
#if defined(HAVE_HEIMDAL_KERBEROS) || defined(HAVE_MIT_KERBEROS)
#include <epan/asn1.h>
#include <epan/dissectors/packet-kerberos.h>
#endif
#include <wiretap/wtap-int.h>
#include <wiretap/file_wrappers.h>

View File

@ -105,6 +105,11 @@
#include <epan/conversation_table.h>
#include <epan/ex-opt.h>
#if defined(HAVE_HEIMDAL_KERBEROS) || defined(HAVE_MIT_KERBEROS)
#include <epan/asn1.h>
#include <epan/dissectors/packet-kerberos.h>
#endif
#include "capture_opts.h"
#include "caputils/capture-pcap-util.h"

View File

@ -90,6 +90,11 @@
#include <epan/timestamp.h>
#include <epan/conversation_table.h>
#if defined(HAVE_HEIMDAL_KERBEROS) || defined(HAVE_MIT_KERBEROS)
#include <epan/asn1.h>
#include <epan/dissectors/packet-kerberos.h>
#endif
#include <wsutil/cmdarg_err.h>
#include <wsutil/plugins.h>

View File

@ -58,6 +58,12 @@
#include <epan/column.h>
#include <epan/disabled_protos.h>
#if defined(HAVE_HEIMDAL_KERBEROS) || defined(HAVE_MIT_KERBEROS)
#include <epan/packet.h>
#include <epan/asn1.h>
#include <epan/dissectors/packet-kerberos.h>
#endif
#ifdef HAVE_PLUGINS
#include <codecs/codecs.h>
#endif