20typedef void (*plugin_register_func)(void);
21typedef uint32_t (*plugin_describe_func)(void);
23typedef void plugins_t;
32#define WS_PLUGIN_DESC_DISSECTOR (1UL << 0)
33#define WS_PLUGIN_DESC_FILE_TYPE (1UL << 1)
34#define WS_PLUGIN_DESC_CODEC (1UL << 2)
35#define WS_PLUGIN_DESC_EPAN (1UL << 3)
36#define WS_PLUGIN_DESC_TAP_LISTENER (1UL << 4)
37#define WS_PLUGIN_DESC_DFILTER (1UL << 5)
38#define WS_PLUGIN_DESC_UI (1UL << 6)
49WS_DLL_PUBLIC plugins_t *
plugins_init(plugin_type_e type,
const char* app_env_var_prefix);
51typedef void (*plugin_description_callback)(
const char *name,
const char *version,
52 uint32_t flags,
const char *filename,
WS_DLL_PUBLIC int plugins_get_count(void)
Gets the count of all loaded plugins.
Definition plugins.c:324
WS_DLL_PUBLIC void plugins_dump_all(void)
Prints the description of all plugins.
Definition plugins.c:318
WS_DLL_PUBLIC void plugins_cleanup(plugins_t *plugins)
Cleans up and unloads a plugin.
Definition plugins.c:335
WS_DLL_PUBLIC plugins_t * plugins_init(plugin_type_e type, const char *app_env_var_prefix)
Initialize plugins of a specific type.
Definition plugins.c:256
WS_DLL_PUBLIC bool plugins_supported(void)
Checks if plugins are supported.
Definition plugins.c:345
WS_DLL_PUBLIC void plugins_get_descriptions(plugin_description_callback callback, void *user_data)
Retrieves descriptions of all plugins.
Definition plugins.c:286
WS_DLL_PUBLIC bool is_plugin_filename(const char *filename)
Returns true if the given filename ends in .dll on Windows or .so on other platforms.
Definition plugins.c:140