2017-07-29 22:00:34 +02:00
|
|
|
#ifndef PLUGIN_MANAGER_H
|
|
|
|
#define PLUGIN_MANAGER_H
|
2015-10-22 11:39:11 +02:00
|
|
|
#include <dlfcn.h>
|
2018-02-09 13:13:11 +01:00
|
|
|
#include "libs/utils.h"
|
2018-02-10 11:22:41 +01:00
|
|
|
#include "libs/handle.h"
|
2018-10-05 19:01:39 +02:00
|
|
|
#include "http_server.h"
|
2015-10-22 11:39:11 +02:00
|
|
|
struct plugin_entry {
|
|
|
|
struct plugin_entry *next;
|
|
|
|
char *pname;
|
|
|
|
void *handle;
|
|
|
|
};
|
|
|
|
/* lookup: look for s in hashtab */
|
|
|
|
struct plugin_entry *plugin_lookup(char *s);
|
|
|
|
/* install: put (name, defn) in hashtab */
|
|
|
|
struct plugin_entry *plugin_load(char *name);
|
|
|
|
void unload_all_plugin();
|
2016-03-04 11:38:08 +01:00
|
|
|
void unload_plugin(struct plugin_entry*);
|
|
|
|
void unload_plugin_by_name(const char*);
|
2015-10-22 11:39:11 +02:00
|
|
|
void * plugin_from_file(char* name);
|
2017-07-29 22:00:34 +02:00
|
|
|
|
|
|
|
#endif
|