Lines Matching refs:p

52 	plugin *p;  in plugin_init()  local
54 p = calloc(1, sizeof(*p)); in plugin_init()
56 return p; in plugin_init()
59 static void plugin_free(plugin *p) { in plugin_free() argument
61 if (p->name) buffer_free(p->name); in plugin_free()
67 if (use_dlclose && p->lib) { in plugin_free()
69 FreeLibrary(p->lib); in plugin_free()
71 dlclose(p->lib); in plugin_free()
76 free(p); in plugin_free()
79 static int plugins_register(server *srv, plugin *p) { in plugins_register() argument
91 ps[srv->plugins.used++] = p; in plugins_register()
104 plugin *p; in plugins_load() local
106 p = plugin_init(); \ in plugins_load()
107 if (x ## _plugin_init(p)) { \ in plugins_load()
109 plugin_free(p); \ in plugins_load()
112 plugins_register(srv, p); in plugins_load()
120 plugin *p; in plugins_load() local
146 p = plugin_init(); in plugins_load()
148 if (NULL == (p->lib = LoadLibrary(srv->tmp_buf->ptr))) { in plugins_load()
162 plugin_free(p); in plugins_load()
168 if (NULL == (p->lib = dlopen(srv->tmp_buf->ptr, RTLD_NOW|RTLD_GLOBAL))) { in plugins_load()
172 plugin_free(p); in plugins_load()
183 init = GetProcAddress(p->lib, srv->tmp_buf->ptr); in plugins_load()
198 plugin_free(p); in plugins_load()
204 init = (int (*)(plugin *))(intptr_t)dlsym(p->lib, srv->tmp_buf->ptr); in plugins_load()
206 *(void **)(&init) = dlsym(p->lib, srv->tmp_buf->ptr); in plugins_load()
211 plugin_free(p); in plugins_load()
216 if ((*init)(p)) { in plugins_load()
219 plugin_free(p); in plugins_load()
225 plugins_register(srv, p); in plugins_load()
240 plugin *p = slot[j];\
242 switch(r = p->y(srv, con, p->data)) {\
252 log_error_write(srv, __FILE__, __LINE__, "sbs", #x, p->name, "unknown state");\
288 plugin *p = slot[j];\ in PLUGIN_TO_SLOT()
290 switch(r = p->y(srv, p->data)) {\ in PLUGIN_TO_SLOT()
300 log_error_write(srv, __FILE__, __LINE__, "sbsd", #x, p->name, "unknown state:", r);\ in PLUGIN_TO_SLOT()
334 plugin *p = ps[i];
335 if (p->handle_fdevent) {
337 switch(r = p->handle_fdevent(srv, fdc, p->data)) {
377 plugin *p = ps[i]; local
380 if (p->y) { \
388 slot[j] = p;\
410 if (p->init) {
411 if (NULL == (p->data = p->init())) {
413 "plugin-init failed for module", p->name);
418 ((plugin_data *)(p->data))->id = i + 1;
420 if (p->version != LIGHTTPD_VERSION_ID) {
422 "plugin-version doesn't match lighttpd-version for", p->name);
426 p->data = NULL;
438 plugin *p = ((plugin **)srv->plugins.ptr)[i]; in plugins_free() local
440 plugin_free(p); in plugins_free()