src/server/daemon/config.h

changeset 415
d938228c382e
parent 388
30d29ef5b79a
child 426
6a2e7a464991
equal deleted inserted replaced
414:99a34860c105 415:d938228c382e
45 #include "log.h" 45 #include "log.h"
46 #include "vfs.h" 46 #include "vfs.h"
47 47
48 #include "../webdav/webdav.h" 48 #include "../webdav/webdav.h"
49 49
50 #include <ucx/list.h> 50 #include <cx/linked_list.h>
51 #include <ucx/map.h> 51 #include <cx/hash_map.h>
52 #include <ucx/mempool.h> 52 #include <cx/mempool.h>
53 #include <ucx/string.h> 53 #include <cx/string.h>
54 54
55 #ifdef __cplusplus 55 #ifdef __cplusplus
56 extern "C" { 56 extern "C" {
57 #endif 57 #endif
58 58
65 ServerConfig *serverconf; 65 ServerConfig *serverconf;
66 ServerConfiguration *cfg; 66 ServerConfiguration *cfg;
67 } CfgManager; 67 } CfgManager;
68 68
69 struct ServerConfiguration { 69 struct ServerConfiguration {
70 pool_handle_t *pool; 70 pool_handle_t *pool;
71 UcxAllocator *a; 71 CxAllocator *a;
72 72
73 UcxMap *host_vs; // map of all vservers. key is the host name 73 CxMap *host_vs; // map of all vservers. key is the host name
74 UcxList *listeners; // list of all listeners 74 CxList *listeners; // list of all listeners
75 UcxList *logfiles; 75 CxList *logfiles;
76 AccessLog *default_log; 76 AccessLog *default_log;
77 UcxMap *authdbs; 77 CxMap *authdbs;
78 MimeMap *mimetypes; 78 MimeMap *mimetypes;
79 UcxMap *resources; 79 CxMap *resources;
80 UcxMap *dav; 80 CxMap *dav;
81 sstr_t tmp; 81 cxmutstr tmp;
82 sstr_t user; 82 cxmutstr user;
83 uint32_t ref; // reference counter 83 uint32_t ref; // reference counter
84 }; 84 };
85 85
86 struct WebdavRepository { 86 struct WebdavRepository {
87 VfsType *vfs; 87 VfsType *vfs;
88 void *vfsInitData; 88 void *vfsInitData;
89 UcxList *davBackends; // list of WebdavBackendInitData* 89 CxList *davBackends; // list of WebdavBackendInitData*
90 sstr_t object; 90 cxmutstr object;
91 }; 91 };
92 92
93 struct WebdavBackendInitData { 93 struct WebdavBackendInitData {
94 WebdavType *davType; 94 WebdavType *davType;
95 void *davInitData; 95 void *davInitData;
96 }; 96 };
97 97
98 struct mime_map { 98 struct mime_map {
99 UcxMap *map; 99 CxMap *map;
100 }; 100 };
101 101
102 char* cfg_config_file_path(const char *file); 102 char* cfg_config_file_path(const char *file);
103 103
104 int load_init_conf(char *file); 104 int load_init_conf(char *file);
128 ServerConfiguration* load_server_conf(CfgManager *mgr, char *file); 128 ServerConfiguration* load_server_conf(CfgManager *mgr, char *file);
129 ServerConfiguration* apply_server_conf(CfgManager *mgr); 129 ServerConfiguration* apply_server_conf(CfgManager *mgr);
130 void cfg_ref(ServerConfiguration *cfg); 130 void cfg_ref(ServerConfiguration *cfg);
131 void cfg_unref(ServerConfiguration *cfg); 131 void cfg_unref(ServerConfiguration *cfg);
132 132
133 HTTPObjectConfig* objconf_load(ServerConfiguration *scfg, sstr_t file); 133 HTTPObjectConfig* objconf_load(ServerConfiguration *scfg, cxmutstr file);
134 int mime_conf_load(ServerConfiguration *cfg, sstr_t file); 134 int mime_conf_load(ServerConfiguration *cfg, cxmutstr file);
135 135
136 ACLData* acl_conf_load(ServerConfiguration *cfg, sstr_t file); 136 ACLData* acl_conf_load(ServerConfiguration *cfg, const char *file);
137 ACLList* acl_config_convert(ServerConfiguration *cfg, ACLConfig *acl); 137 ACLList* acl_config_convert(ServerConfiguration *cfg, ACLConfig *acl);
138 AuthDB* keyfile_load(ServerConfiguration *cfg, scstr_t file); 138 AuthDB* keyfile_load(ServerConfiguration *cfg, cxstring file);
139 139
140 pblock* config_obj2pblock(pool_handle_t *pool, ConfigNode *obj); 140 pblock* config_obj2pblock(pool_handle_t *pool, ConfigNode *obj);
141 141
142 #ifdef __cplusplus 142 #ifdef __cplusplus
143 } 143 }

mercurial