当前位置: 首页 > news >正文

如何做正版小说网站无锡百度网站排名

如何做正版小说网站,无锡百度网站排名,学校网站建设工作计划,泰兴城乡建设局网站1.wifi断开大体流程#xff1a; 1.wifi断开 wlan-driver最先知道。 2.wlan-driver在与路由器连接的时候(未断开时), 会有周期性的beacon帧来维持连接#xff0c;AP端一旦遇到突发事情#xff0c;会立刻通过802.11协议的 deauth 帧/ reject 帧等 通知到 driver。 3. wlan-…1.wifi断开大体流程 1.wifi断开 wlan-driver最先知道。 2.wlan-driver在与路由器连接的时候(未断开时), 会有周期性的beacon帧来维持连接AP端一旦遇到突发事情会立刻通过802.11协议的 deauth 帧/ reject 帧等 通知到 driver。 3. wlan-driver一旦收到802协议的 deauth帧/reject帧等后马上断开与AP的连接。 4. 紧接着wlan-driver的上层WifiStateMachine内部广播通知系统外部网络环境系统跟Settings开始同步处理此次的断开。 2.wifi断开原因 3.wifi断开流程 4.代码流程 1. wpa_supplicant 部分 wpa_driver_nl80211_drv_init 其核心完成与drv通道绑定(既是与driver建立好暗号信息交流通道)一旦有变化及时通风报信nl80211_init_bss 埋下的是第一步棋监听解读 bss 802.11 数据帧process_bss_event 专门处理 802.11 数据帧将之送往到 mlme_event 处理mlme 完成分拣之后装往 wpa_supplicant_event 大车上wpa_supplicant_event 大车把每个event送到对应得cmd中心处理站进行卸货进一步分发处理处理完成后通过 wpas_notify_state_changed 上报给 wpas_hidl_notify_state_changed wpas_hidl_notify_state_changed 完成接力赛最后一棒将事件上报给到 SupplicantStaIfaceHal这里断开的所有原因将在 wpa_supplicant_event 函数里可以找到结合 driver行为和空中包 external/wpa_supplicant_8/hostapd/src/drivers/driver_nl80211.c static void * wpa_driver_nl80211_drv_init(void *ctx, const char *ifname,void *global_priv, int hostapd,const u8 *set_addr, const char *driver_params){if (nl80211_init_bss(bss))goto failed; } static int nl80211_init_bss(struct i802_bss *bss) {... nl_cb_set(bss-nl_cb, NL_CB_VALID, NL_CB_CUSTOM,process_bss_event, bss); }external/wpa_supplicant_8/src/drivers/driver_nl80211_event.c int process_bss_event(struct nl_msg *msg, void *arg) {switch (gnlh-cmd) {case NL80211_CMD_FRAME:case NL80211_CMD_FRAME_TX_STATUS:mlme_event(bss, gnlh-cmd, tb[NL80211_ATTR_FRAME],tb[NL80211_ATTR_MAC], tb[NL80211_ATTR_TIMED_OUT],tb[NL80211_ATTR_WIPHY_FREQ], tb[NL80211_ATTR_ACK],tb[NL80211_ATTR_COOKIE],tb[NL80211_ATTR_RX_SIGNAL_DBM],tb[NL80211_ATTR_STA_WME]);break; }external/wpa_supplicant_8/wpa_supplicant/events.c void wpa_supplicant_event(void *ctx, enum wpa_event_type event,union wpa_event_data *data) {case EVENT_AUTH: case .... ... }wpa_supplicant_set_state --wpa_supplicant.cwpas_notify_state_changed -- hidi_manager.cppwpas_hidl_notify_state_changed -- hidl.cpp 2.wpa_supplicant -- hidl -- SupplicantStaIfaceHal wpa_supplicant 把接力棒交给了 wpa_supplicant 下面的 hidl.cpp由他来完成事件的上报以及通知WifiMonitor仍然是老套路自从Android的版本升级之后cpp与java之间的通信也是在不断地变化从之前的aidl到现在的hidl总是在变SupplicantStaIfaceHal 收到上报事件之后通过这一长期合作伙伴WifiMonitor,将消息通知到系统各个模块 external/wpa_supplicant_8/wpa_supplicant/hidl/1.1/hidl.cpp {.... hidl_manager-notifyStateChange(wpa_s); }external/wpa_supplicant_8/wpa_supplicant/hidl/1.0/hidl_manager.cpp {....callWithEachStaIfaceCallback(wpa_s-ifname, std::bind(ISupplicantStaIfaceCallback::onStateChanged,std::placeholders::_1,static_castISupplicantStaIfaceCallback::State(wpa_s-wpa_state),bssid, hidl_network_id, hidl_ssid)); }frameworks/opt/net/wifi/service/java/com/android/server/wifi/SupplicantStaIfaceHal.javapublic void onStateChanged(int newState, byte[/* 6 */] bssid, int id,ArrayListByte ssid) {mWifiMonitor.broadcastSupplicantStateChangeEvent( mIfaceName, getCurrentNetworkId(mIfaceName), wifiSsid, bssidStr, newSupplicantState);}3.WifiMonitor -- WifiStateMachine -- 广播通知系统 WifiMonitor 传输 SUPPLICANT_STATE_CHANGE_EVENT cmd 给到 WifiStateMachineWifiStateMachine 是 cmd 核心处理枢纽每个 wifi 相关的 cmd 都会送到这里被分发执行这里重点有DisconnectingState与 ConnectModeState 状态机将会根据 wpa_supplicant 所处的状态 disconnect 或者 completed 状态处理行为不一样如为 disconnect 则转到 handleNetworkDisconnect(); 处理如为 completed则开启 ip gaining最后发送广播 WifiManager.NETWORK_STATE_CHANGED_ACTION 通知wifi状态变化了处理同步断开的状态flow frameworks/opt/net/wifi/service/java/com/android/server/wifi/WifiMonitor.java public void broadcastSupplicantStateChangeEvent(String iface, int networkId, WifiSsid wifiSsid,....) {sendMessage(iface, SUPPLICANT_STATE_CHANGE_EVENT, 0, 0,new StateChangeResult(networkId, wifiSsid, bssid, newSupplicantState)); }frameworks/opt/net/wifi/service/java/com/android/server/wifi/WifiStateMachine.java class ConnectModeState extends State { {..... case WifiMonitor.SUPPLICANT_STATE_CHANGE_EVENT:SupplicantState state handleSupplicantStateChange(message);if (state SupplicantState.DISCONNECTED mNetworkInfo.getState() ! NetworkInfo.State.DISCONNECTED) {if (mVerboseLoggingEnabled) {log(Missed CTRL-EVENT-DISCONNECTED, disconnect);}handleNetworkDisconnect();transitionTo(mDisconnectedState);}if (state SupplicantState.COMPLETED) {mIpClient.confirmConfiguration();mWifiScoreReport.noteIpCheck();} }class DisconnectingState extends State {case WifiMonitor.SUPPLICANT_STATE_CHANGE_EVENT:handleNetworkDisconnect();transitionTo(mDisconnectedState); }
http://www.zqtcl.cn/news/321221/

相关文章:

  • 网站免费空间购买wordpress支持页面模版
  • 腾讯建设网站视频宁波城乡住房建设厅网站
  • 乐清网站开发公司个人网站建设工作室
  • 网站空间升级通知手机端怎么看世界杯
  • 广西南宁网站推广建设网站视频教程
  • 福州专业网站建设推广费用nas可做网站服务器吗
  • 齐鲁建设网站福建省高速公路建设管理网站
  • 比格设计网站官网收录网站查询
  • 国外做直播网站淘宝电商网站怎么做的
  • 国外私人网站网站由那些组成
  • 网站备案多久通过机械设备网站
  • 企业自建站案例网站基础知识域名5个点
  • 咸宁建设网站海口市网站建设
  • 认识电子商务网站建设技术网站交换链接怎么做?
  • 定制商城网站建设全球搜索引擎排名2021
  • 徐州百度网站快速优化做网站视频图片加载不出来
  • 网站被host重定向处理浙江网新股吧
  • asp国外网站什么页游好玩
  • 高端简约30平米办公室装修广州搜索seo网站优化
  • 海口的网站建设公司wordpress二次元极简主题
  • 南京快速建站公司国家网站域名
  • 兰州装修公司哪家好网站seo推广员招聘
  • 郑州网站推广 汉狮网络易企秀类似的软件
  • 做外单网站成都网页制作公司排名
  • 成都优化网站关键词搜索引擎有哪些平台
  • 福建百川建设有限公司网站郑州手机软件开发公司
  • 盐城企业做网站多少钱88建网站
  • 南京网站制作报价wordpress主题 yusi
  • 北京建网站已备案网站新增接入
  • 做搬家服务网站问卷调查的目的房产网签是什么意思