src/server/daemon/configmanager.c

changeset 39
de4bc3cd2d36
parent 37
360b9aabe17e
child 44
3da1f7b6847f
equal deleted inserted replaced
38:d07810b02147 39:de4bc3cd2d36
116 cfgreload = 1; 116 cfgreload = 1;
117 } 117 }
118 } 118 }
119 119
120 struct stat s; 120 struct stat s;
121 if(stat("conf/server.conf", &s) != 0) { 121 if(stat("config/server.conf", &s) != 0) {
122 perror("stat(\"conf/server.conf\")"); 122 perror("stat(\"config/server.conf\")");
123 return -1; 123 return -1;
124 } 124 }
125 125
126 ServerConfiguration *config; 126 ServerConfiguration *config;
127 if(sc_last_modified != s.st_mtim.tv_sec) { 127 if(sc_last_modified != s.st_mtim.tv_sec) {
128 printf("cfgmgr load server.conf\n"); 128 printf("cfgmgr load server.conf\n");
129 config = load_server_conf( 129 config = load_server_conf(
130 current_config, 130 current_config,
131 "conf/server.conf"); 131 "config/server.conf");
132 132
133 if(config == NULL) { 133 if(config == NULL) {
134 fprintf(stderr, "Cannot load server.conf\n"); 134 fprintf(stderr, "Cannot load server.conf\n");
135 return -1; 135 return -1;
136 } 136 }
142 142
143 /* TODO: copy */ 143 /* TODO: copy */
144 /* 144 /*
145 config = load_server_conf( 145 config = load_server_conf(
146 current_config, 146 current_config,
147 "conf/server.conf"); 147 "config/server.conf");
148 */ 148 */
149 config = malloc(sizeof(ServerConfiguration)); 149 config = malloc(sizeof(ServerConfiguration));
150 config->ref = 1; 150 config->ref = 1;
151 config->pool = pool_create(); 151 config->pool = pool_create();
152 config->user = sstrdup_pool(config->pool, current_config->user); 152 config->user = sstrdup_pool(config->pool, current_config->user);
153 config->tmp = sstrdup_pool(config->pool, current_config->tmp); 153 config->tmp = sstrdup_pool(config->pool, current_config->tmp);
154 154
155 // copy configuration 155 // copy configuration
156 config->host_vs = ucx_map_clone( 156 config->host_vs = ucx_map_clone(
157 current_config->host_vs, 157 current_config->host_vs,
158 copy_vs, 158 copy_vs,
159 config->pool); 159 config->pool);
160 160
161 config->listeners = ucx_list_clone( 161 config->listeners = ucx_list_clone(
162 current_config->listeners, 162 current_config->listeners,
163 (copy_func)copy_listener, 163 (copy_func)copy_listener,
164 config); 164 config);
165 165
166 166 // TODO: we need to get the mime map from the configfile data
167 config->mimetypes = current_config->mimetypes;
168
167 if(config == NULL) { 169 if(config == NULL) {
168 fprintf(stderr, "Cannot load server.conf\n"); 170 fprintf(stderr, "Cannot load server.conf\n");
169 return -1; 171 return -1;
170 } 172 }
171 173

mercurial