Netgear-A6210
Netgear-A6210 copied to clipboard
Kernel 4.4.38 kernel Oops
If i disable networkmanager. I can connect the AP manually use below command
wpa_supplicant -B -i wlan0 -c wpa_supplicant.conf -D nl80211
dhcpcd wlan0
But, if I plugin the dongle and restart networkmanager, kernel oops
It shows unable to handle kernel paging request at 000000000013a355 at CFG80211DRV_IoctlHandle+0x1505/0x1540 [mt7662u_sta]
check CFG80211DRV_IoctlHandle+0x1505/0x1540 at 7c5f5
DBGPRINT(RT_DEBUG_TRACE, ("WPA\n"));
7c5dd: e9 92 f0 ff ff jmpq 7b674 <CFG80211DRV_IoctlHandle+0x584>
7c5e2: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
7c5e9: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
memcpy(KeyBuf, pConnInfo->pKey, pConnInfo->KeyLen);
7c5f0: e8 00 00 00 00 callq 7c5f5 <CFG80211DRV_IoctlHandle+0x1505>
7c5f5: 41 80 bc 24 51 a3 13 cmpb $0x1,0x13a351(%r12)
7c5fc: 00 01
DBGPRINT(RT_DEBUG_TRACE, (" %s\n", __FUNCTION__));
uname -a Linux Arch-C6A8BC 4.4.38-1-lts #1 SMP Sat Dec 10 20:21:58 CET 2016 x86_64 GNU/Linux
[ 388.545428] 80211> CFG80211_OpsScan ==> wlan0(2)
[ 388.545459] CFG80211DRV_IoctlHandle: 504a ffff8802475d7918 0
[ 388.545468] CFG80211DRV_IoctlHandle: 504e (null) 2
[ 388.545475] 80211> ExtraIEs Null in ProbeRequest from upper layer...
[ 388.545480] 80211> Wildcard SSID In ProbeRequest.
[ 388.545492] CFG80211DRV_IoctlHandle: 5061 ffff88023223f400 2f
[ 388.545583] SCANNING, suspend MSDU transmission ...
[ 388.546269] bbp_set_bw(): Set PhyBW as 20MHz.l
[ 388.546282] SYNC - BBP R4 to 20MHz.l
[ 388.581330] wlp2s0: deauthenticating from 00:35:7a:00:00:c8 by local choice (Reason: 3=DEAUTH_LEAVING)
[ 388.596848] CFG80211NetdevNotifierEvent ndev:ffff88024863e000 state:4
[ 388.596856] CFG80211NetdevNotifierEvent default: [4]
[ 388.600673] TX0 power compensation = 0x38
[ 388.600775] TX1 power compensation = 0x38
[ 388.601092] mt76x2_switch_channel(): Switch to Ch#1(2T2R), BBP_BW=0, bbp_ch_idx=0)
[ 388.674215] CFG80211NetdevNotifierEvent ndev:ffff88024863e000 state:4
[ 388.674218] CFG80211NetdevNotifierEvent default: [4]
[ 388.674385] CFG80211NetdevNotifierEvent ndev:ffff88009e099000 state:9
[ 388.674387] CFG80211NetdevNotifierEvent NETDEV_GOING_DOWN [9]
[ 388.674389] CFG80211DRV_IoctlHandle: 5078 ffff88009e099000 9
[ 388.674391] CFG80211DRV_IoctlHandle: CMD_RTPRIV_IOCTL_80211_NETDEV_EVENT
[ 388.674392] CFG_SCAN: close the scan cmd in device close phase
[ 388.674393] 80211> cfg80211_scan_done
[ 388.674455] ===> rt28xx_close ffffc90001a01000
[ 388.674456] ==> MlmeHalt
[ 388.674462] <---MlmeThread
[ 388.674471] --->Disable TSF synchronization
[ 388.679784] <== MlmeHalt
[ 388.679788] MacTableReset
[ 388.679831] RT28xxUsbMlmeRadioOFF()
[ 388.689936] --> RT65xxUsbAsicRadioOff
[ 388.689938] ----> RT65xxDisableTxRx
[ 388.689939] RT65xxDisableTxRx Tx success = 0
[ 388.689940] RT65xxDisableTxRx Tx success = 9
[ 388.689941] ====> StopDmaTx
[ 388.691396] <==== StopDmaTx
[ 388.691759] ERROR mt766u_sta:MlmeEnqueueForRecv(): fRTMP_ADAPTER_HALT_IN_PROGRESS
[ 388.691796] ERROR mt766u_sta:MlmeEnqueueForRecv(): fRTMP_ADAPTER_HALT_IN_PROGRESS
[ 388.691841] ERROR mt766u_sta:MlmeEnqueueForRecv(): fRTMP_ADAPTER_HALT_IN_PROGRESS
[ 388.694458] ====> StopDmaRx
[ 388.694498] <==== StopDmaRx
[ 388.694499] andes_usb_erasefw
[ 388.694539] ==>rlt_wlan_chip_onoff(): OnOff:0, Reset= 0, pAd->WlanFunCtrl:0x20b, Reg-WlanFunCtrl=0x20b
[ 388.694578] WlanFunCtrl= 0x208
[ 388.694675] <== rlt_wlan_chip_onoff():pAd->WlanFunCtrl.word = 0x208, Reg->WlanFunCtrl=0x208!
[ 388.694677] <---- RT65xxDisableTxRx
[ 388.694755] receive cmd msg fail(-2)
[ 388.694760] tx_kickout_fail_count = 0
[ 388.694760] tx_timeout_fail_count = 0
[ 388.694761] rx_receive_fail_count = 0
[ 388.694761] alloc_cmd_msg = 26
[ 388.694762] free_cmd_msg = 26
[ 388.694763] --->RTUSBCancelPendingBulkInIRP
[ 388.694800] <---RTUSBCancelPendingBulkInIRP
[ 388.694801] <== RT65xxUsbAsicRadioOff
[ 388.745163] --->RTUSBCancelPendingBulkInIRP
[ 388.745174] <---RTUSBCancelPendingBulkInIRP
[ 388.745190] <---RTUSBCmdThread
[ 388.745231] <---RtmpTimerQThread
[ 388.745264] CFG80211DRV_IoctlHandle: 5073 (null) 0
[ 388.745265] CFG80211_reSetToDefault
[ 388.747293] RTMP_AllTimerListRelease: Cancel timer obj ffffc90001a834b0!
[ 388.747294] RTMP_TimerListRelease: release timer obj ffffc90001a834b0!
[ 388.747295] RTMP_AllTimerListRelease: Cancel timer obj ffffc90001a83528!
[ 388.747296] RTMP_TimerListRelease: release timer obj ffffc90001a83528!
[ 388.747297] RTMP_AllTimerListRelease: Cancel timer obj ffffc90001a835a0!
[ 388.747297] RTMP_TimerListRelease: release timer obj ffffc90001a835a0!
[ 388.747298] RTMP_AllTimerListRelease: Cancel timer obj ffffc90001a83438!
[ 388.747299] RTMP_TimerListRelease: release timer obj ffffc90001a83438!
[ 388.747300] RTMP_AllTimerListRelease: Cancel timer obj ffffc90001a832d0!
[ 388.747300] RTMP_TimerListRelease: release timer obj ffffc90001a832d0!
[ 388.747301] RTMP_AllTimerListRelease: Cancel timer obj ffffc90001a83348!
[ 388.747302] RTMP_TimerListRelease: release timer obj ffffc90001a83348!
[ 388.747303] RTMP_AllTimerListRelease: Cancel timer obj ffffc90001a14fa0!
[ 388.747304] RTMP_TimerListRelease: release timer obj ffffc90001a14fa0!
[ 388.747305] RTMP_AllTimerListRelease: Cancel timer obj ffffc90001a03d78!
[ 388.747305] RTMP_TimerListRelease: release timer obj ffffc90001a03d78!
[ 388.747306] RTMP_AllTimerListRelease: Cancel timer obj ffffc90001a03df8!
[ 388.747307] RTMP_TimerListRelease: release timer obj ffffc90001a03df8!
[ 388.747308] RTMP_AllTimerListRelease: Cancel timer obj ffffc90001a15128!
[ 388.747308] RTMP_TimerListRelease: release timer obj ffffc90001a15128!
[ 388.747309] RTMP_AllTimerListRelease: Cancel timer obj ffffc90001a14eb0!
[ 388.747310] RTMP_TimerListRelease: release timer obj ffffc90001a14eb0!
[ 388.747310] RTMP_AllTimerListRelease: Cancel timer obj ffffc90001a150b0!
[ 388.747311] RTMP_TimerListRelease: release timer obj ffffc90001a150b0!
[ 388.747312] <=== rt28xx_close
[ 388.747397] CFG80211NetdevNotifierEvent ndev:ffff88009e099000 state:2
[ 388.747398] CFG80211NetdevNotifierEvent default: [2]
[ 388.933622] CFG80211NetdevNotifierEvent ndev:ffff88024863e000 state:4
[ 388.933626] CFG80211NetdevNotifierEvent default: [4]
[ 388.933645] CFG80211NetdevNotifierEvent ndev:ffff88024863e000 state:4
[ 388.933646] CFG80211NetdevNotifierEvent default: [4]
[ 388.997443] CFG80211NetdevNotifierEvent ndev:ffff88022ffd2000 state:16
[ 388.997551] CFG80211NetdevNotifierEvent ndev:ffff88022ffd2000 state:5
[ 388.997576] CFG80211NetdevNotifierEvent ndev:ffff88022ffd2000 state:13
[ 388.997610] CFG80211NetdevNotifierEvent ndev:ffff88022ffd2000 state:1
[ 389.064033] CFG80211DRV_IoctlHandle: 5062 ffff88009e099000 0
[ 389.064039] CFG80211DRV_IoctlHandle: 5062 ffff88009e099000 0
[ 389.064042] CFG80211DRV_IoctlHandle: 5062 ffff88009e099000 0
[ 389.064044] CFG80211DRV_IoctlHandle: 5062 ffff88009e099000 0
[ 389.064046] CFG80211DRV_IoctlHandle: 5062 ffff88009e099000 0
[ 389.064048] CFG80211DRV_IoctlHandle: 5062 ffff88009e099000 0
[ 389.064050] CFG80211DRV_IoctlHandle: 5062 ffff88009e099000 0
[ 389.064052] CFG80211DRV_IoctlHandle: 5062 ffff88009e099000 0
[ 389.064054] CFG80211DRV_IoctlHandle: 5062 ffff88009e099000 0
[ 389.064056] CFG80211DRV_IoctlHandle: 5062 ffff88009e099000 0
[ 389.064058] CFG80211DRV_IoctlHandle: 5062 ffff88009e099000 0
[ 389.064060] CFG80211DRV_IoctlHandle: 5062 ffff88009e099000 0
[ 389.064062] CFG80211DRV_IoctlHandle: 5062 ffff88009e099000 0
[ 389.064064] CFG80211DRV_IoctlHandle: 5062 ffff88009e099000 0
[ 389.064066] CFG80211DRV_IoctlHandle: 5062 ffff88009e099000 0
[ 389.064067] CFG80211DRV_IoctlHandle: 5062 ffff88009e099000 0
[ 389.064069] CFG80211DRV_IoctlHandle: 5062 ffff88009e099000 0
[ 389.064071] CFG80211DRV_IoctlHandle: 5062 ffff88009e099000 0
[ 389.193745] CFG80211NetdevNotifierEvent ndev:ffff88024863e000 state:4
[ 389.193756] CFG80211NetdevNotifierEvent default: [4]
[ 389.359012] CFG80211NetdevNotifierEvent ndev:ffff88024863e000 state:4
[ 389.359015] CFG80211NetdevNotifierEvent default: [4]
[ 389.359170] IPv6: ADDRCONF(NETDEV_UP): wlp2s0: link is not ready
[ 389.359280] CFG80211NetdevNotifierEvent ndev:ffff88024863e000 state:9
[ 389.359281] CFG80211NetdevNotifierEvent NETDEV_GOING_DOWN [9]
[ 389.359283] CFG80211DRV_IoctlHandle: 5078 ffff88024863e000 9
[ 389.359284] CFG80211DRV_IoctlHandle: CMD_RTPRIV_IOCTL_80211_NETDEV_EVENT
[ 389.359305] BUG: unable to handle kernel paging request at 000000000013a355
[ 389.360244] IP: [
000000000007b0f0 <CFG80211DRV_IoctlHandle>:
7b0f0: e8 00 00 00 00 callq 7b0f5 <CFG80211DRV_IoctlHandle+0x5>
7b0f5: 55 push %rbp
7b0f6: 48 89 e5 mov %rsp,%rbp
7b0f9: 41 56 push %r14
7b0fb: 41 55 push %r13
CFG80211DBG(RT_DEBUG_TRACE, ("crda> CFG80211_RegRuleApply ==>\n"));
7b0fd: 41 54 push %r12
7b0ff: 53 push %rbx
7b100: 49 89 fc mov %rdi,%r12
7b103: 89 f3 mov %esi,%ebx
7b105: 49 89 d5 mov %rdx,%r13
7b108: 49 89 ce mov %rcx,%r14
7b10b: 48 81 ec 90 00 00 00 sub $0x90,%rsp
} /* End of CFG80211_RegRuleApply /
7b112: 65 48 8b 04 25 28 00 mov %gs:0x28,%rax
7b119: 00 00
7b11b: 48 89 45 d8 mov %rax,-0x28(%rbp)
7b11f: 31 c0 xor %eax,%eax
{
7b121: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7b128 <CFG80211DRV_IoctlHandle+0x38>
7b128: 76 0e jbe 7b138 <CFG80211DRV_IoctlHandle+0x48>
7b12a: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7b132 <CFG80211DRV_IoctlHandle+0x42>
7b131: 00
7b132: 0f 84 ce 0b 00 00 je 7bd06 <CFG80211DRV_IoctlHandle+0xc16>
7b138: 8d b3 b7 af ff ff lea -0x5049(%rbx),%esi
7b13e: 83 fe 30 cmp $0x30,%esi
7b141: 0f 87 b5 0b 00 00 ja 7bcfc <CFG80211DRV_IoctlHandle+0xc0c>
7b147: ff 24 f5 00 00 00 00 jmpq 0x0(,%rsi,8)
7b14e: 41 c6 84 24 9e 2f 00 movb $0x1,0x2f9e(%r12)
7b155: 00 01
DBGPRINT(RT_DEBUG_TRACE,
7b157: 41 0f b6 45 00 movzbl 0x0(%r13),%eax
7b15c: 3c 02 cmp $0x2,%al
7b15e: 0f 84 e7 0e 00 00 je 7c04b <CFG80211DRV_IoctlHandle+0xf5b>
7b164: 3c 01 cmp $0x1,%al
7b166: 0f 84 45 10 00 00 je 7c1b1 <CFG80211DRV_IoctlHandle+0x10c1>
switch (cmd) {
7b16c: 41 0f b6 45 02 movzbl 0x2(%r13),%eax
7b171: 3c 02 cmp $0x2,%al
7b173: 0f 84 2e 11 00 00 je 7c2a7 <CFG80211DRV_IoctlHandle+0x11b7>
7b179: 3c 01 cmp $0x1,%al
7b17b: 0f 84 b7 10 00 00 je 7c238 <CFG80211DRV_IoctlHandle+0x1148>
pAd->StaCfg.wpa_supplicant_info.WpaSupplicantUP = WPA_SUPPLICANT_ENABLE; / Set_Wpa_Support(pAd, "1")/
7b181: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
if (pConnInfo->WpaVer == 2) {
7b188: 4c 89 e7 mov %r12,%rdi
7b18b: e8 00 00 00 00 callq 7b190 <CFG80211DRV_IoctlHandle+0xa0>
7b190: 8b 05 00 00 00 00 mov 0x0(%rip),%eax # 7b196 <CFG80211DRV_IoctlHandle+0xa6>
} else if (pConnInfo->WpaVer == 1) {
7b196: 83 f8 02 cmp $0x2,%eax
7b199: 0f 86 9f 0d 00 00 jbe 7bf3e <CFG80211DRV_IoctlHandle+0xe4e>
} else if (pConnInfo->AuthType == Ndis802_11AuthModeAutoSwitch) {
7b19f: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7b1a7 <CFG80211DRV_IoctlHandle+0xb7>
7b1a6: 00
7b1a7: 0f 84 6a 0f 00 00 je 7c117 <CFG80211DRV_IoctlHandle+0x1027>
} else if (pConnInfo->AuthType == Ndis802_11AuthModeShared) {
7b1ad: 41 0f b6 55 03 movzbl 0x3(%r13),%edx
Set_AuthMode_Proc(pAd, "OPEN");
7b1b2: f6 c2 08 test $0x8,%dl
7b1b5: 0f 85 6f 0d 00 00 jne 7bf2a <CFG80211DRV_IoctlHandle+0xe3a>
7b1bb: f6 c2 04 test $0x4,%dl
7b1be: 0f 85 88 10 00 00 jne 7c24c <CFG80211DRV_IoctlHandle+0x115c>
CFG80211DBG(RT_DEBUG_TRACE,
7b1c4: 83 e2 02 and $0x2,%edx
7b1c7: 0f 84 ee 10 00 00 je 7c2bb <CFG80211DRV_IoctlHandle+0x11cb>
7b1cd: 83 f8 02 cmp $0x2,%eax
7b1d0: 76 0e jbe 7b1e0 <CFG80211DRV_IoctlHandle+0xf0>
7b1d2: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7b1da <CFG80211DRV_IoctlHandle+0xea>
7b1d9: 00
7b1da: 0f 84 da 12 00 00 je 7c4ba <CFG80211DRV_IoctlHandle+0x13ca>
if (pConnInfo->PairwiseEncrypType & RT_CMD_80211_CONN_ENCRYPT_CCMP) {
7b1e0: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
7b1e7: 4c 89 e7 mov %r12,%rdi
7b1ea: e8 00 00 00 00 callq 7b1ef <CFG80211DRV_IoctlHandle+0xff>
} else if (pConnInfo->PairwiseEncrypType & RT_CMD_80211_CONN_ENCRYPT_TKIP) {
7b1ef: 41 0f b6 45 04 movzbl 0x4(%r13),%eax
} else if (pConnInfo->PairwiseEncrypType & RT_CMD_80211_CONN_ENCRYPT_WEP) {
7b1f4: c7 85 58 ff ff ff 30 movl $0x30,-0xa8(%rbp)
7b1fb: 00 00 00
DBGPRINT(RT_DEBUG_TRACE, ("WEP\n"));
7b1fe: a8 08 test $0x8,%al
7b200: 0f 84 71 0d 00 00 je 7bf77 <CFG80211DRV_IoctlHandle+0xe87>
7b206: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7b20d <CFG80211DRV_IoctlHandle+0x11d>
7b20d: 76 0e jbe 7b21d <CFG80211DRV_IoctlHandle+0x12d>
7b20f: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7b217 <CFG80211DRV_IoctlHandle+0x127>
7b216: 00
Set_EncrypType_Proc(pAd, "WEP");
7b217: 0f 84 64 13 00 00 je 7c581 <CFG80211DRV_IoctlHandle+0x1491>
7b21d: 48 8d b5 58 ff ff ff lea -0xa8(%rbp),%rsi
IoctlWpa.flags = RT_CMD_STA_IOCTL_WPA_GROUP;
7b224: 31 d2 xor %edx,%edx
7b226: 4c 89 e7 mov %r12,%rdi
7b229: c7 85 5c ff ff ff 35 movl $0x35,-0xa4(%rbp)
7b230: 00 00 00
if (pConnInfo->GroupwiseEncrypType & RT_CMD_80211_CONN_ENCRYPT_CCMP) {
7b233: e8 00 00 00 00 callq 7b238 <CFG80211DRV_IoctlHandle+0x148>
DBGPRINT(RT_DEBUG_TRACE, ("GTK AES\n"));
7b238: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7b23f <CFG80211DRV_IoctlHandle+0x14f>
7b23f: 76 0e jbe 7b24f <CFG80211DRV_IoctlHandle+0x15f>
7b241: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7b249 <CFG80211DRV_IoctlHandle+0x159>
7b248: 00
7b249: 0f 84 6c 11 00 00 je 7c3bb <CFG80211DRV_IoctlHandle+0x12cb>
RtmpIoctl_rt_ioctl_siwauth(pAd, &IoctlWpa, 0);
7b24f: 49 83 7d 08 00 cmpq $0x0,0x8(%r13)
7b254: 74 11 je 7b267 <CFG80211DRV_IoctlHandle+0x177>
7b256: 41 0f b6 45 04 movzbl 0x4(%r13),%eax
IoctlWpa.value = RT_CMD_STA_IOCTL_WPA_GROUP_CCMP;
7b25b: 41 0a 45 03 or 0x3(%r13),%al
7b25f: a8 02 test $0x2,%al
7b261: 0f 85 1a 0e 00 00 jne 7c081 <CFG80211DRV_IoctlHandle+0xf91>
RtmpIoctl_rt_ioctl_siwauth(pAd, &IoctlWpa, 0);
7b267: 41 c6 84 24 52 a3 13 movb $0x1,0x13a352(%r12)
7b26e: 00 01
CFG80211DBG(RT_DEBUG_TRACE, ("80211> EncrypType = %d\n", pAd->StaCfg.wdev.WepStatus));
7b270: 48 89 de mov %rbx,%rsi
7b273: 4c 89 e7 mov %r12,%rdi
7b276: e8 00 00 00 00 callq 7b27b <CFG80211DRV_IoctlHandle+0x18b>
7b27b: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7b282 <CFG80211DRV_IoctlHandle+0x192>
if (pConnInfo->pKey &&
7b282: 76 19 jbe 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
7b284: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7b28c <CFG80211DRV_IoctlHandle+0x19c>
7b28b: 00
((pConnInfo->GroupwiseEncrypType | pConnInfo->PairwiseEncrypType) &
7b28c: 75 0f jne 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
7b28e: 48 89 de mov %rbx,%rsi
if (pConnInfo->pKey &&
7b291: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
pAd->cfg80211_ctrl.FlgCfg80211Connecting = TRUE;
7b298: e8 00 00 00 00 callq 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
7b29d: 31 c0 xor %eax,%eax
7b29f: 48 8b 4d d8 mov -0x28(%rbp),%rcx
Set_SSID_Proc(pAd, (PSTRING)SSID);
7b2a3: 65 48 33 0c 25 28 00 xor %gs:0x28,%rcx
7b2aa: 00 00
CFG80211DBG(RT_DEBUG_TRACE, ("80211> Connecting SSID = %s\n", SSID));
7b2ac: 0f 85 b3 10 00 00 jne 7c365 <CFG80211DRV_IoctlHandle+0x1275>
7b2b2: 48 81 c4 90 00 00 00 add $0x90,%rsp
7b2b9: 5b pop %rbx
7b2ba: 41 5c pop %r12
7b2bc: 41 5d pop %r13
7b2be: 41 5e pop %r14
7b2c0: 5d pop %rbp
7b2c1: c3 retq
7b2c2: 49 8b 84 24 e0 a4 13 mov 0x13a4e0(%r12),%rax
7b2c9: 00
7b2ca: 49 89 45 00 mov %rax,0x0(%r13)
return NDIS_STATUS_SUCCESS;
7b2ce: 31 c0 xor %eax,%eax
}
7b2d0: eb cd jmp 7b29f <CFG80211DRV_IoctlHandle+0x1af>
7b2d2: 4c 89 e7 mov %r12,%rdi
7b2d5: e8 00 00 00 00 callq 7b2da <CFG80211DRV_IoctlHandle+0x1ea>
7b2da: 31 c0 xor %eax,%eax
7b2dc: eb c1 jmp 7b29f <CFG80211DRV_IoctlHandle+0x1af>
7b2de: 49 8b bc 24 e0 a4 13 mov 0x13a4e0(%r12),%rdi
7b2e5: 00
7b2e6: 48 85 ff test %rdi,%rdi
7b2e9: 74 b2 je 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
7b2eb: 4c 89 ee mov %r13,%rsi
7b2ee: e8 00 00 00 00 callq 7b2f3 <CFG80211DRV_IoctlHandle+0x203>
pSurveyInfo->pCfg80211 = pAd->pCfg80211_CB;
7b2f3: 31 c9 xor %ecx,%ecx
7b2f5: 31 d2 xor %edx,%edx
7b2f7: be 77 50 00 00 mov $0x5077,%esi
7b2fc: 4c 89 e7 mov %r12,%rdi
return NDIS_STATUS_SUCCESS;
7b2ff: e8 00 00 00 00 callq 7b304 <CFG80211DRV_IoctlHandle+0x214>
CFG80211DRV_OpsScanExtraIesSet(pAd);
7b304: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
return NDIS_STATUS_SUCCESS;
7b30b: e8 00 00 00 00 callq 7b310 <CFG80211DRV_IoctlHandle+0x220>
if (pAd->pCfg80211_CB == NULL)
7b310: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7b317 <CFG80211DRV_IoctlHandle+0x227>
7b317: 76 0e jbe 7b327 <CFG80211DRV_IoctlHandle+0x237>
7b319: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7b321 <CFG80211DRV_IoctlHandle+0x231>
7b320: 00
CFG80211OS_UnRegister(pAd->pCfg80211_CB, pNetDev);
7b321: 0f 84 49 11 00 00 je 7c470 <CFG80211DRV_IoctlHandle+0x1380>
RTMP_DRIVER_80211_SCAN_STATUS_LOCK_INIT(pAd, FALSE);
7b327: 49 8b bc 24 58 a3 13 mov 0x13a358(%r12),%rdi
7b32e: 00
7b32f: 41 c6 84 24 88 a4 13 movb $0x0,0x13a488(%r12)
7b336: 00 00
unregister_netdevice_notifier(&cfg80211_netdev_notifier);
7b338: 41 c6 84 24 89 a4 13 movb $0x0,0x13a489(%r12)
7b33f: 00 00
DBGPRINT(RT_DEBUG_TRACE,
7b341: 41 c6 84 24 86 a4 13 movb $0x0,0x13a486(%r12)
7b348: 00 00
7b34a: 41 c6 84 24 87 a4 13 movb $0x0,0x13a487(%r12)
7b351: 00 00
7b353: 49 c7 84 24 e0 a4 13 movq $0x0,0x13a4e0(%r12)
7b35a: 00 00 00 00 00
pCfg80211_ctrl->cfg80211MainDev.Cfg80211RegisterActionFrame = FALSE,
7b35f: 48 85 ff test %rdi,%rdi
7b362: 41 c6 84 24 d9 36 00 movb $0x0,0x36d9(%r12)
7b369: 00 00
pCfg80211_ctrl->cfg80211MainDev.Cfg80211ActionCount = 0;
7b36b: 74 11 je 7b37e <CFG80211DRV_IoctlHandle+0x28e>
7b36d: e8 00 00 00 00 callq 7b372 <CFG80211DRV_IoctlHandle+0x282>
pCfg80211_ctrl->cfg80211MainDev.Cfg80211RegisterProbeReqFrame = FALSE;
7b372: 49 c7 84 24 58 a3 13 movq $0x0,0x13a358(%r12)
7b379: 00 00 00 00 00
pCfg80211_ctrl->cfg80211MainDev.Cfg80211ProbeReqCount = 0;
7b37e: 49 8b bc 24 68 a3 13 mov 0x13a368(%r12),%rdi
7b385: 00
pAd->pCfg80211_CB = NULL;
7b386: 41 c6 84 24 60 a3 13 movb $0x0,0x13a360(%r12)
7b38d: 00 00
if (pCfg80211_ctrl->pCfg80211ChanList != NULL) {
7b38f: 41 c6 84 24 61 a3 13 movb $0x0,0x13a361(%r12)
7b396: 00 00
pAd->CommonCfg.HT_Disable = 0;
7b398: 48 85 ff test %rdi,%rdi
if (pCfg80211_ctrl->pCfg80211ChanList != NULL) {
7b39b: 74 11 je 7b3ae <CFG80211DRV_IoctlHandle+0x2be>
os_free_mem(pCfg80211_ctrl->pCfg80211ChanList);
7b39d: e8 00 00 00 00 callq 7b3a2 <CFG80211DRV_IoctlHandle+0x2b2>
pCfg80211_ctrl->pCfg80211ChanList = NULL;
7b3a2: 49 c7 84 24 68 a3 13 movq $0x0,0x13a368(%r12)
7b3a9: 00 00 00 00 00
if (pCfg80211_ctrl->pExtraIe) {
7b3ae: 41 c7 84 24 70 a3 13 movl $0x0,0x13a370(%r12)
7b3b5: 00 00 00 00 00
pCfg80211_ctrl->Cfg80211ChanListLen = 0;
7b3ba: 31 c0 xor %eax,%eax
7b3bc: e9 de fe ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
pCfg80211_ctrl->Cfg80211CurChanIndex = 0;
7b3c1: 41 0f b6 45 00 movzbl 0x0(%r13),%eax
7b3c6: 41 f6 84 24 03 98 13 testb $0x10,0x139803(%r12)
7b3cd: 00 10
os_free_mem(pCfg80211_ctrl->pExtraIe);
7b3cf: 41 88 84 24 dc a4 13 mov %al,0x13a4dc(%r12)
7b3d6: 00
pCfg80211_ctrl->pExtraIe = NULL;
7b3d7: 41 0f b6 45 01 movzbl 0x1(%r13),%eax
7b3dc: 41 88 84 24 dd a4 13 mov %al,0x13a4dd(%r12)
7b3e3: 00
pCfg80211_ctrl->ExtraIeLen = 0;
7b3e4: 0f 85 cc 0b 00 00 jne 7bfb6 <CFG80211DRV_IoctlHandle+0xec6>
return NDIS_STATUS_SUCCESS;
7b3ea: 8b 15 00 00 00 00 mov 0x0(%rip),%edx # 7b3f0 <CFG80211DRV_IoctlHandle+0x300>
7b3f0: 85 d2 test %edx,%edx
pAd->cfg80211_ctrl.Cfg80211_Alpha2[0] = pRegInfo->Alpha2[0];
7b3f2: 0f 84 a5 fe ff ff je 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
if (RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_START_UP)) {
7b3f8: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
pAd->cfg80211_ctrl.Cfg80211_Alpha2[0] = pRegInfo->Alpha2[0];
7b3ff: e8 00 00 00 00 callq 7b404 <CFG80211DRV_IoctlHandle+0x314>
7b404: 31 c0 xor %eax,%eax
7b406: e9 94 fe ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
pAd->cfg80211_ctrl.Cfg80211_Alpha2[1] = pRegInfo->Alpha2[1];
7b40b: 49 8b 84 24 50 32 00 mov 0x3250(%r12),%rax
7b412: 00
7b413: 25 81 00 00 00 and $0x81,%eax
if (RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_START_UP)) {
7b418: 48 3d 81 00 00 00 cmp $0x81,%rax
CFG80211DBG(RT_DEBUG_ERROR, ("crda> interface is down!\n"));
7b41e: 0f 84 06 0a 00 00 je 7be2a <CFG80211DRV_IoctlHandle+0xd3a>
7b424: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7b42b <CFG80211DRV_IoctlHandle+0x33b>
7b42b: 76 0e jbe 7b43b <CFG80211DRV_IoctlHandle+0x34b>
7b42d: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7b435 <CFG80211DRV_IoctlHandle+0x345>
7b434: 00
return NDIS_STATUS_SUCCESS;
7b435: 0f 84 46 10 00 00 je 7c481 <CFG80211DRV_IoctlHandle+0x1391>
if (OPSTATUS_TEST_FLAG(pAd, fOP_STATUS_INFRA_ON) &&
7b43b: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
7b442: 4c 89 e7 mov %r12,%rdi
7b445: 48 8d 5d 85 lea -0x7b(%rbp),%rbx
7b449: e8 00 00 00 00 callq 7b44e <CFG80211DRV_IoctlHandle+0x35e>
7b44e: 41 8b 45 20 mov 0x20(%r13),%eax
7b452: ba 20 00 00 00 mov $0x20,%edx
DBGPRINT(RT_DEBUG_TRACE, ("CFG80211: No Connection\n"));
7b457: 48 c7 45 85 00 00 00 movq $0x0,-0x7b(%rbp)
7b45e: 00
7b45f: 48 c7 45 8d 00 00 00 movq $0x0,-0x73(%rbp)
7b466: 00
7b467: 48 c7 45 95 00 00 00 movq $0x0,-0x6b(%rbp)
7b46e: 00
Set_NetworkType_Proc(pAd, "Infra");
7b46f: 48 c7 45 9d 00 00 00 movq $0x0,-0x63(%rbp)
7b476: 00
memset(&SSID, 0, sizeof(SSID));
7b477: c6 45 a5 00 movb $0x0,-0x5b(%rbp)
Set_NetworkType_Proc(pAd, "Infra");
7b47b: 83 f8 20 cmp $0x20,%eax
SSIDLen = pConnInfo->SsidLen;
7b47e: 48 0f 47 c2 cmova %rdx,%rax
memcpy(SSID, pConnInfo->pSsid, SSIDLen);
7b482: 49 8b 55 18 mov 0x18(%r13),%rdx
7b486: 83 f8 08 cmp $0x8,%eax
memset(&SSID, 0, sizeof(SSID));
7b489: 0f 83 b7 08 00 00 jae 7bd46 <CFG80211DRV_IoctlHandle+0xc56>
7b48f: a8 04 test $0x4,%al
7b491: 0f 85 d4 0d 00 00 jne 7c26b <CFG80211DRV_IoctlHandle+0x117b>
7b497: 85 c0 test %eax,%eax
7b499: 74 0d je 7b4a8 <CFG80211DRV_IoctlHandle+0x3b8>
7b49b: 0f b6 0a movzbl (%rdx),%ecx
7b49e: a8 02 test $0x2,%al
7b4a0: 88 0b mov %cl,(%rbx)
7b4a2: 0f 85 ae 0e 00 00 jne 7c356 <CFG80211DRV_IoctlHandle+0x1266>
7b4a8: 41 80 7d 30 00 cmpb $0x0,0x30(%r13)
memcpy(SSID, pConnInfo->pSsid, SSIDLen);
7b4ad: 0f 84 9b fc ff ff je 7b14e <CFG80211DRV_IoctlHandle+0x5e>
7b4b3: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7b4ba <CFG80211DRV_IoctlHandle+0x3ca>
7b4ba: 76 0e jbe 7b4ca <CFG80211DRV_IoctlHandle+0x3da>
7b4bc: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7b4c4 <CFG80211DRV_IoctlHandle+0x3d4>
7b4c3: 00
7b4c4: 0f 84 df 0f 00 00 je 7c4a9 <CFG80211DRV_IoctlHandle+0x13b9>
7b4ca: 41 80 8c 24 9e 2f 00 orb $0x80,0x2f9e(%r12)
7b4d1: 00 80
7b4d3: 4c 89 e7 mov %r12,%rdi
7b4d6: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
if (pConnInfo->bWpsConnection) {
7b4dd: e8 00 00 00 00 callq 7b4e2 <CFG80211DRV_IoctlHandle+0x3f2>
7b4e2: 4c 89 e7 mov %r12,%rdi
DBGPRINT(RT_DEBUG_TRACE, ("WPS Connection onGoing.....\n"));
7b4e5: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
7b4ec: e8 00 00 00 00 callq 7b4f1 <CFG80211DRV_IoctlHandle+0x401>
7b4f1: 48 89 de mov %rbx,%rsi
7b4f4: 4c 89 e7 mov %r12,%rdi
7b4f7: e8 00 00 00 00 callq 7b4fc <CFG80211DRV_IoctlHandle+0x40c>
pAd->StaCfg.wpa_supplicant_info.WpaSupplicantUP |= WPA_SUPPLICANT_ENABLE_WPS; /* Set_Wpa_Support(pAd, "3") /
7b4fc: e9 9c fd ff ff jmpq 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
7b501: 41 0f b6 5d 01 movzbl 0x1(%r13),%ebx
Set_AuthMode_Proc(pAd, "OPEN");
7b506: 45 0f b6 75 00 movzbl 0x0(%r13),%r14d
7b50b: 80 fb 06 cmp $0x6,%bl
7b50e: 0f 84 84 09 00 00 je 7be98 <CFG80211DRV_IoctlHandle+0xda8>
Set_EncrypType_Proc(pAd, "NONE");
7b514: 41 0f b6 45 02 movzbl 0x2(%r13),%eax
7b519: 3c 01 cmp $0x1,%al
7b51b: 0f 84 ba 0a 00 00 je 7bfdb <CFG80211DRV_IoctlHandle+0xeeb>
Set_SSID_Proc(pAd, (PSTRING)SSID);
7b521: 3c 02 cmp $0x2,%al
7b523: 0f 84 e1 0a 00 00 je 7c00a <CFG80211DRV_IoctlHandle+0xf1a>
7b529: 3c 03 cmp $0x3,%al
7b52b: 0f 84 34 0c 00 00 je 7c165 <CFG80211DRV_IoctlHandle+0x1075>
IfType = pChan->IfType;
7b531: 84 c0 test %al,%al
7b533: 75 1b jne 7b550 <CFG80211DRV_IoctlHandle+0x460>
7b535: 41 80 a4 24 ad 31 00 andb $0xf7,0x31ad(%r12)
7b53c: 00 f7
if (IfType != RT_CMD_80211_IFTYPE_MONITOR) {
7b53e: 41 80 a4 24 ae 31 00 andb $0xf9,0x31ae(%r12)
7b545: 00 f9
ChannelType = pChan->ChanType;
7b547: 41 c6 84 24 d9 36 00 movb $0x1,0x36d9(%r12)
7b54e: 00 01
if (ChannelType == RT_CMD_80211_CHANTYPE_HT20) {
7b550: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7b557 <CFG80211DRV_IoctlHandle+0x467>
} else if (ChannelType == RT_CMD_80211_CHANTYPE_HT40MINUS) {
7b557: 76 0e jbe 7b567 <CFG80211DRV_IoctlHandle+0x477>
} else if (ChannelType == RT_CMD_80211_CHANTYPE_HT40PLUS) {
7b559: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7b561 <CFG80211DRV_IoctlHandle+0x471>
7b560: 00
} else if (ChannelType == RT_CMD_80211_CHANTYPE_NOHT) {
7b561: 0f 84 18 0e 00 00 je 7c37f <CFG80211DRV_IoctlHandle+0x128f>
pAd->CommonCfg.RegTransmitSetting.field.BW = BW_20;
7b567: 4c 89 e7 mov %r12,%rdi
7b56a: e8 00 00 00 00 callq 7b56f <CFG80211DRV_IoctlHandle+0x47f>
pAd->CommonCfg.RegTransmitSetting.field.EXTCHA = EXTCHA_NONE;
7b56f: 41 0f b6 84 24 ae 31 movzbl 0x31ae(%r12),%eax
7b576: 00 00
pAd->CommonCfg.HT_Disable = 1;
7b578: 45 88 b4 24 48 31 00 mov %r14b,0x3148(%r12)
7b57f: 00
CFG80211DBG(RT_DEBUG_TRACE, ("80211> HT Disable = %d\n",
7b580: 45 88 b4 24 f5 41 01 mov %r14b,0x141f5(%r12)
7b587: 00
7b588: 83 e0 06 and $0x6,%eax
7b58b: 3c 06 cmp $0x6,%al
7b58d: 0f 84 f4 08 00 00 je 7be87 <CFG80211DRV_IoctlHandle+0xd97>
7b593: 41 8d 56 02 lea 0x2(%r14),%edx
SetCommonHT(pAd);
7b597: 3c 02 cmp $0x2,%al
7b599: 44 0f 44 f2 cmove %edx,%r14d
7b59d: 45 88 b4 24 49 31 00 mov %r14b,0x3149(%r12)
7b5a4: 00
if(pAd->CommonCfg.RegTransmitSetting.field.EXTCHA == EXTCHA_BELOW)
7b5a5: 41 0f b6 b4 24 ad 31 movzbl 0x31ad(%r12),%esi
7b5ac: 00 00
pAd->CommonCfg.Channel = ChanId;
7b5ae: 4c 89 e7 mov %r12,%rdi
pAd->MlmeAux.Channel = ChanId;
7b5b1: 40 c0 ee 03 shr $0x3,%sil
7b5b5: 83 e6 01 and $0x1,%esi
if(pAd->CommonCfg.RegTransmitSetting.field.EXTCHA == EXTCHA_BELOW)
7b5b8: e8 00 00 00 00 callq 7b5bd <CFG80211DRV_IoctlHandle+0x4cd>
7b5bd: 41 0f b6 b4 24 49 31 movzbl 0x3149(%r12),%esi
7b5c4: 00 00
pAd->CommonCfg.CentralChannel = pAd->CommonCfg.Channel + 2;
7b5c6: 31 d2 xor %edx,%edx
7b5c8: 4c 89 e7 mov %r12,%rdi
7b5cb: e8 00 00 00 00 callq 7b5d0 <CFG80211DRV_IoctlHandle+0x4e0>
7b5d0: 41 0f b6 b4 24 49 31 movzbl 0x3149(%r12),%esi
7b5d7: 00 00
bbp_set_bw(pAd, pAd->CommonCfg.RegTransmitSetting.field.BW);
7b5d9: 4c 89 e7 mov %r12,%rdi
7b5dc: e8 00 00 00 00 callq 7b5e1 <CFG80211DRV_IoctlHandle+0x4f1>
7b5e1: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7b5e8 <CFG80211DRV_IoctlHandle+0x4f8>
7b5e8: 76 0e jbe 7b5f8 <CFG80211DRV_IoctlHandle+0x508>
7b5ea: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7b5f2 <CFG80211DRV_IoctlHandle+0x502>
7b5f1: 00
AsicSwitchChannel(pAd, pAd->CommonCfg.CentralChannel,FALSE);
7b5f2: 0f 84 3e 0f 00 00 je 7c536 <CFG80211DRV_IoctlHandle+0x1446>
7b5f8: 80 fb 03 cmp $0x3,%bl
7b5fb: 0f 84 c8 07 00 00 je 7bdc9 <CFG80211DRV_IoctlHandle+0xcd9>
AsicLockChannel(pAd, pAd->CommonCfg.CentralChannel);
7b601: 80 fb 09 cmp $0x9,%bl
7b604: 0f 84 bf 07 00 00 je 7bdc9 <CFG80211DRV_IoctlHandle+0xcd9>
7b60a: 80 fb 02 cmp $0x2,%bl
7b60d: 0f 84 17 0a 00 00 je 7c02a <CFG80211DRV_IoctlHandle+0xf3a>
CFG80211DBG(RT_DEBUG_TRACE, ("80211> New CH = %d, New BW = %d with Ext[%d]\n",
7b613: 80 fb 01 cmp $0x1,%bl
7b616: 0f 84 e9 0b 00 00 je 7c205 <CFG80211DRV_IoctlHandle+0x1115>
7b61c: 80 fb 06 cmp $0x6,%bl
7b61f: 0f 85 78 fc ff ff jne 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
7b625: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
if (IfType == RT_CMD_80211_IFTYPE_AP || IfType == RT_CMD_80211_IFTYPE_P2P_GO) {
7b62c: 4c 89 e7 mov %r12,%rdi
7b62f: e8 00 00 00 00 callq 7b634 <CFG80211DRV_IoctlHandle+0x544>
7b634: 41 8b 55 04 mov 0x4(%r13),%edx
7b638: 31 c9 xor %ecx,%ecx
if ((IfType == RT_CMD_80211_IFTYPE_STATION) && (FlgIsChanged == TRUE)) {
7b63a: be 00 14 00 00 mov $0x1400,%esi
7b63f: 4c 89 e7 mov %r12,%rdi
7b642: e8 00 00 00 00 callq 7b647 <CFG80211DRV_IoctlHandle+0x557>
if (IfType == RT_CMD_80211_IFTYPE_ADHOC) {
7b647: 31 c0 xor %eax,%eax
7b649: e9 51 fc ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
if (IfType == RT_CMD_80211_IFTYPE_MONITOR) {
7b64e: 4d 89 ac 24 e0 a4 13 mov %r13,0x13a4e0(%r12)
7b655: 00
Set_NetworkType_Proc(pAd, "Monitor");
7b656: 31 c0 xor %eax,%eax
7b658: e9 42 fc ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
7b65d: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7b664 <CFG80211DRV_IoctlHandle+0x574>
RTMP_IO_WRITE32(pAd, RX_FILTR_CFG, pChan->MonFilterFlag);
7b664: 76 0e jbe 7b674 <CFG80211DRV_IoctlHandle+0x584>
7b666: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7b66e <CFG80211DRV_IoctlHandle+0x57e>
7b66d: 00
7b66e: 0f 84 56 0f 00 00 je 7c5ca <CFG80211DRV_IoctlHandle+0x14da>
7b674: 41 c6 84 24 e1 2f 00 movb $0x0,0x2fe1(%r12)
7b67b: 00 00
return NDIS_STATUS_SUCCESS;
7b67d: 41 c6 84 24 86 a4 13 movb $0x0,0x13a486(%r12)
7b684: 00 00
7b686: 31 c0 xor %eax,%eax
break;
7b688: 41 c6 84 24 88 a4 13 movb $0x0,0x13a488(%r12)
7b68f: 00 00
#endif /CONFIG_STA_SUPPORT/
static int CFG80211_reSetToDefault(void pAdCB)
{
PRTMP_ADAPTER pAd = (PRTMP_ADAPTER)pAdCB;
PCFG80211_CTRL pCfg80211_ctrl = &pAd->cfg80211_ctrl;
DBGPRINT(RT_DEBUG_TRACE, (" %s\n", FUNCTION));
7b691: 41 c6 84 24 87 a4 13 movb $0x0,0x13a487(%r12)
7b698: 00 00
7b69a: 41 c6 84 24 89 a4 13 movb $0x0,0x13a489(%r12)
7b6a1: 00 00
7b6a3: 41 c6 84 24 30 a4 13 movb $0x0,0x13a430(%r12)
7b6aa: 00 00
#ifdef CONFIG_STA_SUPPORT
/ Driver Internal Parm /
pAd->StaCfg.bAutoConnectByBssid = FALSE;
7b6ac: 41 c6 84 24 31 a4 13 movb $0x0,0x13a431(%r12)
7b6b3: 00 00
#endif /CONFIG_STA_SUPPORT/
pCfg80211_ctrl->cfg80211MainDev.Cfg80211RegisterProbeReqFrame = FALSE;
7b6b5: 41 c6 84 24 51 a3 13 movb $0x0,0x13a351(%r12)
7b6bc: 00 00
pCfg80211_ctrl->cfg80211MainDev.Cfg80211RegisterActionFrame = FALSE;
7b6be: e9 dc fb ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
pCfg80211_ctrl->cfg80211MainDev.Cfg80211ProbeReqCount = 0;
7b6c3: 41 0f b6 84 24 c0 19 movzbl 0x19c0(%r12),%eax
7b6ca: 00 00
pCfg80211_ctrl->cfg80211MainDev.Cfg80211ActionCount = 0;
7b6cc: 49 8d 55 10 lea 0x10(%r13),%rdx
7b6d0: be 4c 13 00 00 mov $0x134c,%esi
pCfg80211_ctrl->Cfg80211RocTimerInit = FALSE;
7b6d5: 4c 89 e7 mov %r12,%rdi
7b6d8: 41 88 45 00 mov %al,0x0(%r13)
pCfg80211_ctrl->Cfg80211RocTimerRunning = FALSE;
7b6dc: 41 0f b6 84 24 d6 31 movzbl 0x31d6(%r12),%eax
7b6e3: 00 00
pCfg80211_ctrl->FlgCfg80211Scanning = FALSE;
7b6e5: c0 e8 03 shr $0x3,%al
7b6e8: 83 e0 07 and $0x7,%eax
7b6eb: 41 88 45 01 mov %al,0x1(%r13)
7b6ef: 41 0f b6 84 24 13 36 movzbl 0x3613(%r12),%eax
7b6f6: 00 00
CFG80211_BANDINFO_FILL(pAd, pBandInfo);
7b6f8: 41 88 45 02 mov %al,0x2(%r13)
7b6fc: 41 0f b6 84 24 14 36 movzbl 0x3614(%r12),%eax
7b703: 00 00
7b705: 41 c7 45 04 00 00 00 movl $0x0,0x4(%r13)
7b70c: 00
7b70d: 41 88 45 03 mov %al,0x3(%r13)
7b711: 41 80 bc 24 da 30 00 cmpb $0x2,0x30da(%r12)
7b718: 00 02
7b71a: 41 c7 45 08 80 00 00 movl $0x80,0x8(%r13)
7b721: 00
7b722: 41 0f 94 45 14 sete 0x14(%r13)
7b727: 41 0f b7 84 24 ba 31 movzwl 0x31ba(%r12),%eax
7b72e: 00 00
7b730: 66 41 89 45 0c mov %ax,0xc(%r13)
7b735: 41 0f b7 84 24 bc 31 movzwl 0x31bc(%r12),%eax
7b73c: 00 00
7b73e: 41 c7 45 10 00 00 00 movl $0x0,0x10(%r13)
7b745: 00
7b746: 66 41 89 45 0e mov %ax,0xe(%r13)
7b74b: e8 00 00 00 00 callq 7b750 <CFG80211DRV_IoctlHandle+0x660>
7b750: 31 c0 xor %eax,%eax
7b752: e9 48 fb ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
7b757: 44 89 f2 mov %r14d,%edx
7b75a: 4c 89 ee mov %r13,%rsi
7b75d: 4c 89 e7 mov %r12,%rdi
7b760: e8 00 00 00 00 callq 7b765 <CFG80211DRV_IoctlHandle+0x675>
7b765: 31 c0 xor %eax,%eax
7b767: e9 33 fb ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
7b76c: 4c 89 ee mov %r13,%rsi
7b76f: 4c 89 e7 mov %r12,%rdi
7b772: e8 00 00 00 00 callq 7b777 <CFG80211DRV_IoctlHandle+0x687>
7b777: 3c 01 cmp $0x1,%al
7b779: 0f 95 c0 setne %al
7b77c: 0f b6 c0 movzbl %al,%eax
7b77f: e9 1b fb ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
break;
7b784: 49 83 fe 09 cmp $0x9,%r14
RTMP_CFG80211_VirtualIF_Remove(pAd, pData, Data);
7b788: 0f 85 0f fb ff ff jne 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
7b78e: 8b 05 00 00 00 00 mov 0x0(%rip),%eax # 7b794 <CFG80211DRV_IoctlHandle+0x6a4>
7b794: 85 c0 test %eax,%eax
return NDIS_STATUS_SUCCESS;
7b796: 0f 85 46 0e 00 00 jne 7c5e2 <CFG80211DRV_IoctlHandle+0x14f2>
if (CFG80211DRV_OpsVifAdd(pAd, pData) != TRUE)
7b79c: 41 80 bc 24 51 a3 13 cmpb $0x1,0x13a351(%r12)
7b7a3: 00 01
7b7a5: 0f 85 f2 fa ff ff jne 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
7b7ab: 49 8b bc 24 e0 a4 13 mov 0x13a4e0(%r12),%rdi
7b7b2: 00
7b7b3: be 01 00 00 00 mov $0x1,%esi
if (Data == NETDEV_GOING_DOWN) {
7b7b8: e8 00 00 00 00 callq 7b7bd <CFG80211DRV_IoctlHandle+0x6cd>
7b7bd: 41 c6 84 24 51 a3 13 movb $0x0,0x13a351(%r12)
7b7c4: 00 00
DBGPRINT(RT_DEBUG_ERROR,
7b7c6: 31 c0 xor %eax,%eax
7b7c8: e9 d2 fa ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
if (pAd->cfg80211_ctrl.FlgCfg80211Scanning == TRUE) {
7b7cd: 44 89 f6 mov %r14d,%esi
7b7d0: 4c 89 e7 mov %r12,%rdi
7b7d3: e8 00 00 00 00 callq 7b7d8 <CFG80211DRV_IoctlHandle+0x6e8>
7b7d8: 31 c0 xor %eax,%eax
7b7da: e9 c0 fa ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
CFG80211OS_ScanEnd(pAd->pCfg80211_CB, TRUE);
7b7df: 44 89 f6 mov %r14d,%esi
7b7e2: 4c 89 e7 mov %r12,%rdi
7b7e5: e8 00 00 00 00 callq 7b7ea <CFG80211DRV_IoctlHandle+0x6fa>
7b7ea: 31 c0 xor %eax,%eax
7b7ec: e9 ae fa ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
pAd->cfg80211_ctrl.FlgCfg80211Scanning = FALSE;
7b7f1: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7b7f8 <CFG80211DRV_IoctlHandle+0x708>
return NDIS_STATUS_SUCCESS;
7b7f8: 76 0e jbe 7b808 <CFG80211DRV_IoctlHandle+0x718>
7b7fa: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7b802 <CFG80211DRV_IoctlHandle+0x712>
7b801: 00
CFG80211DRV_OpsCancelRemainOnChannel(pAd, Data);
7b802: 0f 84 65 0d 00 00 je 7c56d <CFG80211DRV_IoctlHandle+0x147d>
return NDIS_STATUS_SUCCESS;
7b808: 45 88 b4 24 ec 20 00 mov %r14b,0x20ec(%r12)
7b80f: 00
CFG80211_setPowerMgmt(pAd, Data);
7b810: 31 c0 xor %eax,%eax
7b812: e9 88 fa ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
7b817: 41 0f b6 55 00 movzbl 0x0(%r13),%edx
break;
7b81c: 80 fa 01 cmp $0x1,%dl
7b81f: 0f 86 b8 06 00 00 jbe 7bedd <CFG80211DRV_IoctlHandle+0xded>
DBGPRINT(RT_DEBUG_TRACE, ("Set Sta Default Key: %d\n", Data));
7b825: 8b 05 00 00 00 00 mov 0x0(%rip),%eax # 7b82b <CFG80211DRV_IoctlHandle+0x73b>
7b82b: 49 8d 5d 01 lea 0x1(%r13),%rbx
7b82f: 83 f8 02 cmp $0x2,%eax
7b832: 76 0e jbe 7b842 <CFG80211DRV_IoctlHandle+0x752>
7b834: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7b83c <CFG80211DRV_IoctlHandle+0x74c>
7b83b: 00
pAd->StaCfg.wdev.DefaultKeyId = Data; / base 0 /
7b83c: 0f 84 9a 0c 00 00 je 7c4dc <CFG80211DRV_IoctlHandle+0x13ec>
return NDIS_STATUS_SUCCESS;
7b842: 41 0f b6 55 33 movzbl 0x33(%r13),%edx
if (pKeyInfo->KeyType == RT_CMD_80211_KEY_WEP40 ||
7b847: 48 89 9d 58 ff ff ff mov %rbx,-0xa8(%rbp)
7b84e: 89 95 64 ff ff ff mov %edx,-0x9c(%rbp)
7b854: 41 0f b6 55 35 movzbl 0x35(%r13),%edx
DBGPRINT(RT_DEBUG_TRACE, ("%s ==> %d, %d, %zx...\n",
7b859: 66 89 95 60 ff ff ff mov %dx,-0xa0(%rbp)
7b860: 41 8b 94 24 e0 20 00 mov 0x20e0(%r12),%edx
7b867: 00
7b868: 83 fa 04 cmp $0x4,%edx
7b86b: 0f 84 5b 07 00 00 je 7bfcc <CFG80211DRV_IoctlHandle+0xedc>
7b871: 83 fa 06 cmp $0x6,%edx
IoctlSec.KeyIdx = pKeyInfo->KeyId;
7b874: 0f 84 81 07 00 00 je 7bffb <CFG80211DRV_IoctlHandle+0xf0b>
IoctlSec.pData = pKeyInfo->KeyBuf;
7b87a: 41 80 7d 34 00 cmpb $0x0,0x34(%r13)
IoctlSec.KeyIdx = pKeyInfo->KeyId;
7b87f: 41 b8 02 00 00 00 mov $0x2,%r8d
IoctlSec.length = pKeyInfo->KeyLen;
7b885: 66 44 89 85 72 ff ff mov %r8w,-0x8e(%rbp)
7b88c: ff
7b88d: 0f 85 59 05 00 00 jne 7bdec <CFG80211DRV_IoctlHandle+0xcfc>
if (pAd->StaCfg.wdev.WepStatus == Ndis802_11Encryption2Enabled)
7b893: 41 8b 94 24 c8 21 00 mov 0x21c8(%r12),%edx
7b89a: 00
7b89b: 83 fa 04 cmp $0x4,%edx
7b89e: 0f 84 fe 08 00 00 je 7c1a2 <CFG80211DRV_IoctlHandle+0x10b2>
else if (pAd->StaCfg.wdev.WepStatus == Ndis802_11Encryption3Enabled)
7b8a4: 83 fa 06 cmp $0x6,%edx
7b8a7: 0f 84 3a 09 00 00 je 7c1e7 <CFG80211DRV_IoctlHandle+0x10f7>
if (pKeyInfo->bPairwise == FALSE)
7b8ad: 83 f8 02 cmp $0x2,%eax
IoctlSec.flags = RT_CMD_STA_IOCTL_SECURITY_ENABLED;
7b8b0: 76 0e jbe 7b8c0 <CFG80211DRV_IoctlHandle+0x7d0>
7b8b2: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7b8ba <CFG80211DRV_IoctlHandle+0x7ca>
7b8b9: 00
7b8ba: 0f 84 d2 0b 00 00 je 7c492 <CFG80211DRV_IoctlHandle+0x13a2>
if (pKeyInfo->bPairwise == FALSE)
7b8c0: bf 02 00 00 00 mov $0x2,%edi
if (pAd->StaCfg.GroupCipher == Ndis802_11Encryption2Enabled)
7b8c5: 66 89 bd 70 ff ff ff mov %di,-0x90(%rbp)
7b8cc: 4c 8d 85 58 ff ff ff lea -0xa8(%rbp),%r8
7b8d3: c7 04 24 00 01 00 00 movl $0x100,(%rsp)
else if (pAd->StaCfg.GroupCipher == Ndis802_11Encryption3Enabled)
7b8da: 45 31 c9 xor %r9d,%r9d
DBGPRINT(RT_DEBUG_TRACE, ("Install GTK: %d\n", IoctlSec.Alg));
7b8dd: 31 c9 xor %ecx,%ecx
7b8df: ba 1c a0 00 00 mov $0xa01c,%edx
7b8e4: 31 f6 xor %esi,%esi
7b8e6: 4c 89 e7 mov %r12,%rdi
7b8e9: e8 00 00 00 00 callq 7b8ee <CFG80211DRV_IoctlHandle+0x7fe>
7b8ee: 31 c0 xor %eax,%eax
IoctlSec.ext_flags = RT_CMD_STA_IOCTL_SECURTIY_EXT_GROUP_KEY;
7b8f0: e9 aa f9 ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
7b8f5: 41 f6 84 24 da 30 00 testb $0x18,0x30da(%r12)
7b8fc: 00 18
RTMP_STA_IoctlHandle(pAd, NULL, CMD_RTPRIV_IOCTL_STA_SIOCSIWENCODEEXT,
7b8fe: 48 c7 85 58 ff ff ff movq $0x0,-0xa8(%rbp)
7b905: 00 00 00 00
7b909: 0f 84 17 04 00 00 je 7bd26 <CFG80211DRV_IoctlHandle+0xc36>
7b90f: 41 0f b6 84 24 c1 aa movzbl 0xbaac1(%r12),%eax
7b916: 0b 00
7b918: c0 e8 05 shr $0x5,%al
7b91b: 0f b6 c0 movzbl %al,%eax
return NDIS_STATUS_SUCCESS;
7b91e: 83 f8 01 cmp $0x1,%eax
7b921: 0f 8e ff 03 00 00 jle 7bd26 <CFG80211DRV_IoctlHandle+0xc36>
if ((!WMODE_CAP_N(pAd->CommonCfg.PhyMode)) ||
7b927: 45 0f b7 b4 24 c0 aa movzwl 0xbaac0(%r12),%r14d
7b92e: 0b 00
ULONG DataRate = 0;
7b930: 44 89 f3 mov %r14d,%ebx
7b933: 83 e3 3f and $0x3f,%ebx
7b936: 89 df mov %ebx,%edi
7b938: e8 00 00 00 00 callq 7b93d <CFG80211DRV_IoctlHandle+0x84d>
if ((!WMODE_CAP_N(pAd->CommonCfg.PhyMode)) ||
7b93d: 48 8d bd 58 ff ff ff lea -0xa8(%rbp),%rdi
(pAd->MacTab.Content[BSSID_WCID].HTPhyMode.field.MODE <= MODE_OFDM)) {
7b944: 44 89 f1 mov %r14d,%ecx
7b947: 44 89 f2 mov %r14d,%edx
7b94a: 44 89 f6 mov %r14d,%esi
7b94d: 66 c1 e9 07 shr $0x7,%cx
if ((!WMODE_CAP_N(pAd->CommonCfg.PhyMode)) ||
7b951: 66 c1 ea 09 shr $0x9,%dx
7b955: 66 c1 ee 0d shr $0xd,%si
PhyInfo.word = pAd->MacTab.Content[BSSID_WCID].HTPhyMode.word;
7b959: 83 e1 03 and $0x3,%ecx
7b95c: 83 e2 01 and $0x1,%edx
7b95f: 48 89 3c 24 mov %rdi,(%rsp)
newRateGetAntenna(PhyInfo.field.MCS),&DataRate);
7b963: 44 0f b6 c8 movzbl %al,%r9d
7b967: 40 0f b6 f6 movzbl %sil,%esi
7b96b: 41 89 d8 mov %ebx,%r8d
RtmpDrvRateGet(pAd, PhyInfo.field.MODE, PhyInfo.field.ShortGI,
7b96e: 4c 89 e7 mov %r12,%rdi
7b971: e8 00 00 00 00 callq 7b976 <CFG80211DRV_IoctlHandle+0x886>
PhyInfo.field.BW,PhyInfo.field.MCS,
7b976: 48 ba db 34 b6 d7 82 movabs $0x431bde82d7b634db,%rdx
7b97d: de 1b 43
7b980: 48 89 d0 mov %rdx,%rax
RtmpDrvRateGet(pAd, PhyInfo.field.MODE, PhyInfo.field.ShortGI,
7b983: 48 f7 a5 58 ff ff ff mulq -0xa8(%rbp)
7b98a: 44 89 f0 mov %r14d,%eax
7b98d: 0f b6 c4 movzbl %ah,%eax
7b990: 89 c1 mov %eax,%ecx
7b992: 83 e1 c0 and $0xffffffc0,%ecx
7b995: 48 c1 ea 12 shr $0x12,%rdx
7b999: 80 f9 40 cmp $0x40,%cl
7b99c: 48 89 95 58 ff ff ff mov %rdx,-0xa8(%rbp)
7b9a3: 0f 85 ea 03 00 00 jne 7bd93 <CFG80211DRV_IoctlHandle+0xca3>
DataRate /= 2;
7b9a9: 66 41 f7 c6 80 01 test $0x180,%r14w
7b9af: 74 05 je 7b9b6 <CFG80211DRV_IoctlHandle+0x8c6>
7b9b1: 41 83 4d 10 02 orl $0x2,0x10(%r13)
7b9b6: a8 02 test $0x2,%al
7b9b8: 74 05 je 7b9bf <CFG80211DRV_IoctlHandle+0x8cf>
if ((PhyInfo.field.MODE == MODE_HTMIX) ||
7b9ba: 41 83 4d 10 04 orl $0x4,0x10(%r13)
7b9bf: 41 89 5d 14 mov %ebx,0x14(%r13)
7b9c3: 49 8d b4 24 dc 23 00 lea 0x23dc(%r12),%rsi
7b9ca: 00
7b9cb: 4c 89 e7 mov %r12,%rdi
DataRate /= 2;
7b9ce: e8 00 00 00 00 callq 7b9d3 <CFG80211DRV_IoctlHandle+0x8e3>
if ((PhyInfo.field.MODE == MODE_HTMIX) ||
7b9d3: 0f be c0 movsbl %al,%eax
7b9d6: 41 89 45 18 mov %eax,0x18(%r13)
if (PhyInfo.field.BW)
7b9da: 31 c0 xor %eax,%eax
7b9dc: e9 be f8 ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
pIbssInfo->TxRateFlags |= RT_CMD_80211_TXRATE_BW_40;
7b9e1: bf 70 06 00 00 mov $0x670,%edi
if (PhyInfo.field.ShortGI)
7b9e6: 41 c6 84 24 99 21 00 movb $0x0,0x2199(%r12)
7b9ed: 00 00
pIbssInfo->TxRateMCS = PhyInfo.field.MCS;
7b9ef: 41 c6 84 24 52 a3 13 movb $0x0,0x13a352(%r12)
7b9f6: 00 00
RSSI = RTMPAvgRssi(pAd, &pAd->StaCfg.RssiSample);
7b9f8: 41 c6 84 24 f0 41 01 movb $0x20,0x141f0(%r12)
7b9ff: 00 20
7ba01: 49 c7 84 24 d0 41 01 movq $0x0,0x141d0(%r12)
7ba08: 00 00 00 00 00
return NDIS_STATUS_SUCCESS;
7ba0d: 49 c7 84 24 d8 41 01 movq $0x0,0x141d8(%r12)
7ba14: 00 00 00 00 00
pAd->StaCfg.bAutoReconnect = FALSE;
7ba19: 49 c7 84 24 e0 41 01 movq $0x0,0x141e0(%r12)
7ba20: 00 00 00 00 00
pAd->cfg80211_ctrl.FlgCfg80211Connecting = FALSE;
7ba25: 49 c7 84 24 e8 41 01 movq $0x0,0x141e8(%r12)
7ba2c: 00 00 00 00 00
NdisZeroMemory(pAd->MlmeAux.AutoReconnectSsid, pAd->MlmeAux.AutoReconnectSsidLen);
7ba31: e8 00 00 00 00 callq 7ba36 <CFG80211DRV_IoctlHandle+0x946>
7ba36: 48 89 c3 mov %rax,%rbx
7ba39: 41 8b 84 24 40 31 00 mov 0x3140(%r12),%eax
7ba40: 00
7ba41: 41 b9 03 00 00 00 mov $0x3,%r9d
7ba47: 66 44 89 4d 82 mov %r9w,-0x7e(%rbp)
7ba4c: 48 89 de mov %rbx,%rsi
7ba4f: 4c 89 e7 mov %r12,%rdi
7ba52: 89 85 7c ff ff ff mov %eax,-0x84(%rbp)
7ba58: 41 0f b7 84 24 44 31 movzwl 0x3144(%r12),%eax
7ba5f: 00 00
pMsgElem = os_alloc_mem(sizeof(MLME_QUEUE_ELEM));
7ba61: 48 c7 83 50 06 00 00 movq $0x8,0x650(%rbx)
7ba68: 08 00 00 00
COPY_MAC_ADDR(DeAuthReq.Addr, pAd->CommonCfg.Bssid);
7ba6c: 66 89 45 80 mov %ax,-0x80(%rbp)
7ba70: 48 8b 85 7c ff ff ff mov -0x84(%rbp),%rax
DeAuthReq.Reason = REASON_DEAUTH_STA_LEAVING;
7ba77: 48 89 03 mov %rax,(%rbx)
7ba7a: e8 00 00 00 00 callq 7ba7f <CFG80211DRV_IoctlHandle+0x98f>
MlmeDeauthReqAction(pAd, pMsgElem);
7ba7f: 48 89 df mov %rbx,%rdi
COPY_MAC_ADDR(DeAuthReq.Addr, pAd->CommonCfg.Bssid);
7ba82: e8 00 00 00 00 callq 7ba87 <CFG80211DRV_IoctlHandle+0x997>
7ba87: 31 f6 xor %esi,%esi
7ba89: 4c 89 e7 mov %r12,%rdi
7ba8c: e8 00 00 00 00 callq 7ba91 <CFG80211DRV_IoctlHandle+0x9a1>
pMsgElem->MsgLen = sizeof(MLME_DEAUTH_REQ_STRUCT);
7ba91: 31 c0 xor %eax,%eax
7ba93: e9 07 f8 ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
7ba98: 41 c6 84 24 99 21 00 movb $0x1,0x2199(%r12)
7ba9f: 00 01
NdisMoveMemory(pMsgElem->Msg, &DeAuthReq, sizeof(MLME_DEAUTH_REQ_STRUCT));
7baa1: 41 8b 45 00 mov 0x0(%r13),%eax
7baa5: 4c 89 e7 mov %r12,%rdi
7baa8: 66 41 89 84 24 46 31 mov %ax,0x3146(%r12)
7baaf: 00 00
os_free_mem(pMsgElem);
7bab1: 49 8b 75 08 mov 0x8(%r13),%rsi
7bab5: e8 00 00 00 00 callq 7baba <CFG80211DRV_IoctlHandle+0x9ca>
LinkDown(pAd, FALSE);
7baba: 31 c0 xor %eax,%eax
7babc: e9 de f7 ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
return NDIS_STATUS_SUCCESS;
7bac1: 41 0f b6 f6 movzbl %r14b,%esi
7bac5: 4c 89 e7 mov %r12,%rdi
pAd->StaCfg.bAutoReconnect = TRUE;
7bac8: e8 00 00 00 00 callq 7bacd <CFG80211DRV_IoctlHandle+0x9dd>
7bacd: 3c 01 cmp $0x1,%al
7bacf: 0f 95 c0 setne %al
pAd->CommonCfg.BeaconPeriod = pIbssInfo->BeaconInterval;
7bad2: 0f b6 c0 movzbl %al,%eax
Set_SSID_Proc(pAd, (PSTRING)pIbssInfo->pSsid);
7bad5: e9 c5 f7 ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
pAd->CommonCfg.BeaconPeriod = pIbssInfo->BeaconInterval;
7bada: 4c 89 ee mov %r13,%rsi
7badd: 4c 89 e7 mov %r12,%rdi
7bae0: e8 00 00 00 00 callq 7bae5 <CFG80211DRV_IoctlHandle+0x9f5>
Set_SSID_Proc(pAd, (PSTRING)pIbssInfo->pSsid);
7bae5: 3c 01 cmp $0x1,%al
7bae7: 0f 95 c0 setne %al
return NDIS_STATUS_SUCCESS;
7baea: 0f b6 c0 movzbl %al,%eax
7baed: e9 ad f7 ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
if (CFG80211DRV_OpsScanCheckStatus(pAd, Data) != TRUE)
7baf2: 44 89 f6 mov %r14d,%esi
7baf5: 4c 89 e7 mov %r12,%rdi
7baf8: e8 00 00 00 00 callq 7bafd <CFG80211DRV_IoctlHandle+0xa0d>
7bafd: 31 c0 xor %eax,%eax
7baff: e9 9b f7 ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
7bb04: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7bb0b <CFG80211DRV_IoctlHandle+0xa1b>
if (CFG80211DRV_OpsChgVirtualInf(pAd, pData) != TRUE)
7bb0b: 0f 86 23 02 00 00 jbe 7bd34 <CFG80211DRV_IoctlHandle+0xc44>
7bb11: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7bb19 <CFG80211DRV_IoctlHandle+0xa29>
7bb18: 00
7bb19: 0f 84 f8 08 00 00 je 7c417 <CFG80211DRV_IoctlHandle+0x1327>
7bb1f: 41 83 7d 04 ff cmpl $0xffffffff,0x4(%r13)
CFG80211_ScanStatusLockInit(pAd, Data);
7bb24: 74 24 je 7bb4a <CFG80211DRV_IoctlHandle+0xa5a>
7bb26: 41 8b 45 04 mov 0x4(%r13),%eax
7bb2a: 89 c2 mov %eax,%edx
7bb2c: 85 d2 test %edx,%edx
return NDIS_STATUS_SUCCESS;
7bb2e: 4c 89 e7 mov %r12,%rdi
break;
7bb31: 40 0f 95 c6 setne %sil
CFG80211DBG(RT_DEBUG_TRACE, ("%s\n", FUNCTION));
7bb35: 40 0f b6 c6 movzbl %sil,%eax
7bb39: 40 0f b6 f6 movzbl %sil,%esi
7bb3d: 49 89 84 24 f0 31 00 mov %rax,0x31f0(%r12)
7bb44: 00
7bb45: e8 00 00 00 00 callq 7bb4a <CFG80211DRV_IoctlHandle+0xa5a>
7bb4a: 41 8b 55 00 mov 0x0(%r13),%edx
7bb4e: 83 fa ff cmp $0xffffffff,%edx
if (pBssInfo->use_short_preamble != -1) {
7bb51: 74 30 je 7bb83 <CFG80211DRV_IoctlHandle+0xa93>
7bb53: 31 c0 xor %eax,%eax
7bb55: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7bb5c <CFG80211DRV_IoctlHandle+0xa6c>
Rt802_11PreambleLong : Rt802_11PreambleShort);
7bb5c: 0f 86 3d f7 ff ff jbe 7b29f <CFG80211DRV_IoctlHandle+0x1af>
7bb62: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7bb6a <CFG80211DRV_IoctlHandle+0xa7a>
7bb69: 00
MlmeSetTxPreamble(pAd, (USHORT)pAd->CommonCfg.TxPreamble);
7bb6a: 0f 85 2d f7 ff ff jne 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
Rt802_11PreambleLong : Rt802_11PreambleShort);
7bb70: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
MlmeSetTxPreamble(pAd, (USHORT)pAd->CommonCfg.TxPreamble);
7bb77: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
if (pBssInfo->use_cts_prot != -1) {
7bb7e: e8 00 00 00 00 callq 7bb83 <CFG80211DRV_IoctlHandle+0xa93>
return NDIS_STATUS_SUCCESS;
7bb83: 41 8b 55 08 mov 0x8(%r13),%edx
CFG80211DBG(RT_DEBUG_TRACE,
7bb87: 83 fa ff cmp $0xffffffff,%edx
7bb8a: 0f 84 0d f7 ff ff je 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
7bb90: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7bb97 <CFG80211DRV_IoctlHandle+0xaa7>
7bb97: 0f 86 00 f7 ff ff jbe 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
7bb9d: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7bba5 <CFG80211DRV_IoctlHandle+0xab5>
7bba4: 00
7bba5: 0f 85 f2 f6 ff ff jne 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
7bbab: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
7bbb2: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
if (pBssInfo->use_short_slot_time != -1) {
7bbb9: e8 00 00 00 00 callq 7bbbe <CFG80211DRV_IoctlHandle+0xace>
7bbbe: 31 c0 xor %eax,%eax
CFG80211DBG(RT_DEBUG_TRACE,
7bbc0: e9 da f6 ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
7bbc5: 45 84 f6 test %r14b,%r14b
7bbc8: 41 0f b6 84 24 89 a4 movzbl 0x13a489(%r12),%eax
7bbcf: 13 00
7bbd1: 0f 84 e2 01 00 00 je 7bdb9 <CFG80211DRV_IoctlHandle+0xcc9>
7bbd7: 83 c0 01 add $0x1,%eax
7bbda: 41 88 84 24 89 a4 13 mov %al,0x13a489(%r12)
7bbe1: 00
7bbe2: 84 c0 test %al,%al
7bbe4: 0f 8e dc 02 00 00 jle 7bec6 <CFG80211DRV_IoctlHandle+0xdd6>
7bbea: 41 c6 84 24 88 a4 13 movb $0x1,0x13a488(%r12)
7bbf1: 00 01
return NDIS_STATUS_SUCCESS;
7bbf3: 83 3d 00 00 00 00 03 cmpl $0x3,0x0(%rip) # 7bbfa <CFG80211DRV_IoctlHandle+0xb0a>
pCfg80211_ctrl->cfg80211MainDev.Cfg80211ActionCount++;
7bbfa: 0f 86 9d f6 ff ff jbe 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
7bc00: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7bc08 <CFG80211DRV_IoctlHandle+0xb18>
7bc07: 00
7bc08: 0f 85 8f f6 ff ff jne 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
7bc0e: 41 0f be 8c 24 89 a4 movsbl 0x13a489(%r12),%ecx
7bc15: 13 00
if (pCfg80211_ctrl->cfg80211MainDev.Cfg80211ActionCount > 0) {
7bc17: 41 0f b6 94 24 88 a4 movzbl 0x13a488(%r12),%edx
7bc1e: 13 00
pCfg80211_ctrl->cfg80211MainDev.Cfg80211RegisterActionFrame = TRUE;
7bc20: 41 0f b6 f6 movzbl %r14b,%esi
DBGPRINT(RT_DEBUG_INFO,
7bc24: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7bc2b: e8 00 00 00 00 callq 7bc30 <CFG80211DRV_IoctlHandle+0xb40>
7bc30: 31 c0 xor %eax,%eax
7bc32: e9 68 f6 ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
7bc37: 41 0f b6 d6 movzbl %r14b,%edx
7bc3b: 4c 89 ee mov %r13,%rsi
7bc3e: 4c 89 e7 mov %r12,%rdi
7bc41: e8 00 00 00 00 callq 7bc46 <CFG80211DRV_IoctlHandle+0xb56>
7bc46: 0f b6 c0 movzbl %al,%eax
7bc49: e9 51 f6 ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
7bc4e: 4c 89 f2 mov %r14,%rdx
CFG80211DRV_OpsMgmtFrameActionRegister(pAd, pData, Data);
7bc51: 4c 89 ee mov %r13,%rsi
DBGPRINT(RT_DEBUG_INFO,
7bc54: 4c 89 e7 mov %r12,%rdi
7bc57: e8 00 00 00 00 callq 7bc5c <CFG80211DRV_IoctlHandle+0xb6c>
7bc5c: 31 c0 xor %eax,%eax
7bc5e: e9 3c f6 ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
return NDIS_STATUS_SUCCESS;
7bc63: 4c 89 f6 mov %r14,%rsi
7bc66: 4c 89 e7 mov %r12,%rdi
return CFG80211DRV_OpsScanSetSpecifyChannel(pAd,pData, Data);
7bc69: e8 00 00 00 00 callq 7bc6e <CFG80211DRV_IoctlHandle+0xb7e>
7bc6e: 31 c0 xor %eax,%eax
7bc70: e9 2a f6 ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
7bc75: 45 84 f6 test %r14b,%r14b
7bc78: 41 0f b6 84 24 87 a4 movzbl 0x13a487(%r12),%eax
7bc7f: 13 00
CFG80211_SendMgmtFrame(pAd, pData, Data);
7bc81: 0f 84 22 01 00 00 je 7bda9 <CFG80211DRV_IoctlHandle+0xcb9>
7bc87: 83 c0 01 add $0x1,%eax
7bc8a: 41 88 84 24 87 a4 13 mov %al,0x13a487(%r12)
7bc91: 00
break;
7bc92: 84 c0 test %al,%al
CFG80211_SwitchTxChannel(pAd, Data);
7bc94: 0f 8e 15 02 00 00 jle 7beaf <CFG80211DRV_IoctlHandle+0xdbf>
7bc9a: 41 c6 84 24 86 a4 13 movb $0x1,0x13a486(%r12)
7bca1: 00 01
break;
7bca3: 83 3d 00 00 00 00 03 cmpl $0x3,0x0(%rip) # 7bcaa <CFG80211DRV_IoctlHandle+0xbba>
pCfg80211_ctrl->cfg80211MainDev.Cfg80211ProbeReqCount++;
7bcaa: 0f 86 ed f5 ff ff jbe 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
7bcb0: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7bcb8 <CFG80211DRV_IoctlHandle+0xbc8>
7bcb7: 00
7bcb8: 0f 85 df f5 ff ff jne 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
7bcbe: 41 0f be 8c 24 87 a4 movsbl 0x13a487(%r12),%ecx
7bcc5: 13 00
if (pCfg80211_ctrl->cfg80211MainDev.Cfg80211ProbeReqCount > 0) {
7bcc7: 41 0f b6 94 24 86 a4 movzbl 0x13a486(%r12),%edx
7bcce: 13 00
pCfg80211_ctrl->cfg80211MainDev.Cfg80211RegisterProbeReqFrame = TRUE;
7bcd0: 41 0f b6 f6 movzbl %r14b,%esi
DBGPRINT(RT_DEBUG_INFO, ("[%d] pAd->Cfg80211RegisterProbeReqFrame=%d[%d]\n",
7bcd4: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7bcdb: e8 00 00 00 00 callq 7bce0 <CFG80211DRV_IoctlHandle+0xbf0>
7bce0: 31 c0 xor %eax,%eax
7bce2: e9 b8 f5 ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
7bce7: 44 89 f2 mov %r14d,%edx
7bcea: 4c 89 ee mov %r13,%rsi
7bced: 4c 89 e7 mov %r12,%rdi
7bcf0: e8 00 00 00 00 callq 7bcf5 <CFG80211DRV_IoctlHandle+0xc05>
7bcf5: 31 c0 xor %eax,%eax
7bcf7: e9 a3 f5 ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
7bcfc: b8 01 00 00 00 mov $0x1,%eax
CFG80211DRV_OpsMgmtFrameProbeRegister(pAd, pData, Data);
7bd01: e9 99 f5 ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
DBGPRINT(RT_DEBUG_INFO, ("[%d] pAd->Cfg80211RegisterProbeReqFrame=%d[%d]\n",
7bd06: 49 89 c8 mov %rcx,%r8
7bd09: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
return NDIS_STATUS_SUCCESS;
7bd10: 48 89 d1 mov %rdx,%rcx
7bd13: 89 f2 mov %esi,%edx
7bd15: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
CFG80211DRV_OpsRemainOnChannel(pAd, pData, Data);
7bd1c: e8 00 00 00 00 callq 7bd21 <CFG80211DRV_IoctlHandle+0xc31>
7bd21: e9 12 f4 ff ff jmpq 7b138 <CFG80211DRV_IoctlHandle+0x48>
return NDIS_STATUS_SUCCESS;
7bd26: 45 0f b7 b4 24 12 21 movzwl 0x2112(%r12),%r14d
7bd2d: 00 00
return NDIS_STATUS_FAILURE;
7bd2f: e9 fc fb ff ff jmpq 7b930 <CFG80211DRV_IoctlHandle+0x840>
7bd34: 41 8b 55 04 mov 0x4(%r13),%edx
DBGPRINT(RT_DEBUG_TRACE,
7bd38: 83 fa ff cmp $0xffffffff,%edx
7bd3b: 0f 85 eb fd ff ff jne 7bb2c <CFG80211DRV_IoctlHandle+0xa3c>
7bd41: e9 04 fe ff ff jmpq 7bb4a <CFG80211DRV_IoctlHandle+0xa5a>
7bd46: 48 8b 0a mov (%rdx),%rcx
7bd49: 48 89 4d 85 mov %rcx,-0x7b(%rbp)
7bd4d: 89 c1 mov %eax,%ecx
7bd4f: 48 8b 74 0a f8 mov -0x8(%rdx,%rcx,1),%rsi
7bd54: 48 89 74 0b f8 mov %rsi,-0x8(%rbx,%rcx,1)
PhyInfo.word = pAd->StaCfg.wdev.HTPhyMode.word;
7bd59: 48 8d 4b 08 lea 0x8(%rbx),%rcx
7bd5d: 48 89 de mov %rbx,%rsi
7bd60: 48 83 e1 f8 and $0xfffffffffffffff8,%rcx
if (pBssInfo->use_short_preamble != -1) {
7bd64: 48 29 ce sub %rcx,%rsi
7bd67: 01 f0 add %esi,%eax
7bd69: 48 29 f2 sub %rsi,%rdx
7bd6c: 83 e0 f8 and $0xfffffff8,%eax
7bd6f: 83 f8 08 cmp $0x8,%eax
7bd72: 0f 82 30 f7 ff ff jb 7b4a8 <CFG80211DRV_IoctlHandle+0x3b8>
memcpy(SSID, pConnInfo->pSsid, SSIDLen);
7bd78: 83 e0 f8 and $0xfffffff8,%eax
7bd7b: 31 f6 xor %esi,%esi
7bd7d: 89 f7 mov %esi,%edi
7bd7f: 83 c6 08 add $0x8,%esi
7bd82: 4c 8b 04 3a mov (%rdx,%rdi,1),%r8
7bd86: 39 c6 cmp %eax,%esi
7bd88: 4c 89 04 39 mov %r8,(%rcx,%rdi,1)
7bd8c: 72 ef jb 7bd7d <CFG80211DRV_IoctlHandle+0xc8d>
7bd8e: e9 15 f7 ff ff jmpq 7b4a8 <CFG80211DRV_IoctlHandle+0x3b8>
7bd93: 8d 04 92 lea (%rdx,%rdx,4),%eax
7bd96: 41 c7 45 10 01 00 00 movl $0x1,0x10(%r13)
7bd9d: 00
7bd9e: 01 c0 add %eax,%eax
7bda0: 41 89 45 14 mov %eax,0x14(%r13)
7bda4: e9 1a fc ff ff jmpq 7b9c3 <CFG80211DRV_IoctlHandle+0x8d3>
7bda9: 83 e8 01 sub $0x1,%eax
7bdac: 41 88 84 24 87 a4 13 mov %al,0x13a487(%r12)
7bdb3: 00
7bdb4: e9 d9 fe ff ff jmpq 7bc92 <CFG80211DRV_IoctlHandle+0xba2>
7bdb9: 83 e8 01 sub $0x1,%eax
7bdbc: 41 88 84 24 89 a4 13 mov %al,0x13a489(%r12)
7bdc3: 00
pIbssInfo->TxRateMCS = DataRate10; / unit: 100kbps /
7bdc4: e9 19 fe ff ff jmpq 7bbe2 <CFG80211DRV_IoctlHandle+0xaf2>
pIbssInfo->TxRateFlags = RT_CMD_80211_TXRATE_LEGACY;
7bdc9: 44 8b 1d 00 00 00 00 mov 0x0(%rip),%r11d # 7bdd0 <CFG80211DRV_IoctlHandle+0xce0>
pIbssInfo->TxRateMCS = DataRate10; /* unit: 100kbps */
7bdd0: 45 85 db test %r11d,%r11d
7bdd3: 0f 84 c4 f4 ff ff je 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
pCfg80211_ctrl->cfg80211MainDev.Cfg80211ProbeReqCount--;
7bdd9: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7bde0: e8 00 00 00 00 callq 7bde5 <CFG80211DRV_IoctlHandle+0xcf5>
7bde5: 31 c0 xor %eax,%eax
7bde7: e9 b3 f4 ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
pCfg80211_ctrl->cfg80211MainDev.Cfg80211ActionCount--;
7bdec: 41 8b 94 24 cc 21 00 mov 0x21cc(%r12),%edx
7bdf3: 00
7bdf4: 83 fa 04 cmp $0x4,%edx
7bdf7: 0f 84 96 03 00 00 je 7c193 <CFG80211DRV_IoctlHandle+0x10a3>
CFG80211DBG(RT_DEBUG_ERROR, ("80211> Set the channel in AP Mode\n"));
7bdfd: 83 fa 06 cmp $0x6,%edx
7be00: 0f 84 f0 03 00 00 je 7c1f6 <CFG80211DRV_IoctlHandle+0x1106>
7be06: 83 f8 02 cmp $0x2,%eax
7be09: 76 0e jbe 7be19 <CFG80211DRV_IoctlHandle+0xd29>
7be0b: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7be13 <CFG80211DRV_IoctlHandle+0xd23>
7be12: 00
7be13: 0f 84 79 07 00 00 je 7c592 <CFG80211DRV_IoctlHandle+0x14a2>
return NDIS_STATUS_SUCCESS;
7be19: be 01 00 00 00 mov $0x1,%esi
if (pAd->StaCfg.PairCipher == Ndis802_11Encryption2Enabled)
7be1e: 66 89 b5 70 ff ff ff mov %si,-0x90(%rbp)
7be25: e9 a2 fa ff ff jmpq 7b8cc <CFG80211DRV_IoctlHandle+0x7dc>
7be2a: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7be31 <CFG80211DRV_IoctlHandle+0xd41>
else if (pAd->StaCfg.PairCipher == Ndis802_11Encryption3Enabled)
7be31: 0f 86 04 f6 ff ff jbe 7b43b <CFG80211DRV_IoctlHandle+0x34b>
DBGPRINT(RT_DEBUG_TRACE, ("Install PTK: %d\n", IoctlSec.Alg));
7be37: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7be3f <CFG80211DRV_IoctlHandle+0xd4f>
7be3e: 00
7be3f: 0f 85 f6 f5 ff ff jne 7b43b <CFG80211DRV_IoctlHandle+0x34b>
7be45: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
IoctlSec.ext_flags = RT_CMD_STA_IOCTL_SECURTIY_EXT_SET_TX_KEY;
7be4c: e8 00 00 00 00 callq 7be51 <CFG80211DRV_IoctlHandle+0xd61>
7be51: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7be58 <CFG80211DRV_IoctlHandle+0xd68>
7be58: 0f 86 dd f5 ff ff jbe 7b43b <CFG80211DRV_IoctlHandle+0x34b>
DBGPRINT(RT_DEBUG_TRACE,
7be5e: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7be66 <CFG80211DRV_IoctlHandle+0xd76>
7be65: 00
7be66: 0f 85 cf f5 ff ff jne 7b43b <CFG80211DRV_IoctlHandle+0x34b>
7be6c: 4c 89 ea mov %r13,%rdx
7be6f: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
7be76: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7be7d: e8 00 00 00 00 callq 7be82 <CFG80211DRV_IoctlHandle+0xd92>
DBGPRINT(RT_DEBUG_TRACE, ("============================%s: %p\n", FUNCTION, pData));
7be82: e9 b4 f5 ff ff jmpq 7b43b <CFG80211DRV_IoctlHandle+0x34b>
7be87: 41 83 ee 02 sub $0x2,%r14d
7be8b: 45 88 b4 24 49 31 00 mov %r14b,0x3149(%r12)
7be92: 00
7be93: e9 0d f7 ff ff jmpq 7b5a5 <CFG80211DRV_IoctlHandle+0x4b5>
7be98: 41 c6 84 24 d9 36 00 movb $0x0,0x36d9(%r12)
7be9f: 00 00
7bea1: 41 80 8c 24 ad 31 00 orb $0x8,0x31ad(%r12)
7bea8: 00 08
7beaa: e9 b8 f6 ff ff jmpq 7b567 <CFG80211DRV_IoctlHandle+0x477>
7beaf: 41 c6 84 24 86 a4 13 movb $0x0,0x13a486(%r12)
7beb6: 00 00
pAd->CommonCfg.CentralChannel = pAd->CommonCfg.Channel - 2;
7beb8: 41 c6 84 24 87 a4 13 movb $0x0,0x13a487(%r12)
7bebf: 00 00
7bec1: e9 dd fd ff ff jmpq 7bca3 <CFG80211DRV_IoctlHandle+0xbb3>
7bec6: 41 c6 84 24 88 a4 13 movb $0x0,0x13a488(%r12)
7becd: 00 00
pAd->CommonCfg.HT_Disable = 0;
7becf: 41 c6 84 24 89 a4 13 movb $0x0,0x13a489(%r12)
7bed6: 00 00
pAd->CommonCfg.RegTransmitSetting.field.BW = BW_40;
7bed8: e9 16 fd ff ff jmpq 7bbf3 <CFG80211DRV_IoctlHandle+0xb03>
7bedd: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7bee4 <CFG80211DRV_IoctlHandle+0xdf4>
pCfg80211_ctrl->cfg80211MainDev.Cfg80211RegisterProbeReqFrame = FALSE;
7bee4: 0f 86 b3 f3 ff ff jbe 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
pCfg80211_ctrl->cfg80211MainDev.Cfg80211ProbeReqCount = 0;
7beea: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7bef2 <CFG80211DRV_IoctlHandle+0xe02>
7bef1: 00
7bef2: 0f 85 a5 f3 ff ff jne 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
pCfg80211_ctrl->cfg80211MainDev.Cfg80211RegisterActionFrame = FALSE;
7bef8: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
pCfg80211_ctrl->cfg80211MainDev.Cfg80211ActionCount = 0;
7beff: e8 00 00 00 00 callq 7bf04 <CFG80211DRV_IoctlHandle+0xe14>
7bf04: 31 c0 xor %eax,%eax
7bf06: e9 94 f3 ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
7bf0b: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7bf12 <CFG80211DRV_IoctlHandle+0xe22>
DBGPRINT(RT_DEBUG_TRACE, ("RT_CMD_80211_KEY_WEP\n"));
7bf12: 76 16 jbe 7bf2a <CFG80211DRV_IoctlHandle+0xe3a>
7bf14: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7bf1c <CFG80211DRV_IoctlHandle+0xe2c>
7bf1b: 00
7bf1c: 75 0c jne 7bf2a <CFG80211DRV_IoctlHandle+0xe3a>
7bf1e: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7bf25: e8 00 00 00 00 callq 7bf2a <CFG80211DRV_IoctlHandle+0xe3a>
7bf2a: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
7bf31: 4c 89 e7 mov %r12,%rdi
return NDIS_STATUS_SUCCESS;
7bf34: e8 00 00 00 00 callq 7bf39 <CFG80211DRV_IoctlHandle+0xe49>
7bf39: e9 b1 f2 ff ff jmpq 7b1ef <CFG80211DRV_IoctlHandle+0xff>
DBGPRINT(RT_DEBUG_TRACE, ("AES\n"));
7bf3e: 41 0f b6 55 03 movzbl 0x3(%r13),%edx
7bf43: f6 c2 08 test $0x8,%dl
7bf46: 75 e2 jne 7bf2a <CFG80211DRV_IoctlHandle+0xe3a>
7bf48: f6 c2 04 test $0x4,%dl
7bf4b: 0f 85 00 02 00 00 jne 7c151 <CFG80211DRV_IoctlHandle+0x1061>
7bf51: 83 e2 02 and $0x2,%edx
7bf54: 0f 85 86 f2 ff ff jne 7b1e0 <CFG80211DRV_IoctlHandle+0xf0>
Set_EncrypType_Proc(pAd, "AES");
7bf5a: 83 f8 02 cmp $0x2,%eax
7bf5d: 0f 87 58 03 00 00 ja 7c2bb <CFG80211DRV_IoctlHandle+0x11cb>
7bf63: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
7bf6a: 4c 89 e7 mov %r12,%rdi
7bf6d: e8 00 00 00 00 callq 7bf72 <CFG80211DRV_IoctlHandle+0xe82>
if (pConnInfo->PairwiseEncrypType & RT_CMD_80211_CONN_ENCRYPT_CCMP) {
7bf72: e9 78 f2 ff ff jmpq 7b1ef <CFG80211DRV_IoctlHandle+0xff>
7bf77: a8 04 test $0x4,%al
} else if (pConnInfo->PairwiseEncrypType & RT_CMD_80211_CONN_ENCRYPT_TKIP) {
7bf79: 0f 84 b9 f2 ff ff je 7b238 <CFG80211DRV_IoctlHandle+0x148>
7bf7f: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7bf86 <CFG80211DRV_IoctlHandle+0xe96>
} else if (pConnInfo->PairwiseEncrypType & RT_CMD_80211_CONN_ENCRYPT_WEP) {
7bf86: 76 0e jbe 7bf96 <CFG80211DRV_IoctlHandle+0xea6>
7bf88: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7bf90 <CFG80211DRV_IoctlHandle+0xea0>
7bf8f: 00
DBGPRINT(RT_DEBUG_TRACE, ("NONE\n"));
7bf90: 0f 84 81 05 00 00 je 7c517 <CFG80211DRV_IoctlHandle+0x1427>
Set_EncrypType_Proc(pAd, "NONE");
7bf96: 48 8d b5 58 ff ff ff lea -0xa8(%rbp),%rsi
7bf9d: 31 d2 xor %edx,%edx
7bf9f: 4c 89 e7 mov %r12,%rdi
7bfa2: c7 85 5c ff ff ff 34 movl $0x34,-0xa4(%rbp)
7bfa9: 00 00 00
} else if (pConnInfo->GroupwiseEncrypType & RT_CMD_80211_CONN_ENCRYPT_TKIP) {
7bfac: e8 00 00 00 00 callq 7bfb1 <CFG80211DRV_IoctlHandle+0xec1>
DBGPRINT(RT_DEBUG_TRACE, ("GTK TKIP\n"));
7bfb1: e9 82 f2 ff ff jmpq 7b238 <CFG80211DRV_IoctlHandle+0x148>
7bfb6: 49 8b 75 08 mov 0x8(%r13),%rsi
7bfba: 4c 89 ea mov %r13,%rdx
7bfbd: 4c 89 e7 mov %r12,%rdi
7bfc0: e8 00 00 00 00 callq 7bfc5 <CFG80211DRV_IoctlHandle+0xed5>
7bfc5: 31 c0 xor %eax,%eax
RtmpIoctl_rt_ioctl_siwauth(pAd, &IoctlWpa, 0);
7bfc7: e9 d3 f2 ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
7bfcc: c7 85 6c ff ff ff 03 movl $0x3,-0x94(%rbp)
7bfd3: 00 00 00
IoctlWpa.value = RT_CMD_STA_IOCTL_WPA_GROUP_TKIP;
7bfd6: e9 9f f8 ff ff jmpq 7b87a <CFG80211DRV_IoctlHandle+0x78a>
7bfdb: 41 80 a4 24 ad 31 00 andb $0xf7,0x31ad(%r12)
7bfe2: 00 f7
RtmpIoctl_rt_ioctl_siwauth(pAd, &IoctlWpa, 0);
7bfe4: 41 80 a4 24 ae 31 00 andb $0xf9,0x31ae(%r12)
7bfeb: 00 f9
CFG80211_RegRuleApply(pAd, pRegInfo->pWiphy, (UCHAR *)pRegInfo->Alpha2);
7bfed: 41 c6 84 24 d9 36 00 movb $0x0,0x36d9(%r12)
7bff4: 00 00
return NDIS_STATUS_SUCCESS;
7bff6: e9 55 f5 ff ff jmpq 7b550 <CFG80211DRV_IoctlHandle+0x460>
7bffb: c7 85 6c ff ff ff 04 movl $0x4,-0x94(%rbp)
7c002: 00 00 00
IoctlSec.Alg = RT_CMD_STA_IOCTL_SECURITY_ALG_TKIP;
7c005: e9 70 f8 ff ff jmpq 7b87a <CFG80211DRV_IoctlHandle+0x78a>
7c00a: 41 80 8c 24 ad 31 00 orb $0x8,0x31ad(%r12)
7c011: 00 08
pAd->CommonCfg.RegTransmitSetting.field.BW = BW_20;
7c013: 41 80 8c 24 ae 31 00 orb $0x6,0x31ae(%r12)
7c01a: 00 06
pAd->CommonCfg.RegTransmitSetting.field.EXTCHA = EXTCHA_NONE;
7c01c: 41 c6 84 24 d9 36 00 movb $0x0,0x36d9(%r12)
7c023: 00 00
pAd->CommonCfg.HT_Disable = 0;
7c025: e9 26 f5 ff ff jmpq 7b550 <CFG80211DRV_IoctlHandle+0x460>
7c02a: 44 8b 15 00 00 00 00 mov 0x0(%rip),%r10d # 7c031 <CFG80211DRV_IoctlHandle+0xf41>
IoctlSec.Alg = RT_CMD_STA_IOCTL_SECURITY_ALG_CCMP;
7c031: 45 85 d2 test %r10d,%r10d
7c034: 0f 84 63 f2 ff ff je 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
pAd->CommonCfg.RegTransmitSetting.field.BW = BW_40;
7c03a: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c041: e8 00 00 00 00 callq 7c046 <CFG80211DRV_IoctlHandle+0xf56>
pAd->CommonCfg.RegTransmitSetting.field.EXTCHA = EXTCHA_BELOW;
7c046: e9 52 f2 ff ff jmpq 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
7c04b: 41 80 7d 01 01 cmpb $0x1,0x1(%r13)
pAd->CommonCfg.HT_Disable = 0;
7c050: 0f 84 26 02 00 00 je 7c27c <CFG80211DRV_IoctlHandle+0x118c>
7c056: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7c05d <CFG80211DRV_IoctlHandle+0xf6d>
CFG80211DBG(RT_DEBUG_ERROR, ("80211> Set the channel in STA Mode\n"));
7c05d: 76 0e jbe 7c06d <CFG80211DRV_IoctlHandle+0xf7d>
7c05f: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7c067 <CFG80211DRV_IoctlHandle+0xf77>
7c066: 00
7c067: 0f 84 2c 03 00 00 je 7c399 <CFG80211DRV_IoctlHandle+0x12a9>
7c06d: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
7c074: 4c 89 e7 mov %r12,%rdi
7c077: e8 00 00 00 00 callq 7c07c <CFG80211DRV_IoctlHandle+0xf8c>
if (pConnInfo->FlgIs8021x == TRUE) {
7c07c: e9 0f f1 ff ff jmpq 7b190 <CFG80211DRV_IoctlHandle+0xa0>
7c081: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
DBGPRINT(RT_DEBUG_TRACE, ("WPA2PSK\n"));
7c088: 4c 89 e7 mov %r12,%rdi
7c08b: e8 00 00 00 00 callq 7c090 <CFG80211DRV_IoctlHandle+0xfa0>
7c090: 41 8b 55 10 mov 0x10(%r13),%edx
7c094: 49 8b 75 08 mov 0x8(%r13),%rsi
7c098: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
Set_AuthMode_Proc(pAd, "WPA2PSK");
7c09f: e8 00 00 00 00 callq 7c0a4 <CFG80211DRV_IoctlHandle+0xfb4>
7c0a4: 41 0f b6 45 14 movzbl 0x14(%r13),%eax
7c0a9: 41 88 84 24 ec 20 00 mov %al,0x20ec(%r12)
7c0b0: 00
Set_EncrypType_Proc(pAd, "WEP");
7c0b1: 41 8b 55 10 mov 0x10(%r13),%edx
7c0b5: 83 fa 31 cmp $0x31,%edx
7c0b8: 0f 87 df f1 ff ff ja 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
7c0be: 83 fa 08 cmp $0x8,%edx
hex_dump("KeyBuf=", (UINT8 )pConnInfo->pKey, pConnInfo->KeyLen);
7c0c1: 4c 8d 75 a6 lea -0x5a(%rbp),%r14
7c0c5: 49 8b 7d 08 mov 0x8(%r13),%rdi
7c0c9: 0f 83 36 02 00 00 jae 7c305 <CFG80211DRV_IoctlHandle+0x1215>
7c0cf: f6 c2 04 test $0x4,%dl
7c0d2: 0f 85 92 02 00 00 jne 7c36a <CFG80211DRV_IoctlHandle+0x127a>
pAd->StaCfg.wdev.DefaultKeyId = pConnInfo->KeyIdx; / base 0 */
7c0d8: 31 c9 xor %ecx,%ecx
7c0da: 85 d2 test %edx,%edx
7c0dc: 74 11 je 7c0ef <CFG80211DRV_IoctlHandle+0xfff>
7c0de: 0f b6 0f movzbl (%rdi),%ecx
if (pConnInfo->KeyLen >= sizeof(KeyBuf))
7c0e1: f6 c2 02 test $0x2,%dl
7c0e4: 41 88 0e mov %cl,(%r14)
7c0e7: 89 d1 mov %edx,%ecx
7c0e9: 0f 85 cb 04 00 00 jne 7c5ba <CFG80211DRV_IoctlHandle+0x14ca>
memcpy(KeyBuf, pConnInfo->pKey, pConnInfo->KeyLen);
7c0ef: c6 44 0d a6 00 movb $0x0,-0x5a(%rbp,%rcx,1)
7c0f4: 8b 0d 00 00 00 00 mov 0x0(%rip),%ecx # 7c0fa <CFG80211DRV_IoctlHandle+0x100a>
7c0fa: 85 c9 test %ecx,%ecx
7c0fc: 0f 85 fd 02 00 00 jne 7c3ff <CFG80211DRV_IoctlHandle+0x130f>
7c102: 41 0f b6 4d 14 movzbl 0x14(%r13),%ecx
7c107: 4c 89 f6 mov %r14,%rsi
7c10a: 4c 89 e7 mov %r12,%rdi
7c10d: e8 00 00 00 00 callq 7c112 <CFG80211DRV_IoctlHandle+0x1022>
7c112: e9 50 f1 ff ff jmpq 7b267 <CFG80211DRV_IoctlHandle+0x177>
7c117: 41 8b b4 24 dc 20 00 mov 0x20dc(%r12),%esi
7c11e: 00
KeyBuf[pConnInfo->KeyLen] = 0x00;
7c11f: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
CFG80211DBG(RT_DEBUG_ERROR,
7c126: e8 00 00 00 00 callq 7c12b <CFG80211DRV_IoctlHandle+0x103b>
7c12b: 41 0f b6 55 03 movzbl 0x3(%r13),%edx
7c130: f6 c2 08 test $0x8,%dl
Set_Wep_Key_Proc(pAd, (PSTRING)KeyBuf, (int)pConnInfo->KeyLen, (int)pConnInfo->KeyIdx);
7c133: 0f 85 d2 fd ff ff jne 7bf0b <CFG80211DRV_IoctlHandle+0xe1b>
7c139: f6 c2 04 test $0x4,%dl
7c13c: 8b 05 00 00 00 00 mov 0x0(%rip),%eax # 7c142 <CFG80211DRV_IoctlHandle+0x1052>
7c142: 0f 84 e0 03 00 00 je 7c528 <CFG80211DRV_IoctlHandle+0x1438>
CFG80211DBG(RT_DEBUG_TRACE,
7c148: 83 f8 02 cmp $0x2,%eax
7c14b: 0f 87 fb 00 00 00 ja 7c24c <CFG80211DRV_IoctlHandle+0x115c>
7c151: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
7c158: 4c 89 e7 mov %r12,%rdi
if (pConnInfo->PairwiseEncrypType & RT_CMD_80211_CONN_ENCRYPT_CCMP) {
7c15b: e8 00 00 00 00 callq 7c160 <CFG80211DRV_IoctlHandle+0x1070>
7c160: e9 8a f0 ff ff jmpq 7b1ef <CFG80211DRV_IoctlHandle+0xff>
7c165: 41 0f b6 84 24 ae 31 movzbl 0x31ae(%r12),%eax
7c16c: 00 00
} else if (pConnInfo->PairwiseEncrypType & RT_CMD_80211_CONN_ENCRYPT_TKIP) {
7c16e: 41 80 8c 24 ad 31 00 orb $0x8,0x31ad(%r12)
7c175: 00 08
7c177: 41 c6 84 24 d9 36 00 movb $0x0,0x36d9(%r12)
7c17e: 00 00
DBGPRINT(RT_DEBUG_TRACE, ("TKIP\n"));
7c180: 83 e0 f9 and $0xfffffff9,%eax
Set_EncrypType_Proc(pAd, "TKIP");
7c183: 83 c8 02 or $0x2,%eax
7c186: 41 88 84 24 ae 31 00 mov %al,0x31ae(%r12)
7c18d: 00
7c18e: e9 bd f3 ff ff jmpq 7b550 <CFG80211DRV_IoctlHandle+0x460>
7c193: c7 85 6c ff ff ff 03 movl $0x3,-0x94(%rbp)
7c19a: 00 00 00
pAd->CommonCfg.RegTransmitSetting.field.EXTCHA = EXTCHA_ABOVE;
7c19d: e9 64 fc ff ff jmpq 7be06 <CFG80211DRV_IoctlHandle+0xd16>
pAd->CommonCfg.RegTransmitSetting.field.BW = BW_40;
7c1a2: c7 85 6c ff ff ff 03 movl $0x3,-0x94(%rbp)
7c1a9: 00 00 00
pAd->CommonCfg.HT_Disable = 0;
7c1ac: e9 fc f6 ff ff jmpq 7b8ad <CFG80211DRV_IoctlHandle+0x7bd>
pAd->CommonCfg.RegTransmitSetting.field.EXTCHA = EXTCHA_ABOVE;
7c1b1: 41 80 7d 01 01 cmpb $0x1,0x1(%r13)
7c1b6: 0f 84 1e 01 00 00 je 7c2da <CFG80211DRV_IoctlHandle+0x11ea>
7c1bc: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7c1c3 <CFG80211DRV_IoctlHandle+0x10d3>
IoctlSec.Alg = RT_CMD_STA_IOCTL_SECURITY_ALG_TKIP;
7c1c3: 76 0e jbe 7c1d3 <CFG80211DRV_IoctlHandle+0x10e3>
7c1c5: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7c1cd <CFG80211DRV_IoctlHandle+0x10dd>
7c1cc: 00
7c1cd: 0f 84 d7 01 00 00 je 7c3aa <CFG80211DRV_IoctlHandle+0x12ba>
IoctlSec.Alg = RT_CMD_STA_IOCTL_SECURITY_ALG_TKIP;
7c1d3: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
7c1da: 4c 89 e7 mov %r12,%rdi
7c1dd: e8 00 00 00 00 callq 7c1e2 <CFG80211DRV_IoctlHandle+0x10f2>
if (pConnInfo->FlgIs8021x == TRUE) {
7c1e2: e9 a9 ef ff ff jmpq 7b190 <CFG80211DRV_IoctlHandle+0xa0>
7c1e7: c7 85 6c ff ff ff 04 movl $0x4,-0x94(%rbp)
7c1ee: 00 00 00
DBGPRINT(RT_DEBUG_TRACE, ("WPAPSK\n"));
7c1f1: e9 b7 f6 ff ff jmpq 7b8ad <CFG80211DRV_IoctlHandle+0x7bd>
7c1f6: c7 85 6c ff ff ff 04 movl $0x4,-0x94(%rbp)
7c1fd: 00 00 00
7c200: e9 01 fc ff ff jmpq 7be06 <CFG80211DRV_IoctlHandle+0xd16>
Set_AuthMode_Proc(pAd, "WPAPSK");
7c205: 31 d2 xor %edx,%edx
7c207: 31 f6 xor %esi,%esi
7c209: 4c 89 e7 mov %r12,%rdi
7c20c: e8 00 00 00 00 callq 7c211 <CFG80211DRV_IoctlHandle+0x1121>
7c211: 4c 89 e7 mov %r12,%rdi
7c214: e8 00 00 00 00 callq 7c219 <CFG80211DRV_IoctlHandle+0x1129>
IoctlSec.Alg = RT_CMD_STA_IOCTL_SECURITY_ALG_CCMP;
7c219: 4c 89 e7 mov %r12,%rdi
7c21c: e8 00 00 00 00 callq 7c221 <CFG80211DRV_IoctlHandle+0x1131>
7c221: 49 8d b4 24 f8 30 00 lea 0x30f8(%r12),%rsi
7c228: 00
IoctlSec.Alg = RT_CMD_STA_IOCTL_SECURITY_ALG_CCMP;
7c229: 4c 89 e7 mov %r12,%rdi
7c22c: e8 00 00 00 00 callq 7c231 <CFG80211DRV_IoctlHandle+0x1141>
7c231: 31 c0 xor %eax,%eax
7c233: e9 67 f0 ff ff jmpq 7b29f <CFG80211DRV_IoctlHandle+0x1af>
MlmeUpdateTxRates(pAd, FALSE, 0);
7c238: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
7c23f: 4c 89 e7 mov %r12,%rdi
MakeIbssBeacon(pAd);
7c242: e8 00 00 00 00 callq 7c247 <CFG80211DRV_IoctlHandle+0x1157>
7c247: e9 44 ef ff ff jmpq 7b190 <CFG80211DRV_IoctlHandle+0xa0>
AsicEnableIbssSync(pAd);
7c24c: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7c254 <CFG80211DRV_IoctlHandle+0x1164>
7c253: 00
Set_SSID_Proc(pAd, (PSTRING)pAd->CommonCfg.Ssid);
7c254: 0f 85 f7 fe ff ff jne 7c151 <CFG80211DRV_IoctlHandle+0x1061>
7c25a: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
return NDIS_STATUS_SUCCESS;
7c261: e8 00 00 00 00 callq 7c266 <CFG80211DRV_IoctlHandle+0x1176>
7c266: e9 e6 fe ff ff jmpq 7c151 <CFG80211DRV_IoctlHandle+0x1061>
Set_AuthMode_Proc(pAd, "SHARED");
7c26b: 8b 0a mov (%rdx),%ecx
7c26d: 89 0b mov %ecx,(%rbx)
7c26f: 8b 54 02 fc mov -0x4(%rdx,%rax,1),%edx
7c273: 89 54 03 fc mov %edx,-0x4(%rbx,%rax,1)
7c277: e9 2c f2 ff ff jmpq 7b4a8 <CFG80211DRV_IoctlHandle+0x3b8>
DBGPRINT(RT_DEBUG_TRACE, ("TKIP\n"));
7c27c: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7c283 <CFG80211DRV_IoctlHandle+0x1193>
7c283: 76 0e jbe 7c293 <CFG80211DRV_IoctlHandle+0x11a3>
7c285: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7c28d <CFG80211DRV_IoctlHandle+0x119d>
7c28c: 00
7c28d: 0f 84 38 02 00 00 je 7c4cb <CFG80211DRV_IoctlHandle+0x13db>
7c293: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
7c29a: 4c 89 e7 mov %r12,%rdi
memcpy(SSID, pConnInfo->pSsid, SSIDLen);
7c29d: e8 00 00 00 00 callq 7c2a2 <CFG80211DRV_IoctlHandle+0x11b2>
7c2a2: e9 e9 ee ff ff jmpq 7b190 <CFG80211DRV_IoctlHandle+0xa0>
7c2a7: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
DBGPRINT(RT_DEBUG_TRACE, ("WPA2\n"));
7c2ae: 4c 89 e7 mov %r12,%rdi
7c2b1: e8 00 00 00 00 callq 7c2b6 <CFG80211DRV_IoctlHandle+0x11c6>
7c2b6: e9 d5 ee ff ff jmpq 7b190 <CFG80211DRV_IoctlHandle+0xa0>
7c2bb: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7c2c3 <CFG80211DRV_IoctlHandle+0x11d3>
7c2c2: 00
Set_AuthMode_Proc(pAd, "WPA2");
7c2c3: 0f 85 9a fc ff ff jne 7bf63 <CFG80211DRV_IoctlHandle+0xe73>
7c2c9: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c2d0: e8 00 00 00 00 callq 7c2d5 <CFG80211DRV_IoctlHandle+0x11e5>
7c2d5: e9 89 fc ff ff jmpq 7bf63 <CFG80211DRV_IoctlHandle+0xe73>
Set_AuthMode_Proc(pAd, "WEPAUTO");
7c2da: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7c2e1 <CFG80211DRV_IoctlHandle+0x11f1>
7c2e1: 76 0e jbe 7c2f1 <CFG80211DRV_IoctlHandle+0x1201>
7c2e3: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7c2eb <CFG80211DRV_IoctlHandle+0x11fb>
7c2ea: 00
DBGPRINT(RT_DEBUG_TRACE, ("NONE\n"));
7c2eb: 0f 84 b8 02 00 00 je 7c5a9 <CFG80211DRV_IoctlHandle+0x14b9>
7c2f1: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
7c2f8: 4c 89 e7 mov %r12,%rdi
7c2fb: e8 00 00 00 00 callq 7c300 <CFG80211DRV_IoctlHandle+0x1210>
7c300: e9 8b ee ff ff jmpq 7b190 <CFG80211DRV_IoctlHandle+0xa0>
7c305: 48 8b 0f mov (%rdi),%rcx
7c308: 4d 8d 4e 08 lea 0x8(%r14),%r9
DBGPRINT(RT_DEBUG_TRACE, ("WPA\n"));
7c30c: 49 83 e1 f8 and $0xfffffffffffffff8,%r9
7c310: 48 89 4d a6 mov %rcx,-0x5a(%rbp)
7c314: 89 d1 mov %edx,%ecx
7c316: 48 8b 74 0f f8 mov -0x8(%rdi,%rcx,1),%rsi
7c31b: 49 89 74 0e f8 mov %rsi,-0x8(%r14,%rcx,1)
7c320: 4c 89 f6 mov %r14,%rsi
Set_AuthMode_Proc(pAd, "WPA");
7c323: 4c 29 ce sub %r9,%rsi
7c326: 48 29 f7 sub %rsi,%rdi
7c329: 01 d6 add %edx,%esi
7c32b: 83 e6 f8 and $0xfffffff8,%esi
7c32e: 83 fe 08 cmp $0x8,%esi
7c331: 0f 82 b8 fd ff ff jb 7c0ef <CFG80211DRV_IoctlHandle+0xfff>
memcpy(KeyBuf, pConnInfo->pKey, pConnInfo->KeyLen);
7c337: 83 e6 f8 and $0xfffffff8,%esi
7c33a: 45 31 c0 xor %r8d,%r8d
7c33d: 45 89 c2 mov %r8d,%r10d
7c340: 41 83 c0 08 add $0x8,%r8d
7c344: 4e 8b 1c 17 mov (%rdi,%r10,1),%r11
7c348: 41 39 f0 cmp %esi,%r8d
7c34b: 4f 89 1c 11 mov %r11,(%r9,%r10,1)
7c34f: 72 ec jb 7c33d <CFG80211DRV_IoctlHandle+0x124d>
7c351: e9 99 fd ff ff jmpq 7c0ef <CFG80211DRV_IoctlHandle+0xfff>
7c356: 0f b7 54 02 fe movzwl -0x2(%rdx,%rax,1),%edx
7c35b: 66 89 54 03 fe mov %dx,-0x2(%rbx,%rax,1)
7c360: e9 43 f1 ff ff jmpq 7b4a8 <CFG80211DRV_IoctlHandle+0x3b8>
7c365: e8 00 00 00 00 callq 7c36a <CFG80211DRV_IoctlHandle+0x127a>
7c36a: 8b 0f mov (%rdi),%ecx
7c36c: 41 89 0e mov %ecx,(%r14)
7c36f: 89 d1 mov %edx,%ecx
7c371: 8b 74 0f fc mov -0x4(%rdi,%rcx,1),%esi
7c375: 41 89 74 0e fc mov %esi,-0x4(%r14,%rcx,1)
7c37a: e9 70 fd ff ff jmpq 7c0ef <CFG80211DRV_IoctlHandle+0xfff>
7c37f: 41 0f b6 b4 24 d9 36 movzbl 0x36d9(%r12),%esi
7c386: 00 00
memcpy(SSID, pConnInfo->pSsid, SSIDLen);
7c388: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c38f: e8 00 00 00 00 callq 7c394 <CFG80211DRV_IoctlHandle+0x12a4>
7c394: e9 ce f1 ff ff jmpq 7b567 <CFG80211DRV_IoctlHandle+0x477>
}
7c399: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
memcpy(KeyBuf, pConnInfo->pKey, pConnInfo->KeyLen);
7c3a0: e8 00 00 00 00 callq 7c3a5 <CFG80211DRV_IoctlHandle+0x12b5>
7c3a5: e9 c3 fc ff ff jmpq 7c06d <CFG80211DRV_IoctlHandle+0xf7d>
7c3aa: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
CFG80211DBG(RT_DEBUG_TRACE, ("80211> HT Disable = %d\n",
7c3b1: e8 00 00 00 00 callq 7c3b6 <CFG80211DRV_IoctlHandle+0x12c6>
7c3b6: e9 18 fe ff ff jmpq 7c1d3 <CFG80211DRV_IoctlHandle+0x10e3>
7c3bb: 41 8b b4 24 e0 20 00 mov 0x20e0(%r12),%esi
7c3c2: 00
7c3c3: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
DBGPRINT(RT_DEBUG_TRACE, ("WPA2PSK\n"));
7c3ca: e8 00 00 00 00 callq 7c3cf <CFG80211DRV_IoctlHandle+0x12df>
7c3cf: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7c3d6 <CFG80211DRV_IoctlHandle+0x12e6>
7c3d6: 0f 86 73 ee ff ff jbe 7b24f <CFG80211DRV_IoctlHandle+0x15f>
DBGPRINT(RT_DEBUG_TRACE, ("WPAPSK\n"));
7c3dc: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7c3e4 <CFG80211DRV_IoctlHandle+0x12f4>
7c3e3: 00
7c3e4: 0f 85 65 ee ff ff jne 7b24f <CFG80211DRV_IoctlHandle+0x15f>
7c3ea: 49 8b 75 08 mov 0x8(%r13),%rsi
CFG80211DBG(RT_DEBUG_TRACE, ("80211> EncrypType = %d\n", pAd->StaCfg.wdev.WepStatus));
7c3ee: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c3f5: e8 00 00 00 00 callq 7c3fa <CFG80211DRV_IoctlHandle+0x130a>
7c3fa: e9 50 ee ff ff jmpq 7b24f <CFG80211DRV_IoctlHandle+0x15f>
CFG80211DBG(RT_DEBUG_TRACE, ("80211> Key = %s\n", pConnInfo->pKey));
7c3ff: 0f b6 f0 movzbl %al,%esi
7c402: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c409: e8 00 00 00 00 callq 7c40e <CFG80211DRV_IoctlHandle+0x131e>
7c40e: 41 8b 55 10 mov 0x10(%r13),%edx
7c412: e9 eb fc ff ff jmpq 7c102 <CFG80211DRV_IoctlHandle+0x1012>
7c417: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
7c41e: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c425: e8 00 00 00 00 callq 7c42a <CFG80211DRV_IoctlHandle+0x133a>
7c42a: 41 8b 55 04 mov 0x4(%r13),%edx
7c42e: 83 fa ff cmp $0xffffffff,%edx
CFG80211DBG(RT_DEBUG_ERROR,
7c431: 89 d0 mov %edx,%eax
7c433: 0f 84 11 f7 ff ff je 7bb4a <CFG80211DRV_IoctlHandle+0xa5a>
7c439: 83 3d 00 00 00 00 02 cmpl $0x2,0x0(%rip) # 7c440 <CFG80211DRV_IoctlHandle+0x1350>
7c440: 0f 86 e6 f6 ff ff jbe 7bb2c <CFG80211DRV_IoctlHandle+0xa3c>
7c446: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7c44e <CFG80211DRV_IoctlHandle+0x135e>
7c44d: 00
CFG80211DBG(RT_DEBUG_TRACE, ("%s\n", FUNCTION));
7c44e: 0f 85 d6 f6 ff ff jne 7bb2a <CFG80211DRV_IoctlHandle+0xa3a>
7c454: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
if (pBssInfo->use_short_preamble != -1) {
7c45b: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c462: e8 00 00 00 00 callq 7c467 <CFG80211DRV_IoctlHandle+0x1377>
7c467: 41 8b 55 04 mov 0x4(%r13),%edx
CFG80211DBG(RT_DEBUG_TRACE,
7c46b: e9 bc f6 ff ff jmpq 7bb2c <CFG80211DRV_IoctlHandle+0xa3c>
7c470: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c477: e8 00 00 00 00 callq 7c47c <CFG80211DRV_IoctlHandle+0x138c>
7c47c: e9 a6 ee ff ff jmpq 7b327 <CFG80211DRV_IoctlHandle+0x237>
7c481: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c488: e8 00 00 00 00 callq 7c48d <CFG80211DRV_IoctlHandle+0x139d>
7c48d: e9 bf f9 ff ff jmpq 7be51 <CFG80211DRV_IoctlHandle+0xd61>
7c492: 8b b5 6c ff ff ff mov -0x94(%rbp),%esi
7c498: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c49f: e8 00 00 00 00 callq 7c4a4 <CFG80211DRV_IoctlHandle+0x13b4>
DBGPRINT(RT_DEBUG_TRACE,
7c4a4: e9 17 f4 ff ff jmpq 7b8c0 <CFG80211DRV_IoctlHandle+0x7d0>
7c4a9: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c4b0: e8 00 00 00 00 callq 7c4b5 <CFG80211DRV_IoctlHandle+0x13c5>
DBGPRINT(RT_DEBUG_TRACE, ("CFG80211: No Connection\n"));
7c4b5: e9 10 f0 ff ff jmpq 7b4ca <CFG80211DRV_IoctlHandle+0x3da>
7c4ba: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c4c1: e8 00 00 00 00 callq 7c4c6 <CFG80211DRV_IoctlHandle+0x13d6>
DBGPRINT(RT_DEBUG_TRACE, ("Install GTK: %d\n", IoctlSec.Alg));
7c4c6: e9 15 ed ff ff jmpq 7b1e0 <CFG80211DRV_IoctlHandle+0xf0>
7c4cb: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c4d2: e8 00 00 00 00 callq 7c4d7 <CFG80211DRV_IoctlHandle+0x13e7>
7c4d7: e9 b7 fd ff ff jmpq 7c293 <CFG80211DRV_IoctlHandle+0x11a3>
DBGPRINT(RT_DEBUG_TRACE, ("WPS Connection onGoing.....\n"));
7c4dc: 31 c0 xor %eax,%eax
7c4de: 48 89 df mov %rbx,%rdi
7c4e1: 48 83 c9 ff or $0xffffffffffffffff,%rcx
7c4e5: f2 ae repnz scas %es:(%rdi),%al
7c4e7: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
DBGPRINT(RT_DEBUG_TRACE, ("WEP\n"));
7c4ee: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c4f5: 48 89 c8 mov %rcx,%rax
7c4f8: 0f b6 ca movzbl %dl,%ecx
DBGPRINT(RT_DEBUG_TRACE, ("WPA2\n"));
7c4fb: 41 0f b6 55 33 movzbl 0x33(%r13),%edx
7c500: 48 f7 d0 not %rax
7c503: 4c 8d 40 ff lea -0x1(%rax),%r8
7c507: e8 00 00 00 00 callq 7c50c <CFG80211DRV_IoctlHandle+0x141c>
DBGPRINT(RT_DEBUG_TRACE, ("%s ==> %d, %d, %zx...\n",
7c50c: 8b 05 00 00 00 00 mov 0x0(%rip),%eax # 7c512 <CFG80211DRV_IoctlHandle+0x1422>
7c512: e9 2b f3 ff ff jmpq 7b842 <CFG80211DRV_IoctlHandle+0x752>
7c517: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c51e: e8 00 00 00 00 callq 7c523 <CFG80211DRV_IoctlHandle+0x1433>
7c523: e9 6e fa ff ff jmpq 7bf96 <CFG80211DRV_IoctlHandle+0xea6>
7c528: 80 e2 02 and $0x2,%dl
7c52b: 0f 84 29 fa ff ff je 7bf5a <CFG80211DRV_IoctlHandle+0xe6a>
7c531: e9 97 ec ff ff jmpq 7b1cd <CFG80211DRV_IoctlHandle+0xdd>
7c536: 41 0f b6 8c 24 ae 31 movzbl 0x31ae(%r12),%ecx
7c53d: 00 00
7c53f: 41 0f b6 94 24 ad 31 movzbl 0x31ad(%r12),%edx
7c546: 00 00
DBGPRINT(RT_DEBUG_TRACE, ("GTK TKIP\n"));
7c548: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c54f: 41 0f b6 b4 24 49 31 movzbl 0x3149(%r12),%esi
7c556: 00 00
} else if (pConnInfo->PairwiseEncrypType & RT_CMD_80211_CONN_ENCRYPT_WEP) {
7c558: d0 e9 shr %cl
7c55a: c0 ea 03 shr $0x3,%dl
7c55d: 83 e1 03 and $0x3,%ecx
7c560: 83 e2 01 and $0x1,%edx
7c563: e8 00 00 00 00 callq 7c568 <CFG80211DRV_IoctlHandle+0x1478>
CFG80211DBG(RT_DEBUG_TRACE, ("80211> New CH = %d, New BW = %d with Ext[%d]\n",
7c568: e9 8b f0 ff ff jmpq 7b5f8 <CFG80211DRV_IoctlHandle+0x508>
7c56d: 44 89 f6 mov %r14d,%esi
7c570: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c577: e8 00 00 00 00 callq 7c57c <CFG80211DRV_IoctlHandle+0x148c>
7c57c: e9 87 f2 ff ff jmpq 7b808 <CFG80211DRV_IoctlHandle+0x718>
7c581: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c588: e8 00 00 00 00 callq 7c58d <CFG80211DRV_IoctlHandle+0x149d>
7c58d: e9 8b ec ff ff jmpq 7b21d <CFG80211DRV_IoctlHandle+0x12d>
7c592: 8b b5 6c ff ff ff mov -0x94(%rbp),%esi
7c598: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
DBGPRINT(RT_DEBUG_TRACE, ("Set Sta Default Key: %d\n", Data));
7c59f: e8 00 00 00 00 callq 7c5a4 <CFG80211DRV_IoctlHandle+0x14b4>
7c5a4: e9 70 f8 ff ff jmpq 7be19 <CFG80211DRV_IoctlHandle+0xd29>
7c5a9: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c5b0: e8 00 00 00 00 callq 7c5b5 <CFG80211DRV_IoctlHandle+0x14c5>
DBGPRINT(RT_DEBUG_TRACE, ("GTK AES\n"));
7c5b5: e9 37 fd ff ff jmpq 7c2f1 <CFG80211DRV_IoctlHandle+0x1201>
7c5ba: 0f b7 74 0f fe movzwl -0x2(%rdi,%rcx,1),%esi
7c5bf: 66 41 89 74 0e fe mov %si,-0x2(%r14,%rcx,1)
DBGPRINT(RT_DEBUG_TRACE, ("Install PTK: %d\n", IoctlSec.Alg));
7c5c5: e9 25 fb ff ff jmpq 7c0ef <CFG80211DRV_IoctlHandle+0xfff>
7c5ca: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
7c5d1: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
7c5d8: e8 00 00 00 00 callq 7c5dd <CFG80211DRV_IoctlHandle+0x14ed>
DBGPRINT(RT_DEBUG_TRACE, ("WPA\n"));
7c5dd: e9 92 f0 ff ff jmpq 7b674 <CFG80211DRV_IoctlHandle+0x584>
7c5e2: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
7c5e9: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
memcpy(KeyBuf, pConnInfo->pKey, pConnInfo->KeyLen);
7c5f0: e8 00 00 00 00 callq 7c5f5 <CFG80211DRV_IoctlHandle+0x1505>
7c5f5: 41 80 bc 24 51 a3 13 cmpb $0x1,0x13a351(%r12)
7c5fc: 00 01
DBGPRINT(RT_DEBUG_TRACE, (" %s\n", FUNCTION));
7c5fe: 0f 85 99 ec ff ff jne 7b29d <CFG80211DRV_IoctlHandle+0x1ad>
7c604: 83 3d 00 00 00 00 01 cmpl $0x1,0x0(%rip) # 7c60b <CFG80211DRV_IoctlHandle+0x151b>
7c60b: 0f 86 9a f1 ff ff jbe 7b7ab <CFG80211DRV_IoctlHandle+0x6bb>
7c611: 48 83 3d 00 00 00 00 cmpq $0x0,0x0(%rip) # 7c619 <CFG80211DRV_IoctlHandle+0x1529>
7c618: 00
DBGPRINT(RT_DEBUG_ERROR,
7c619: 0f 85 8c f1 ff ff jne 7b7ab <CFG80211DRV_IoctlHandle+0x6bb>
7c61f: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
if (pAd->cfg80211_ctrl.FlgCfg80211Scanning == TRUE) {
7c626: e8 00 00 00 00 callq 7c62b <CFG80211DRV_IoctlHandle+0x153b>
7c62b: e9 7b f1 ff ff jmpq 7b7ab <CFG80211DRV_IoctlHandle+0x6bb>
finally, after do some workaround, this dongle works very well , no crash, no hang
- use linux-lts package in archlinux
- disable networkmanager
- connect to ap by manual
create wpa_supplicant.conf and input ssid name and passphrase,
for example:
network={
ssid="SSID"
psk="qazxcdew"
}
thenwpa_supplicant -B -i wlan0 -c wpa_supplicant.conf -D nl80211
- get ipaddress by manual
dhcpcd wlan0
thank you sir. I think this will help much!