From 5421092b757a571d02b3160e6ae8576b655866d2 Mon Sep 17 00:00:00 2001 From: Martin Willi Date: Fri, 12 Sep 2014 11:07:22 +0200 Subject: plugin-loader: Support a reload() callback for static features --- src/libstrongswan/plugins/plugin_loader.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src/libstrongswan/plugins/plugin_loader.h') diff --git a/src/libstrongswan/plugins/plugin_loader.h b/src/libstrongswan/plugins/plugin_loader.h index fec57ce98..6be6a909c 100644 --- a/src/libstrongswan/plugins/plugin_loader.h +++ b/src/libstrongswan/plugins/plugin_loader.h @@ -44,6 +44,9 @@ struct plugin_loader_t { * If critical is TRUE load() will fail if any of the added features could * not be loaded. * + * If a reload callback function is given, it gets invoked for the + * registered feature set when reload() is invoked on the plugin_loader. + * * @note The name should be unique otherwise a plugin with the same name is * not loaded. * @@ -51,10 +54,13 @@ struct plugin_loader_t { * @param features array of plugin features * @param count number of features in the array * @param critical TRUE if the features are critical + * @param reload feature reload callback, or NULL + * @param reload_data user data to pass to reload callback */ void (*add_static_features) (plugin_loader_t *this, const char *name, struct plugin_feature_t *features, int count, - bool critical); + bool critical, bool (*reload)(void*), + void *reload_data); /** * Load a list of plugins. -- cgit v1.2.3