static int atmel_set_wap(struct net_device *dev,			 struct iw_request_info *info,			 struct sockaddr *awrq,			 char *extra){	struct atmel_private *priv = netdev_priv(dev);	int i;	static const u8 bcast[] = { 255, 255, 255, 255, 255, 255 };	unsigned long flags;	if (awrq->sa_family != ARPHRD_ETHER)		return -EINVAL;		if (memcmp(bcast, awrq->sa_data, 6) == 0) {		del_timer_sync(&priv->management_timer);		spin_lock_irqsave(&priv->irqlock, flags);		atmel_scan(priv, 1);		spin_unlock_irqrestore(&priv->irqlock, flags);		return 0;	}		for(i=0; i<priv->BSS_list_entries; i++) {		if (memcmp(priv->BSSinfo[i].BSSID, awrq->sa_data, 6) == 0) {			if (!priv->wep_is_on && priv->BSSinfo[i].UsingWEP) {				return -EINVAL;			} else if  (priv->wep_is_on && !priv->BSSinfo[i].UsingWEP) {				return -EINVAL;			} else {				del_timer_sync(&priv->management_timer);				spin_lock_irqsave(&priv->irqlock, flags);				atmel_join_bss(priv, i);				spin_unlock_irqrestore(&priv->irqlock, flags);				return 0;			}		}	}			return -EINVAL;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/4d791aadf63c9d605bc9a4144e79d5756fc29fb3/atmel.c/clean/drivers/net/wireless/atmel.c