 header.frame_ctl = cpu_to_le16(IEEE80211_FTYPE_MGMT | IEEE80211_STYPE_AUTH); header.duration_id	= cpu_to_le16(0x8000); 
 header.frame_ctl = cpu_to_le16(IEEE80211_FTYPE_MGMT | IEEE80211_STYPE_AUTH); header.duration_id = cpu_to_le16(0x8000); 
static void send_authentication_request(struct atmel_private *priv, u16 system, u8 *challenge, int challenge_len){	struct ieee80211_hdr_4addr header;	struct auth_body auth;		header.frame_ctl = cpu_to_le16(IEEE80211_FTYPE_MGMT | IEEE80211_STYPE_AUTH); 	header.duration_id	= cpu_to_le16(0x8000);		header.seq_ctl = 0;	memcpy(header.addr1, priv->CurrentBSSID, 6);	memcpy(header.addr2, priv->dev->dev_addr, 6);	memcpy(header.addr3, priv->CurrentBSSID, 6);		if (priv->wep_is_on && priv->CurrentAuthentTransactionSeqNum != 1) 		/* no WEP for authentication frames with TrSeqNo 1 */                header.frame_ctl |=  cpu_to_le16(IEEE80211_FCTL_PROTECTED);		auth.alg = cpu_to_le16(system); 	auth.status = 0;	auth.trans_seq = cpu_to_le16(priv->CurrentAuthentTransactionSeqNum);	priv->ExpectedAuthentTransactionSeqNum = priv->CurrentAuthentTransactionSeqNum+1; 	priv->CurrentAuthentTransactionSeqNum += 2;		if (challenge_len != 0)	{		auth.el_id = 16; /* challenge_text */		auth.chall_text_len = challenge_len;		memcpy(auth.chall_text, challenge, challenge_len);		atmel_transmit_management_frame(priv, &header, (u8 *)&auth, 8 + challenge_len);	} else {		atmel_transmit_management_frame(priv, &header, (u8 *)&auth, 6);	}}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/4d791aadf63c9d605bc9a4144e79d5756fc29fb3/atmel.c/clean/drivers/net/wireless/atmel.c