src/server/daemon/config.c

changeset 635
b85d45fd3b01
parent 629
1e1da9adc532
child 636
40f069ddda37
--- a/src/server/daemon/config.c	Sat Nov 22 16:44:42 2025 +0100
+++ b/src/server/daemon/config.c	Sun Nov 23 12:44:59 2025 +0100
@@ -51,6 +51,7 @@
 #include "ldap_auth.h"
 #include "configmanager.h"
 #include "resourcepool.h"
+#include "location.h"
 
 #include "vserver.h"
 #include "../util/pblock.h"
@@ -746,6 +747,18 @@
     }
     vs->acls = acldata;
     
+    CxList *locations = serverconfig_get_node_list(obj, CONFIG_NODE_OBJECT, CX_STR("Location"));
+    CxIterator i = cxListIterator(locations);
+    cx_foreach(ConfigNode *, node, i) {
+        WSLocation *location = cfg_location_get(cfg->a, node);
+        if(location) {
+            vs_add_location(vs, location);
+        } else {
+            log_ereport(LOG_FAILURE, "VirtualServer %s error: abort", vs->name.ptr);
+            return 1;
+        }
+    }
+    cxListFree(locations);
     
     // set the access log for the virtual server
     // TODO: don't always use the default

mercurial