fix some small bugs in wificonf and wlcompat
git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@1385 3c298f89-4303-0410-b956-a3cf2f4a3e73master
parent
30c5c6daec
commit
86278453fa
|
@ -36,21 +36,18 @@
|
||||||
do { \
|
do { \
|
||||||
ERR_SET_EXT(rname, request); \
|
ERR_SET_EXT(rname, request); \
|
||||||
fprintf(stderr, " too few arguments.\n"); \
|
fprintf(stderr, " too few arguments.\n"); \
|
||||||
return; \
|
|
||||||
} while(0)
|
} while(0)
|
||||||
|
|
||||||
#define ABORT_ARG_TYPE(rname, request, arg) \
|
#define ABORT_ARG_TYPE(rname, request, arg) \
|
||||||
do { \
|
do { \
|
||||||
ERR_SET_EXT(rname, request); \
|
ERR_SET_EXT(rname, request); \
|
||||||
fprintf(stderr, " invalid argument \"%s\".\n", arg); \
|
fprintf(stderr, " invalid argument \"%s\".\n", arg); \
|
||||||
return; \
|
|
||||||
} while(0)
|
} while(0)
|
||||||
|
|
||||||
#define ABORT_ARG_SIZE(rname, request, max) \
|
#define ABORT_ARG_SIZE(rname, request, max) \
|
||||||
do { \
|
do { \
|
||||||
ERR_SET_EXT(rname, request); \
|
ERR_SET_EXT(rname, request); \
|
||||||
fprintf(stderr, " argument too big (max %d)\n", max); \
|
fprintf(stderr, " argument too big (max %d)\n", max); \
|
||||||
return; \
|
|
||||||
} while(0)
|
} while(0)
|
||||||
|
|
||||||
/*------------------------------------------------------------------*/
|
/*------------------------------------------------------------------*/
|
||||||
|
@ -64,7 +61,6 @@
|
||||||
ERR_SET_EXT(rname, request); \
|
ERR_SET_EXT(rname, request); \
|
||||||
fprintf(stderr, " SET failed on device %-1.16s ; %s.\n", \
|
fprintf(stderr, " SET failed on device %-1.16s ; %s.\n", \
|
||||||
ifname, strerror(errno)); \
|
ifname, strerror(errno)); \
|
||||||
return; \
|
|
||||||
} } while(0)
|
} } while(0)
|
||||||
|
|
||||||
/*------------------------------------------------------------------*/
|
/*------------------------------------------------------------------*/
|
||||||
|
@ -78,7 +74,6 @@
|
||||||
ERR_SET_EXT(rname, request); \
|
ERR_SET_EXT(rname, request); \
|
||||||
fprintf(stderr, " GET failed on device %-1.16s ; %s.\n", \
|
fprintf(stderr, " GET failed on device %-1.16s ; %s.\n", \
|
||||||
ifname, strerror(errno)); \
|
ifname, strerror(errno)); \
|
||||||
return; \
|
|
||||||
} } while(0)
|
} } while(0)
|
||||||
|
|
||||||
char *prefix;
|
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);
|
strncpy(ifr.ifr_name, ifname, IFNAMSIZ);
|
||||||
|
|
||||||
ret = ioctl(skfd, SIOCDEVPRIVATE, &ifr);
|
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;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
|
@ -412,8 +412,7 @@ static int wlcompat_ioctl(struct net_device *dev,
|
||||||
{
|
{
|
||||||
int radio;
|
int radio;
|
||||||
|
|
||||||
if (wl_ioctl(dev, WLC_GET_RADIO, &radio, sizeof(int)) < 0)
|
wl_ioctl(dev, WLC_GET_RADIO, &radio, sizeof(int));
|
||||||
return -EINVAL;
|
|
||||||
|
|
||||||
if (wl_get_val(dev, "qtxpower", &(wrqu->txpower.value), sizeof(int)) < 0)
|
if (wl_get_val(dev, "qtxpower", &(wrqu->txpower.value), sizeof(int)) < 0)
|
||||||
return -EINVAL;
|
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 */
|
/* This is weird: WLC_SET_RADIO with 1 as argument disables the radio */
|
||||||
int radio = wrqu->txpower.disabled;
|
int radio = wrqu->txpower.disabled;
|
||||||
|
|
||||||
if (wl_ioctl(dev, WLC_SET_RADIO, &radio, sizeof(int)) < 0)
|
wl_ioctl(dev, WLC_SET_RADIO, &radio, sizeof(int));
|
||||||
return -EINVAL;
|
|
||||||
|
|
||||||
if (!wrqu->txpower.disabled) {
|
if (!wrqu->txpower.disabled && (wrqu->txpower.value > 0)) {
|
||||||
int value;
|
int value;
|
||||||
|
|
||||||
if (wl_get_val(dev, "qtxpower", &value, sizeof(int)) < 0)
|
if (wl_get_val(dev, "qtxpower", &value, sizeof(int)) < 0)
|
||||||
|
|
Loading…
Reference in New Issue