| Wireshark 4.7.0 The Wireshark network protocol analyzer

Loading...
Searching...
No Matches
plugins.h
Go to the documentation of this file.
1
11#ifndef __PLUGINS_H__
12#define __PLUGINS_H__
13
14#include <wireshark.h>
15
16#ifdef __cplusplus
17 extern "C" {
18#endif /* __cplusplus */
19
20 typedef void (*plugin_register_func)(void);
21 typedef uint32_t (*plugin_describe_func)(void);
22
23 typedef void plugins_t;
24
25 typedef enum {
26 WS_PLUGIN_EPAN,
27 WS_PLUGIN_WIRETAP,
28 WS_PLUGIN_CODEC
29} plugin_type_e;
30
31#define WS_PLUGIN_DESC_DISSECTOR (1UL << 0)
32#define WS_PLUGIN_DESC_FILE_TYPE (1UL << 1)
33#define WS_PLUGIN_DESC_CODEC (1UL << 2)
34#define WS_PLUGIN_DESC_EPAN (1UL << 3)
35#define WS_PLUGIN_DESC_TAP_LISTENER (1UL << 4)
36#define WS_PLUGIN_DESC_DFILTER (1UL << 5)
37
38WS_DLL_PUBLIC plugins_t *plugins_init(plugin_type_e type, const char* app_env_var_prefix);
39
40 typedef void (*plugin_description_callback)(const char *name, const char *version,
41 uint32_t flags, const char *filename,
42 void *user_data);
43
44WS_DLL_PUBLIC void plugins_get_descriptions(plugin_description_callback callback, void *user_data);
45
46WS_DLL_PUBLIC void plugins_dump_all(void);
47
48WS_DLL_PUBLIC int plugins_get_count(void);
49
50WS_DLL_PUBLIC void plugins_cleanup(plugins_t *plugins);
51
52WS_DLL_PUBLIC bool plugins_supported(void);
53
54#ifdef __cplusplus
55}
56#endif /* __cplusplus */
57
58#endif /* __PLUGINS_H__ */
59
60/*
61 * Editor modelines
62 *
63 * Local Variables:
64 * c-basic-offset: 4
65 * tab-width: 8
66 * indent-tabs-mode: nil
67 * End:
68 *
69 * ex: set shiftwidth=4 tabstop=8 expandtab:
70 * :indentSize=4:tabSize=8:noTabs=true:
71 */