examples: sync wireless.uc
authorFelix Fietkau <[email protected]>
Tue, 12 Aug 2025 18:18:52 +0000 (20:18 +0200)
committerFelix Fietkau <[email protected]>
Tue, 12 Aug 2025 18:18:52 +0000 (20:18 +0200)
Signed-off-by: Felix Fietkau <[email protected]>
examples/wireless.uc

index 956ca54413e8902d1b164ab91c4865bb098843ef..f0dc762e19ab9d425544065142a4dd092b9a724d 100644 (file)
@@ -190,28 +190,30 @@ function config_init(uci)
                },
        });
        for (let svcname, svc in udata) {
-               for (let typename, data in svc) {
-                       for (let radio, config in data) {
-                               if (type(config) != "object")
-                                       continue;
-
-                               let dev = devices[radio];
-                               if (dev) {
-                                       dev.config = { ...dev.config, ...config };
-                                       continue;
-                               }
+               for (let insname, ins in svc) {
+                       for (let typename, data in ins) {
+                               for (let radio, config in data) {
+                                       if (type(config) != "object")
+                                               continue;
 
-                               let handler = wireless.handlers[config.type];
-                               if (!handler)
-                                       continue;
+                                       let dev = devices[radio];
+                                       if (dev) {
+                                               dev.config = { ...dev.config, ...config };
+                                               continue;
+                                       }
 
-                               dev = devices[radio] = {
-                                       name,
-                                       config,
+                                       let handler = wireless.handlers[config.type];
+                                       if (!handler)
+                                               continue;
 
-                                       vif: [],
-                               };
-                               handlers[radio] = handler;
+                                       dev = devices[radio] = {
+                                               name,
+                                               config,
+
+                                               vif: [],
+                                       };
+                                       handlers[radio] = handler;
+                               }
                        }
                }
        }
@@ -226,35 +228,37 @@ function config_init(uci)
        });
 
        for (let svcname, svc in udata) {
-               for (let typename, data in svc) {
-                       for (let radio, vifs in data) {
-                               if (type(vifs) != "object")
-                                       continue;
-
-                               for (let name, vif in vifs) {
-                                       let devs = vif.device;
-                                       if (type(devs) != "array")
-                                               devs = [ devs ];
-                                       let config = vif.config;
-                                       if (!config)
+               for (let insname, ins in svc) {
+                       for (let typename, data in ins) {
+                               for (let radio, vifs in data) {
+                                       if (type(vifs) != "object")
                                                continue;
-                                       for (let device in devs) {
-                                               let dev = devices[device];
-                                               if (!dev)
-                                                       continue;
 
-                                               let vif_data = {
-                                                       name, device, config,
-                                                       vlan: [],
-                                                       sta: []
-                                               };
-                                               if (vif.vlans)
-                                                       vif_data.vlans = vif.vlans;
-                                               if (vif.stations)
-                                                       vif_data.sta = vif.stations;
-                                               vifs[name] ??= [];
-                                               push(vifs[name], vif_data);
-                                               push(dev.vif, vif_data);
+                                       for (let name, vif in vifs) {
+                                               let devs = vif.device;
+                                               if (type(devs) != "array")
+                                                       devs = [ devs ];
+                                               let config = vif.config;
+                                               if (!config)
+                                                       continue;
+                                               for (let device in devs) {
+                                                       let dev = devices[device];
+                                                       if (!dev)
+                                                               continue;
+
+                                                       let vif_data = {
+                                                               name, device, config,
+                                                               vlan: [],
+                                                               sta: []
+                                                       };
+                                                       if (vif.vlans)
+                                                               vif_data.vlans = vif.vlans;
+                                                       if (vif.stations)
+                                                               vif_data.sta = vif.stations;
+                                                       vifs[name] ??= [];
+                                                       push(vifs[name], vif_data);
+                                                       push(dev.vif, vif_data);
+                                               }
                                        }
                                }
                        }