aboutsummaryrefslogtreecommitdiffstats
path: root/epan/decode_as.h
diff options
context:
space:
mode:
Diffstat (limited to 'epan/decode_as.h')
-rw-r--r--epan/decode_as.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/epan/decode_as.h b/epan/decode_as.h
index 69648fd90d..a7b03b7025 100644
--- a/epan/decode_as.h
+++ b/epan/decode_as.h
@@ -97,6 +97,47 @@ WS_DLL_PUBLIC gboolean decode_as_default_change(const gchar *name, gconstpointer
*/
WS_DLL_PUBLIC GList *decode_as_list;
+/* Some useful utilities for Decode As */
+
+/** Reset the "decode as" entries and reload ones of the current profile.
+ */
+WS_DLL_PUBLIC void load_decode_as_entries(void);
+
+/** Write out the "decode as" entries of the current profile.
+ */
+WS_DLL_PUBLIC int save_decode_as_entries(gchar** err);
+
+/** Clear all "decode as" settings.
+ */
+WS_DLL_PUBLIC void decode_clear_all(void);
+
+/** This routine creates one entry in the list of protocol dissector
+ * that need to be reset. It is called by the g_hash_table_foreach
+ * routine once for each changed entry in a dissector table.
+ * Unfortunately it cannot delete the entry immediately as this screws
+ * up the foreach function, so it builds a list of dissectors to be
+ * reset once the foreach routine finishes.
+ *
+ * @param table_name The table name in which this dissector is found.
+ *
+ * @param key A pointer to the key for this entry in the dissector
+ * hash table. This is generally the numeric selector of the
+ * protocol, i.e. the ethernet type code, IP port number, TCP port
+ * number, etc.
+ *
+ * @param selector_type The type of the selector in that dissector table
+ *
+ * @param value A pointer to the value for this entry in the dissector
+ * hash table. This is an opaque pointer that can only be handed back
+ * to routine in the file packet.c - but it's unused.
+ *
+ * @param user_data Unused.
+ */
+WS_DLL_PUBLIC void decode_build_reset_list (const gchar *table_name, ftenum_t selector_type,
+ gpointer key, gpointer value _U_,
+ gpointer user_data _U_);
+
+
#ifdef __cplusplus
}
#endif /* __cplusplus */