fix some small bugs in wificonf
authorFelix Fietkau <nbd@openwrt.org>
Mon, 25 Jul 2005 07:51:14 +0000 (07:51 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Mon, 25 Jul 2005 07:51:14 +0000 (07:51 +0000)
SVN-Revision: 1551

openwrt/package/wificonf/wificonf.c

index 404240e49c18013dabd374b738541fb2b98a1bf0..b8eae257c1b98d3477111c84b1d0cb64fd38e9e4 100644 (file)
@@ -126,7 +126,7 @@ int bcom_set_val(int skfd, char *ifname, char *var, void *val, int len)
 
        strcpy(buf, var);
        
-       if ((ret = bcom_ioctl(skfd, ifname, WLC_GET_VAR, buf, sizeof(buf))))
+       if ((ret = bcom_ioctl(skfd, ifname, WLC_SET_VAR, buf, sizeof(buf))))
                return ret;
 
        memcpy(val, buf, len);
@@ -416,9 +416,9 @@ void set_wext_mode(skfd, ifname)
        int ap = 0, infra = 0, wet = 0;
        
        /* Set operation mode */
-       ap = !nvram_match(wl_var("mode"), "sta");
+       ap = !nvram_match(wl_var("mode"), "sta") && !nvram_match(wl_var("mode"), "wet");
        infra = !nvram_disabled(wl_var("infra"));
-       wet = nvram_enabled(wl_var("wet"));
+       wet = nvram_enabled(wl_var("wet")) || !nvram_match(wl_var("mode"), "wet");
 
        wrq.u.mode = (!infra ? IW_MODE_ADHOC : (ap ? IW_MODE_MASTER : (wet ? IW_MODE_REPEAT : IW_MODE_INFRA)));
        IW_SET_EXT_ERR(skfd, ifname, SIOCSIWMODE, &wrq, "Set Mode");