diff options
Diffstat (limited to 'epan/decode_as.h')
-rw-r--r-- | epan/decode_as.h | 41 |
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 */ |