From: Felix Fietkau Date: Sat, 9 Jul 2005 16:17:12 +0000 (+0000) Subject: fix some small bugs in wificonf and wlcompat X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=4f5eb26f28ee90d64ee646b84435d593acce8bf6;p=openwrt%2Fstaging%2Fansuel.git fix some small bugs in wificonf and wlcompat SVN-Revision: 1385 --- diff --git a/openwrt/package/wificonf/wificonf.c b/openwrt/package/wificonf/wificonf.c index acb5522cc8..e1df6675e2 100644 --- a/openwrt/package/wificonf/wificonf.c +++ b/openwrt/package/wificonf/wificonf.c @@ -36,21 +36,18 @@ do { \ ERR_SET_EXT(rname, request); \ fprintf(stderr, " too few arguments.\n"); \ - return; \ } while(0) #define ABORT_ARG_TYPE(rname, request, arg) \ do { \ ERR_SET_EXT(rname, request); \ fprintf(stderr, " invalid argument \"%s\".\n", arg); \ - return; \ } while(0) #define ABORT_ARG_SIZE(rname, request, max) \ do { \ ERR_SET_EXT(rname, request); \ fprintf(stderr, " argument too big (max %d)\n", max); \ - return; \ } while(0) /*------------------------------------------------------------------*/ @@ -64,7 +61,6 @@ ERR_SET_EXT(rname, request); \ fprintf(stderr, " SET failed on device %-1.16s ; %s.\n", \ ifname, strerror(errno)); \ - return; \ } } while(0) /*------------------------------------------------------------------*/ @@ -78,7 +74,6 @@ ERR_SET_EXT(rname, request); \ fprintf(stderr, " GET failed on device %-1.16s ; %s.\n", \ ifname, strerror(errno)); \ - return; \ } } while(0) char *prefix; @@ -115,8 +110,6 @@ int bcom_ioctl(int skfd, char *ifname, int cmd, void *buf, int len) strncpy(ifr.ifr_name, ifname, IFNAMSIZ); ret = ioctl(skfd, SIOCDEVPRIVATE, &ifr); - if (ret < 0) - fprintf(stderr, "bcom_ioctl [cmd=%d, buf=%08x, len=%d] failed: %d\n", cmd, buf, len, ret); return ret; } diff --git a/openwrt/target/linux/package/wlcompat/wlcompat.c b/openwrt/target/linux/package/wlcompat/wlcompat.c index 652a3681bc..e96c867923 100644 --- a/openwrt/target/linux/package/wlcompat/wlcompat.c +++ b/openwrt/target/linux/package/wlcompat/wlcompat.c @@ -412,8 +412,7 @@ static int wlcompat_ioctl(struct net_device *dev, { int radio; - if (wl_ioctl(dev, WLC_GET_RADIO, &radio, sizeof(int)) < 0) - return -EINVAL; + wl_ioctl(dev, WLC_GET_RADIO, &radio, sizeof(int)); if (wl_get_val(dev, "qtxpower", &(wrqu->txpower.value), sizeof(int)) < 0) return -EINVAL; @@ -431,10 +430,9 @@ static int wlcompat_ioctl(struct net_device *dev, /* This is weird: WLC_SET_RADIO with 1 as argument disables the radio */ int radio = wrqu->txpower.disabled; - if (wl_ioctl(dev, WLC_SET_RADIO, &radio, sizeof(int)) < 0) - return -EINVAL; + wl_ioctl(dev, WLC_SET_RADIO, &radio, sizeof(int)); - if (!wrqu->txpower.disabled) { + if (!wrqu->txpower.disabled && (wrqu->txpower.value > 0)) { int value; if (wl_get_val(dev, "qtxpower", &value, sizeof(int)) < 0)