WEB开发网
开发学院网络安全黑客技术 如何阅读源代码(2) 阅读

如何阅读源代码(2)

 2006-07-04 20:27:44 来源:WEB开发网   
核心提示: 略过去一大串代码,不用看了,如何阅读源代码(2)(5),肯定是计数器清0,在主程序中,比如对于CLF文件(WWW日志),处理html, htm, cgi文件if (log_type == LOG_FTP) { /* disable stuff for ftp logs */ ntop_en

略过去一大串代码,不用看了,肯定是计数器清0。在主程序中,接下来是:
if (page_type==NULL) /* check if page types present */
  {
  if ((log_type == LOG_CLF) || (log_type == LOG_SQUID))
  {
   add_nlist("htm*" ,&page_type); /* if no page types specified, we */
   add_nlist("cgi" ,&page_type); /* use the default ones here... */
   if (!isinlist(page_type,html_ext)) add_nlist(html_ext,&page_type);
  }
  else add_nlist("txt" ,&page_type); /* FTP logs default to .txt */
  }

page_type这个变量在前面见过,
case 'P': add_nlist(optarg,&page_type); break; /* page view types

根据在最开始读过的README文件,这个page_type是用来定义处理的页面的类型的。在README文件中,
-P name Page type. This is the extension of files you consider to
   be pages for Pages calculations (sometimes called 'pageviews').
   The default is 'htm*' and 'cgi' (plus whatever HTMLExtension
   you specified if it is different). Don't use a period!

我们在程序中也可以看到,如果没有在命令行中或者config文件中指定,则根据处理的日志文件的类型来添加缺省的文件类型。比如对于CLF文件(WWW日志),处理html, htm, cgi文件
if (log_type == LOG_FTP)
  {
  /* disable stuff for ftp logs */
  ntop_entry=ntop_exit=0;
  ntop_search=0;
  }
  else
  .....

这一段是对于FTP的日志格式,设置搜索列表。  for (i=0;i {
  sm_htab[i]=sd_htab[i]=NULL; /* initalize hash tables */
  um_htab[i]=NULL;
  rm_htab[i]=NULL;
  am_htab[i]=NULL;
  sr_htab[i]=NULL;
  }

上一页  1 2 3 4 5 

Tags:如何 阅读 源代码

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接