--- a/src/server/daemon/config.h Sun Aug 23 23:04:17 2020 +0200 +++ b/src/server/daemon/config.h Mon Aug 24 12:50:16 2020 +0200 @@ -57,6 +57,8 @@ typedef struct _server_configuration { pool_handle_t *pool; + UcxAllocator *a; + UcxMap *host_vs; // map of all vservers. key is the host name UcxList *listeners; // list of all listeners UcxList *logfiles; @@ -69,20 +71,8 @@ } ServerConfiguration; -typedef struct ConfigFile ConfigFile; - -typedef int(*cfg_reload_f)(ConfigFile*,ServerConfiguration*); - -struct ConfigFile { - sstr_t file; - time_t last_modified; - cfg_reload_f reload; - void *data; -}; - struct mime_map { UcxMap *map; - uint32_t ref; }; int load_init_conf(char *file); @@ -105,23 +95,18 @@ int cfg_handle_vs(ServerConfiguration *cfg, ServerConfigObject *obj); -ServerConfiguration* load_server_conf(ServerConfiguration *old, char *file); +ServerConfiguration* load_server_conf(char *file); void cfg_ref(ServerConfiguration *cfg); void cfg_unref(ServerConfiguration *cfg); +HTTPObjectConfig* objconf_load(ServerConfiguration *scfg, sstr_t file); +int mime_conf_load(ServerConfiguration *cfg, sstr_t file); -int object_conf_reload(ConfigFile *file, ServerConfiguration *cfg); -void object_conf_ref(HTTPObjectConfig *conf); -void object_conf_unref(HTTPObjectConfig *conf); -HTTPObjectConfig* load_obj_conf(char *file); -int mime_conf_reload(ConfigFile *file, ServerConfiguration *cfg); -void mime_conf_ref(MimeMap *conf); -void mime_conf_unref(MimeMap *conf); -int acl_conf_reload(ConfigFile *file, ServerConfiguration *cfg); +ACLData* acl_conf_load(ServerConfiguration *cfg, sstr_t file); ACLList* acl_config_convert(ServerConfiguration *cfg, ACLConfig *acl); -int keyfile_reload(ConfigFile *file, ServerConfiguration *cfg); +AuthDB* keyfile_load(ServerConfiguration *cfg, sstr_t file); -sstr_t cfg_load_file(sstr_t file); + #ifdef __cplusplus }