Tcpdump源碼分析系列3:main函數繼續研究

繼續研究,這幾天看代碼看得頭暈腦脹。 tcp

cnt = -1;
//設置爲-1

device = NULL;
//設置爲NULL

infile = NULL;
//設置爲NULL

RFileName = NULL;
//設置爲NULL

VFileName = NULL;
//設置爲NULL

VFile = NULL;
//設置爲NULL

WFileName = NULL;
//設置爲NULL

dlt = -1;
//設置爲NULL 進程

~~~~~~~~~~~~~~~ get

if ((cp = strrchr(argv[0], '/')) != NULL)
program_name = cp + 1;
else
program_name = argv[0];
//指向進程名
//自定義檢查點:  1 2 3


if (abort_on_misalignment(ebuf, sizeof(ebuf)) < 0)
error("%s", ebuf);
//自定義檢查點:  1 2 3 it

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ file

while (
(op = getopt(argc, argv, "aAb" B_FLAG "c:C:d" D_FLAG "eE:fF:G:hHi:" I_FLAG j_FLAG J_FLAG "KlLm:M:nNOpqr:Rs:StT:u" U_FLAG "V:vw:W:xXy:Yz:Z:")
) != -1)的做用是對參數進行分析提取。 gc

~~~~~~~~~~ error

case 'a':
/* compatibility for old -a */
break;
//若是是a--->break;
//自定義檢查點:  1 2 3





case 'A':
++Aflag;
break;
//設置Aflag增長1
//自定義檢查點:  1 2 3



case 'b':
++bflag;
break;
//自定義檢查點:  1 2 3
top

這也沒啥好講的,很簡單! vi

其實下面都是些參數,假設咱們啓動tcpdump,並且不帶任何參數, while

那一切就很簡單分析了。

~~~~~~~~~~~~~~~~~~~~~~~

相關文章
相關標籤/搜索