set rate in wificonf from wl0_rate (fixes #159)
[openwrt.git] / package / wificonf / wificonf.c
index 60ffd90..5c3581d 100644 (file)
@@ -396,6 +396,7 @@ void start_watchdog(int skfd, char *ifname)
        char *v, *next;
        unsigned char buf[8192], buf2[8192], wbuf[80], *p, *tmp;
        int wds = 0, i, j, restart_wds;
+       wlc_ssid_t ssid;
 
        if (fork())
                return;
@@ -550,7 +551,7 @@ static void setup_bcom_vif_sec(int skfd, char *ifname, int vif)
                                wep = 1;
                                bcom_set_bss_int(skfd, ifname, vif, "wsec", WEP_ENABLED);
                                bcom_set_bss_int(skfd, ifname, vif, "wsec_restrict", 1);
-                               bcom_set_bss_int(skfd, ifname, vif, "auth", 1);
+                               bcom_set_bss_int(skfd, ifname, vif, "auth", nvram_enabled(vif_var(vif, "auth")));
                        } else {
                                wep = 0;
                        }
@@ -621,6 +622,10 @@ static void setup_bcom_common(int skfd, char *ifname)
        val = nvram_enabled(wl_var("lazywds"));
        bcom_ioctl(skfd, ifname, WLC_SET_LAZYWDS, &val, sizeof(val));
 
+       if ((val = atoi(nvram_safe_get(wl_var("rate")))) > 0) {
+               val *= 2;
+               bcom_ioctl(skfd, ifname, WLC_SET_RATE, &val, sizeof(val));
+       }
        if (v = nvram_get(wl_var("dtim"))) {
                val = atoi(v);
                bcom_ioctl(skfd, ifname, WLC_SET_DTIMPRD, &val, sizeof(val));
@@ -867,8 +872,14 @@ static void setup_bcom_old(int skfd, char *ifname)
                bcom_ioctl(skfd, ifname, WLC_SET_EAP_RESTRICT, &val, sizeof(val));
                bcom_set_int(skfd, ifname, "sup_wpa", 0);
        }
+
+       if (v = nvram_get(wl_var("auth"))) {
+               val = atoi(v);
+               bcom_ioctl(skfd, ifname, WLC_SET_AUTH, &val, sizeof(val));
+       }
 }
 
+
 static void set_wext_ssid(int skfd, char *ifname)
 {
        char *buffer;
This page took 0.023546 seconds and 4 git commands to generate.