summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--package/wificonf/Makefile2
-rw-r--r--package/wificonf/wificonf.c8
2 files changed, 5 insertions, 5 deletions
diff --git a/package/wificonf/Makefile b/package/wificonf/Makefile
index ed41e416c8..69cb2ec300 100644
--- a/package/wificonf/Makefile
+++ b/package/wificonf/Makefile
@@ -3,7 +3,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=wificonf
-PKG_RELEASE:=1
+PKG_RELEASE:=3
PKG_BUILD_DIR:=$(BUILD_DIR)/wificonf
diff --git a/package/wificonf/wificonf.c b/package/wificonf/wificonf.c
index 24a9c2fe11..b8eae257c1 100644
--- a/package/wificonf/wificonf.c
+++ b/package/wificonf/wificonf.c
@@ -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);
@@ -180,7 +180,7 @@ void setup_bcom(int skfd, char *ifname)
/* Set Country */
strncpy(buf, nvram_safe_get(wl_var("country_code")), 4);
buf[3] = 0;
- bcom_ioctl(skfd, ifname, 273, buf, 4);
+ bcom_ioctl(skfd, ifname, WLC_SET_COUNTRY, buf, 4);
/* Set up afterburner */
val = ABO_AUTO;
@@ -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");