aboutsummaryrefslogtreecommitdiffstats
path: root/epan/packet.c
diff options
context:
space:
mode:
authorKovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com>2009-10-05 18:52:46 +0000
committerKovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com>2009-10-05 18:52:46 +0000
commit1b668036d1384d3f3485484ee9932b0a6bf46635 (patch)
tree226eb1b594461b5fcac403f626fdcd3cdf8ac64a /epan/packet.c
parent37e414a1d726d3f060235849b77720f9eeb17b9f (diff)
Move dissector add sanity check to separate function
svn path=/trunk/; revision=30346
Diffstat (limited to 'epan/packet.c')
-rw-r--r--epan/packet.c37
1 files changed, 24 insertions, 13 deletions
diff --git a/epan/packet.c b/epan/packet.c
index f54fe474e5..133ecb1414 100644
--- a/epan/packet.c
+++ b/epan/packet.c
@@ -696,6 +696,26 @@ find_uint_dtbl_entry(dissector_table_t sub_dissectors, guint32 pattern)
GUINT_TO_POINTER(pattern));
}
+#if 0
+static void
+dissector_add_sanity_check(const char *name, guint32 pattern, dissector_handle_t handle, dissector_table_t sub_dissectors)
+{
+ dtbl_entry_t *dtbl_entry;
+
+ if (pattern == 0) {
+ g_warning("%s: %s registering using a pattern of 0",
+ name, proto_get_protocol_filter_name(proto_get_id(handle->protocol)));
+ }
+
+ dtbl_entry = g_hash_table_lookup(sub_dissectors->hash_table, GUINT_TO_POINTER(pattern));
+ if (dtbl_entry != NULL) {
+ g_warning("%s: %s registering using pattern %d already registered by %s",
+ name, proto_get_protocol_filter_name(proto_get_id(handle->protocol)),
+ pattern, proto_get_protocol_filter_name(proto_get_id(dtbl_entry->initial->protocol)));
+ }
+}
+#endif
+
/* Add an entry to a uint dissector table. */
void
dissector_add(const char *name, guint32 pattern, dissector_handle_t handle)
@@ -726,25 +746,16 @@ dissector_add(const char *name, guint32 pattern, dissector_handle_t handle)
}
#if 0
- if (pattern == 0) {
- g_warning("%s: %s registering using a pattern of 0",
- name, proto_get_protocol_filter_name(proto_get_id(handle->protocol)));
- }
-
- dtbl_entry = g_hash_table_lookup(sub_dissectors->hash_table, GUINT_TO_POINTER(pattern));
- if (dtbl_entry != NULL) {
- g_warning("%s: %s registering using pattern %d already registered by %s",
- name, proto_get_protocol_filter_name(proto_get_id(handle->protocol)),
- pattern, proto_get_protocol_filter_name(proto_get_id(dtbl_entry->initial->protocol)));
- }
+ dissector_add_sanity_check(name, pattern, handle, sub_dissectors);
#endif
+
dtbl_entry = g_malloc(sizeof (dtbl_entry_t));
dtbl_entry->current = handle;
dtbl_entry->initial = dtbl_entry->current;
/* do the table insertion */
- g_hash_table_insert( sub_dissectors->hash_table,
- GUINT_TO_POINTER( pattern), (gpointer)dtbl_entry);
+ g_hash_table_insert( sub_dissectors->hash_table,
+ GUINT_TO_POINTER( pattern), (gpointer)dtbl_entry);
/*
* Now add it to the list of handles that could be used with this