diff -r f5caf41b4db6 -r 30d29ef5b79a src/server/daemon/config.h --- a/src/server/daemon/config.h Sun Sep 25 09:33:39 2022 +0200 +++ b/src/server/daemon/config.h Sun Sep 25 10:36:28 2022 +0200 @@ -61,10 +61,15 @@ typedef struct WebdavRepository WebdavRepository; typedef struct WebdavBackendInitData WebdavBackendInitData; +typedef struct CfgManager { + ServerConfig *serverconf; + ServerConfiguration *cfg; +} CfgManager; + struct ServerConfiguration { 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; @@ -120,7 +125,8 @@ int cfg_handle_dav(ServerConfiguration *cfg, ConfigNode *obj); -ServerConfiguration* load_server_conf(char *file); +ServerConfiguration* load_server_conf(CfgManager *mgr, char *file); +ServerConfiguration* apply_server_conf(CfgManager *mgr); void cfg_ref(ServerConfiguration *cfg); void cfg_unref(ServerConfiguration *cfg);