iwinfo的處理流程

2021-10-21 17:15:51 字數 2319 閱讀 5202

iwinfo函式的路徑

int main(int argc, char **ar**)

if (argc == 1)

globfree(&globbuf);

return 0;

} iw = iwinfo_backend(ar**[1]);

if (!iw)

for (i = 2; i < argc; i++) }

iwinfo_finish();

return 0;

}

入口檔案iwinfo_cli.c

入口函式 main

int main(int argc, char **ar**)

if (argc > 1 && argc < 3)   //判斷引數數量不夠就提示

iw = iwinfo_backend(ar**[1]); //入口

switch(ar**[2][0])    //資料展示部分

case 's':          //只匹配第乙個字母 所以用iwinfo ra0 s 也就等於 iwinfo ra0 scan

print_scanlist(iw, ar**[1]);

break;

從入口跟進去   iw = iwinfo_backend(ar**[1]);

ar**[1] 是裝置判斷

檔案 iwinfo_lib.c

const struct iwinfo_ops * iwinfo_backend(const char *ifname)

if (!strcmp(type, "ra"))

return &ra_ops;      //這裡以ra0跟進

else

檔案 include/iwinfo/ra.h

46 static const struct iwinfo_ops ra_ops = ;

檔案 iwinfo_ra.c

int ra_get_scanlist(const char *ifname, char *buf, int *len)

這裡就是和驅動的互動函式了

./os/linux/ap_ioctl.c:43:,

,,尋找一下iw_priv_type_char是什麼:什麼也不是

在找一下get_site_survey是個什麼:可以推測出是乙個輸入命令

具體檢視一下:

可以找到乙份沒什麼用途的文件檔案:

繼續查詢看看:來到了比較常見的檔案

轉到rtmp_ap_ioctlhandle的實現,這個函式出入作為case判斷條件的引數:rtpriv_ioctl_gsitesurvey

#ifdef ap_scan_support

case rtpriv_ioctl_gsitesurvey:

rtmp_ap_ioctlhandle(pad, wrq, cmd_rtpriv_ioctl_gsitesurvey, 0, null, 0);

break;

#endif /* ap_scan_support */

來到函式定義的位置:分析這個函式。了解一下這個pad結構體

同樣找到目標:

去往rtmpioctlgetsitesurvey函式的定義,分析一波:

然後找到這個函式:將資料寫入msg中

然後將msg轉存到使用者中

WFPdisable exe的處理流程

一直不知道如何關閉wfp windows file protection 進行反彙編了一下wfpdisable.exe,理出它的大概處理流程。hmodule hsfc loadlibary sfc.dll 這個地方在該程式中宣告的是對win2k sp4和winxp sp1適用,不知道對其他版本是否適...

訊息的處理流程

mfc控制項訊息,已經是封裝好的東西了,訊息型別分為多種,有wm開頭的windows訊息,還有自己通過新增的on command訊息等等 新增訊息,如果是wm訊息,就實現相應的虛函式,若是on command訊息就建立相應的訊息對映 選單訊息,工具欄訊息都是命令訊息,mfc中命令訊息的處理流程如下 ...

Bug的處理流程

軟體沒有實現產品的說明書所描述的功能 軟體實現了產品說明書描述不應有的功能 軟體執行了產品說明書沒講的操作 軟體沒有實現產品說明書沒講但應該實現的功能 從軟體測試員的角度來看,軟體難以理解 不易使用 執行緩慢,或者終端使用者認為不對 致命 一招斃命的缺陷,使你的系統無法執行,有造成資料洩漏的安全性問...