X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fuhttpd.git;a=blobdiff_plain;f=plugin.c;h=56e049c56e37b3c73471fad599136b9eaf4cf9a6;hp=ecf6660b705dd33d97b0ae06a0b9f5fa0dd8434d;hb=f8573c7b4c3a9e1a67cae787690f27a976aee11c;hpb=11cbb4498b2da95ece2ad4ce940ca9cda8b479eb diff --git a/plugin.c b/plugin.c index ecf6660..56e049c 100644 --- a/plugin.c +++ b/plugin.c @@ -21,6 +21,8 @@ #include "uhttpd.h" #include "plugin.h" +static LIST_HEAD(plugins); + static const struct uhttpd_ops ops = { .dispatch_add = uh_dispatch_add, .path_match = uh_path_match, @@ -53,5 +55,14 @@ int uh_plugin_init(const char *name) return -ENOENT; } + list_add(&p->list, &plugins); return p->init(&ops, &conf); } + +void uh_plugin_post_init(void) +{ + struct uhttpd_plugin *p; + + list_for_each_entry(p, &plugins, list) + p->post_init(); +}