add SIOCSIWAP to wlcompat
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Thu, 21 Apr 2005 20:06:49 +0000 (20:06 +0000)
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Thu, 21 Apr 2005 20:06:49 +0000 (20:06 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@702 3c298f89-4303-0410-b956-a3cf2f4a3e73

openwrt/package/openwrt/wlcompat.c

index f96b987..fdcb36c 100644 (file)
@@ -302,6 +302,16 @@ static int wlcompat_ioctl(struct net_device *dev,
                        }
                        break;
                }
+               case SIOCSIWAP:
+               {
+                       if (wrqu->ap_addr.sa_family != ARPHRD_ETHER)
+                               return -EINVAL;
+
+                       if (wl_ioctl(dev,WLC_SET_BSSID,wrqu->ap_addr.sa_data,6) < 0)
+                               return -EINVAL;
+
+                       break;
+               }
                case SIOCGIWAP:
                {
                        wrqu->ap_addr.sa_family = ARPHRD_ETHER;
@@ -513,7 +523,7 @@ static const iw_handler      wlcompat_handler[] = {
        iw_handler_get_spy,     /* SIOCGIWSPY */
        iw_handler_set_thrspy,  /* SIOCSIWTHRSPY */
        iw_handler_get_thrspy,  /* SIOCGIWTHRSPY */
-       NULL,                   /* SIOCSIWAP */
+       wlcompat_ioctl,         /* SIOCSIWAP */
        wlcompat_ioctl,         /* SIOCGIWAP */
        NULL,                   /* -- hole -- */
        NULL,                   /* SIOCGIWAPLIST */