亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? atmel.c

?? h內核
?? C
?? 第 1 頁 / 共 5 頁
字號:
		dwrq->length = priv->SSID_size + 1;	}		dwrq->flags = !priv->connect_to_any_BSS; /* active */	return 0;}static int atmel_get_wap(struct net_device *dev,			 struct iw_request_info *info,			 struct sockaddr *awrq,			 char *extra){	struct atmel_private *priv = netdev_priv(dev);	memcpy(awrq->sa_data, priv->CurrentBSSID, 6);	awrq->sa_family = ARPHRD_ETHER;	return 0;}static int atmel_set_encode(struct net_device *dev,			    struct iw_request_info *info,			    struct iw_point *dwrq,			    char *extra){	struct atmel_private *priv = netdev_priv(dev);	/* Basic checking: do we have a key to set ?	 * Note : with the new API, it's impossible to get a NULL pointer.	 * Therefore, we need to check a key size == 0 instead.	 * New version of iwconfig properly set the IW_ENCODE_NOKEY flag	 * when no key is present (only change flags), but older versions	 * don't do it. - Jean II */	if (dwrq->length > 0) {		int index = (dwrq->flags & IW_ENCODE_INDEX) - 1;		int current_index = priv->default_key;		/* Check the size of the key */		if (dwrq->length > 13) {			return -EINVAL;		}		/* Check the index (none -> use current) */		if (index < 0 || index >= 4)			index = current_index;		else			priv->default_key = index;		/* Set the length */		if (dwrq->length > 5)			priv->wep_key_len[index] = 13;		else			if (dwrq->length > 0)				priv->wep_key_len[index] = 5;			else				/* Disable the key */				priv->wep_key_len[index] = 0;		/* Check if the key is not marked as invalid */		if(!(dwrq->flags & IW_ENCODE_NOKEY)) {			/* Cleanup */			memset(priv->wep_keys[index], 0, 13);			/* Copy the key in the driver */			memcpy(priv->wep_keys[index], extra, dwrq->length);		}		/* WE specify that if a valid key is set, encryption		 * should be enabled (user may turn it off later)		 * This is also how "iwconfig ethX key on" works */		if (index == current_index && 		    priv->wep_key_len[index] > 0) {			priv->wep_is_on = 1;			priv->exclude_unencrypted = 1;			if (priv->wep_key_len[index] > 5) {				priv->pairwise_cipher_suite = CIPHER_SUITE_WEP_64;				priv->encryption_level = 2;			} else {				priv->pairwise_cipher_suite = CIPHER_SUITE_WEP_128;				priv->encryption_level = 1;			}		}	} else {		/* Do we want to just set the transmit key index ? */		int index = (dwrq->flags & IW_ENCODE_INDEX) - 1;		if ( index>=0 && index < 4 ) {			priv->default_key = index;		} else			/* Don't complain if only change the mode */			if(!dwrq->flags & IW_ENCODE_MODE) {				return -EINVAL;			}	}	/* Read the flags */	if(dwrq->flags & IW_ENCODE_DISABLED) {		priv->wep_is_on = 0;		priv->encryption_level = 0; 			priv->pairwise_cipher_suite = CIPHER_SUITE_NONE;	} else {		priv->wep_is_on = 1;		if (priv->wep_key_len[priv->default_key] > 5) {			priv->pairwise_cipher_suite = CIPHER_SUITE_WEP_128;			priv->encryption_level = 2;		} else {			priv->pairwise_cipher_suite = CIPHER_SUITE_WEP_64;			priv->encryption_level = 1;		}	}	if(dwrq->flags & IW_ENCODE_RESTRICTED)		priv->exclude_unencrypted = 1;	if(dwrq->flags & IW_ENCODE_OPEN)		priv->exclude_unencrypted = 0;		return -EINPROGRESS;		/* Call commit handler */}static int atmel_get_encode(struct net_device *dev,			    struct iw_request_info *info,			    struct iw_point *dwrq,			    char *extra){	struct atmel_private *priv = netdev_priv(dev);	int index = (dwrq->flags & IW_ENCODE_INDEX) - 1;		if (!priv->wep_is_on)		dwrq->flags = IW_ENCODE_DISABLED;	else if (priv->exclude_unencrypted)		dwrq->flags = IW_ENCODE_RESTRICTED;	else		dwrq->flags = IW_ENCODE_OPEN;				/* Which key do we want ? -1 -> tx index */	if (index < 0 || index >= 4)		index = priv->default_key;	dwrq->flags |= index + 1;	/* Copy the key to the user buffer */	dwrq->length = priv->wep_key_len[index];	if (dwrq->length > 16) {		dwrq->length=0;	} else {		memset(extra, 0, 16);		memcpy(extra, priv->wep_keys[index], dwrq->length);	}		return 0;}static int atmel_get_name(struct net_device *dev,			  struct iw_request_info *info,			  char *cwrq,			  char *extra){	strcpy(cwrq, "IEEE 802.11-DS");	return 0;}static int atmel_set_rate(struct net_device *dev,			  struct iw_request_info *info,			  struct iw_param *vwrq,			  char *extra){	struct atmel_private *priv = netdev_priv(dev);		if (vwrq->fixed == 0) {		priv->tx_rate = 3;		priv->auto_tx_rate = 1;	} else {		priv->auto_tx_rate = 0;				/* Which type of value ? */		if((vwrq->value < 4) && (vwrq->value >= 0)) {			/* Setting by rate index */		priv->tx_rate = vwrq->value;		} else {		/* Setting by frequency value */			switch (vwrq->value) {			case  1000000: priv->tx_rate = 0; break;			case  2000000: priv->tx_rate = 1; break;			case  5500000: priv->tx_rate = 2; break;			case 11000000: priv->tx_rate = 3; break;			default: return -EINVAL;			}		}	}	return -EINPROGRESS;}static int atmel_set_mode(struct net_device *dev,			  struct iw_request_info *info,			  __u32 *uwrq,			  char *extra){	struct atmel_private *priv = netdev_priv(dev);	if (*uwrq != IW_MODE_ADHOC && *uwrq != IW_MODE_INFRA)		return -EINVAL;	priv->operating_mode = *uwrq;	return -EINPROGRESS;  }static int atmel_get_mode(struct net_device *dev,			  struct iw_request_info *info,			  __u32 *uwrq,			  char *extra){	struct atmel_private *priv = netdev_priv(dev);		*uwrq = priv->operating_mode;	return 0;}static int atmel_get_rate(struct net_device *dev,			 struct iw_request_info *info,			 struct iw_param *vwrq,			 char *extra){	struct atmel_private *priv = netdev_priv(dev);	if (priv->auto_tx_rate) {		vwrq->fixed = 0;		vwrq->value = 11000000;	} else {		vwrq->fixed = 1;		switch(priv->tx_rate) {		case 0: vwrq->value =  1000000; break;		case 1: vwrq->value =  2000000; break;		case 2: vwrq->value =  5500000; break;		case 3: vwrq->value = 11000000; break;		}	}	return 0;}static int atmel_set_power(struct net_device *dev,			   struct iw_request_info *info,			   struct iw_param *vwrq,			   char *extra){	struct atmel_private *priv = netdev_priv(dev);	priv->power_mode = vwrq->disabled ? 0 : 1;	return -EINPROGRESS;}static int atmel_get_power(struct net_device *dev,			   struct iw_request_info *info,			   struct iw_param *vwrq,			   char *extra){	struct atmel_private *priv = netdev_priv(dev);	vwrq->disabled = priv->power_mode ? 0 : 1;	vwrq->flags = IW_POWER_ON;	return 0;}static int atmel_set_retry(struct net_device *dev,			   struct iw_request_info *info,			   struct iw_param *vwrq,			   char *extra){	struct atmel_private *priv = netdev_priv(dev);		if(!vwrq->disabled && (vwrq->flags & IW_RETRY_LIMIT)) {		if(vwrq->flags & IW_RETRY_MAX)			priv->long_retry = vwrq->value;		else if (vwrq->flags & IW_RETRY_MIN)			priv->short_retry = vwrq->value;		else {			/* No modifier : set both */			priv->long_retry = vwrq->value;			priv->short_retry = vwrq->value;		}		return -EINPROGRESS;			}	   	return -EINVAL;}static int atmel_get_retry(struct net_device *dev,			   struct iw_request_info *info,			   struct iw_param *vwrq,			   char *extra){	struct atmel_private *priv = netdev_priv(dev);	vwrq->disabled = 0;      /* Can't be disabled */	/* Note : by default, display the min retry number */	if((vwrq->flags & IW_RETRY_MAX)) {		vwrq->flags = IW_RETRY_LIMIT | IW_RETRY_MAX;		vwrq->value = priv->long_retry;	} else {		vwrq->flags = IW_RETRY_LIMIT;		vwrq->value = priv->short_retry;		if(priv->long_retry != priv->short_retry)			vwrq->flags |= IW_RETRY_MIN;	}	return 0;}static int atmel_set_rts(struct net_device *dev,			 struct iw_request_info *info,			 struct iw_param *vwrq,			 char *extra){	struct atmel_private *priv = netdev_priv(dev);	int rthr = vwrq->value;	if(vwrq->disabled)		rthr = 2347;	if((rthr < 0) || (rthr > 2347)) {		return -EINVAL;	}	priv->rts_threshold = rthr;		return -EINPROGRESS;		/* Call commit handler */}static int atmel_get_rts(struct net_device *dev,			 struct iw_request_info *info,			 struct iw_param *vwrq,			 char *extra){	struct atmel_private *priv = netdev_priv(dev);		vwrq->value = priv->rts_threshold;	vwrq->disabled = (vwrq->value >= 2347);	vwrq->fixed = 1;	return 0;}static int atmel_set_frag(struct net_device *dev,			  struct iw_request_info *info,			  struct iw_param *vwrq,			  char *extra){	struct atmel_private *priv = netdev_priv(dev);	int fthr = vwrq->value;	if(vwrq->disabled)		fthr = 2346;	if((fthr < 256) || (fthr > 2346)) {		return -EINVAL;	}	fthr &= ~0x1;	/* Get an even value - is it really needed ??? */	priv->frag_threshold = fthr;		return -EINPROGRESS;		/* Call commit handler */}static int atmel_get_frag(struct net_device *dev,			  struct iw_request_info *info,			  struct iw_param *vwrq,			  char *extra){	struct atmel_private *priv = netdev_priv(dev);	vwrq->value = priv->frag_threshold;	vwrq->disabled = (vwrq->value >= 2346);	vwrq->fixed = 1;	return 0;}static const long frequency_list[] = { 2412, 2417, 2422, 2427, 2432, 2437, 2442,				2447, 2452, 2457, 2462, 2467, 2472, 2484 };static int atmel_set_freq(struct net_device *dev,			  struct iw_request_info *info,			  struct iw_freq *fwrq,			  char *extra){	struct atmel_private *priv = netdev_priv(dev);	int rc = -EINPROGRESS;		/* Call commit handler */		/* If setting by frequency, convert to a channel */	if((fwrq->e == 1) &&	   (fwrq->m >= (int) 241200000) &&	   (fwrq->m <= (int) 248700000)) {		int f = fwrq->m / 100000;		int c = 0;		while((c < 14) && (f != frequency_list[c]))			c++;		/* Hack to fall through... */		fwrq->e = 0;		fwrq->m = c + 1;	}	/* Setting by channel number */	if((fwrq->m > 1000) || (fwrq->e > 0))		rc = -EOPNOTSUPP;	else {		int channel = fwrq->m;		if (atmel_validate_channel(priv, channel) == 0) {			priv->channel = channel;		} else {			rc = -EINVAL;		} 	}	return rc;}static int atmel_get_freq(struct net_device *dev,			  struct iw_request_info *info,			  struct iw_freq *fwrq,			  char *extra){	struct atmel_private *priv = netdev_priv(dev);	fwrq->m = priv->channel;	fwrq->e = 0;	return 0;}static int atmel_set_scan(struct net_device *dev,			  struct iw_request_info *info,			  struct iw_param *vwrq,			  char *extra){	struct atmel_private *priv = netdev_priv(dev);	unsigned long flags;	/* Note : you may have realise

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
奇米精品一区二区三区四区| 久久99久久精品| 一本到一区二区三区| 久久久久国产精品厨房| eeuss鲁片一区二区三区| 亚洲精品v日韩精品| 精品欧美一区二区三区精品久久| 成人av在线资源网| 日本亚洲天堂网| 亚洲乱码国产乱码精品精可以看| 国产精品二区一区二区aⅴ污介绍| 欧美日韩激情在线| 99久久99久久精品免费观看 | 久久99最新地址| 中文字幕在线观看一区| 日韩一区二区不卡| 91久久精品一区二区二区| 国产一区二区三区免费| 亚洲一区av在线| 亚洲欧美色一区| 中文字幕久久午夜不卡| 日韩欧美的一区二区| 欧美精品自拍偷拍| 91在线视频免费观看| 在线日韩国产精品| 色狠狠色狠狠综合| 日韩亚洲国产中文字幕欧美| 欧美亚洲一区二区在线| 99re8在线精品视频免费播放| 97超碰欧美中文字幕| 色综合天天综合网国产成人综合天| 国产情人综合久久777777| 97se亚洲国产综合自在线不卡| 亚洲一级二级三级在线免费观看| 色婷婷综合久久久久中文一区二区 | 成人免费毛片app| 国产午夜亚洲精品午夜鲁丝片| 樱桃国产成人精品视频| 国产一区欧美二区| 午夜亚洲国产au精品一区二区| 91美女在线观看| 日韩精品免费视频人成| 欧美一区二区黄| 亚洲午夜精品在线| 粉嫩蜜臀av国产精品网站| 日韩一级二级三级精品视频| 一本大道久久a久久精二百| 久久久精品免费观看| 欧美日韩久久一区| 欧美日韩美少妇| 日韩精品专区在线影院重磅| 91精品啪在线观看国产60岁| 欧美三级中文字幕在线观看| 久久人人97超碰com| wwwwww.欧美系列| 男女性色大片免费观看一区二区 | 91片黄在线观看| 久久久久国产免费免费| 2020国产精品自拍| 亚洲国产精品一区二区www | 97久久人人超碰| 欧美色国产精品| 日产精品久久久久久久性色| 亚洲成在人线在线播放| 色婷婷国产精品| 97精品久久久久中文字幕| 国产亚洲人成网站| 韩国女主播成人在线观看| 麻豆精品一区二区av白丝在线| 精久久久久久久久久久| 69久久99精品久久久久婷婷 | 亚洲黄色尤物视频| 国产欧美一二三区| 久久综合久久综合久久综合| 国产精品久99| 91在线视频免费观看| 国产精品亲子乱子伦xxxx裸| 天堂午夜影视日韩欧美一区二区| 亚洲色欲色欲www在线观看| 亚洲四区在线观看| 在线观看视频欧美| 亚洲另类春色校园小说| 麻豆国产精品官网| 色国产综合视频| 亚洲第一二三四区| 日韩欧美在线一区二区三区| 久久精品久久久精品美女| 精品美女一区二区| 日韩欧美一卡二卡| 中文字幕在线不卡视频| 国产人成亚洲第一网站在线播放 | 99久久综合99久久综合网站| 国产精品久久久久9999吃药| 亚洲永久精品大片| 日本人妖一区二区| 欧美电影影音先锋| 麻豆国产精品视频| 日本特黄久久久高潮| 亚洲同性gay激情无套| 成人中文字幕电影| 亚洲综合免费观看高清完整版 | 男女视频一区二区| 亚洲青青青在线视频| 亚洲免费在线电影| 久久综合色天天久久综合图片| 中文字幕在线一区免费| 免费xxxx性欧美18vr| 中文字幕一区二区三| 国产日产精品一区| 老鸭窝一区二区久久精品| 亚洲免费av网站| 麻豆成人91精品二区三区| 久久精品亚洲精品国产欧美| 日韩国产在线一| 中文乱码免费一区二区| 国产综合久久久久久久久久久久| 日本在线不卡一区| 日韩一本二本av| 中文字幕成人在线观看| 亚洲一区二区三区四区在线| 日韩av电影免费观看高清完整版在线观看 | 亚洲成人动漫一区| 中文字幕欧美日本乱码一线二线| 国产日韩精品久久久| 欧美曰成人黄网| 亚洲欧美日韩中文字幕一区二区三区| 久久久综合视频| 久久综合久久99| 亚洲国产一区在线观看| 精品亚洲成a人在线观看| 亚洲嫩草精品久久| 久久伊人中文字幕| 欧美在线高清视频| 日韩美女在线视频| 欧美欧美欧美欧美| 欧美精品第一页| 亚洲老妇xxxxxx| 99久久国产综合精品麻豆| 国产麻豆精品久久一二三| 色综合一区二区三区| 亚洲欧美日韩国产一区二区三区| 久久er精品视频| 国产精品久久久久7777按摩| 五月天视频一区| 91碰在线视频| 中文字幕精品一区二区精品绿巨人 | 午夜视频在线观看一区二区| 欧美视频三区在线播放| 精品视频免费看| 91高清在线观看| 日韩免费视频一区二区| 亚洲第一成年网| 人人狠狠综合久久亚洲| 欧美日韩国产大片| 成人天堂资源www在线| 久久综合久久综合久久| 丁香婷婷综合激情五月色| 在线播放中文一区| 91精品久久久久久久久99蜜臂| 国产成人亚洲精品狼色在线| 日韩不卡一二三区| 中文字幕av资源一区| 蜜桃视频一区二区三区在线观看| 五月婷婷综合网| 久久久国产综合精品女国产盗摄| 亚洲超丰满肉感bbw| 日韩一区二区三区视频在线观看 | 欧美伦理视频网站| 日本亚洲免费观看| 在线观看国产一区二区| 色综合一个色综合| 99re6这里只有精品视频在线观看| 波多野结衣的一区二区三区| 国产精品美女视频| 久久久99精品久久| 国产亚洲一区字幕| 中文字幕亚洲一区二区va在线| 中文字幕av一区 二区| 亚洲免费av在线| 久久精品国产亚洲a| 国产成人免费在线观看| 色综合天天天天做夜夜夜夜做| 91麻豆福利精品推荐| 91久久奴性调教| 2017欧美狠狠色| 国产精品欧美经典| 欧美三级资源在线| 久久精品人人做人人爽人人| 毛片av一区二区三区| 成人精品高清在线| 正在播放亚洲一区| 亚洲欧洲成人精品av97| 麻豆免费看一区二区三区| 99精品欧美一区二区三区综合在线| 欧美日韩午夜在线视频| 欧美激情中文不卡| 蜜桃av噜噜一区| 色综合久久中文综合久久97| 26uuu国产日韩综合| 亚洲成人av中文|