diff options
Diffstat (limited to 'src/include/gnunet_plugin_lib.h')
-rw-r--r-- | src/include/gnunet_plugin_lib.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/include/gnunet_plugin_lib.h b/src/include/gnunet_plugin_lib.h index ffffcab8b..d265eb343 100644 --- a/src/include/gnunet_plugin_lib.h +++ b/src/include/gnunet_plugin_lib.h | |||
@@ -122,6 +122,28 @@ GNUNET_PLUGIN_load_all (const char *basename, | |||
122 | 122 | ||
123 | 123 | ||
124 | /** | 124 | /** |
125 | * Load all compatible plugins with the given base name while inside the given | ||
126 | * context (i.e. a specific project data structure.) | ||
127 | * | ||
128 | * Note that the library must export symbols called `basename_ANYTHING_init` | ||
129 | * and `basename_ANYTHING__done`. These will be called when the library is | ||
130 | * loaded and unloaded respectively. | ||
131 | * | ||
132 | * @param ctx the context used to find the plugins | ||
133 | * @param basename basename of the plugins to load | ||
134 | * @param arg argument to the plugin initialization function | ||
135 | * @param cb function to call for each plugin found | ||
136 | * @param cb_cls closure for @a cb | ||
137 | */ | ||
138 | void | ||
139 | GNUNET_PLUGIN_load_all_in_context (const struct GNUNET_OS_ProjectData *ctx, | ||
140 | const char *basename, | ||
141 | void *arg, | ||
142 | GNUNET_PLUGIN_LoaderCallback cb, | ||
143 | void *cb_cls); | ||
144 | |||
145 | |||
146 | /** | ||
125 | * Unload plugin (runs the "done" callback and returns whatever "done" | 147 | * Unload plugin (runs the "done" callback and returns whatever "done" |
126 | * returned). The plugin is then unloaded. | 148 | * returned). The plugin is then unloaded. |
127 | * | 149 | * |