⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 debugl.c

📁 网络爬虫程序
💻 C
字号:
/***************************************************************************//*    This code is part of WWW grabber called pavuk                        *//*    Copyright (c) 1997 - 2001 Stefan Ondrejicka                          *//*    Distributed under GPL 2 or later                                     *//***************************************************************************/#include "config.h"#include "debugl.h"#include "tools.h"#include "string.h"#ifdef DEBUGdebug_level_type cfg_debug_levels[] = {  {DLV1, "html", gettext_nop("HTML parsers")},  {DLV2, "protos", gettext_nop("Server responses")},  {DLV3, "protoc", gettext_nop("Client requests")},  {DLV4, "procs", gettext_nop("Procedure calling")},  {DLV5, "locks", gettext_nop("File locking")},  {DLV6, "net", gettext_nop("Networking code")},  {DLV7, "misc", gettext_nop("Miscelanous")},  {DLV8, "user", gettext_nop("Extended user infos")},  {DLV9, "mtlock", gettext_nop("Multithreading - locking")},  {DLV10, "mtthr", gettext_nop("Multithreading - threads")},  {DLV11, "protod", gettext_nop("POST request data")},  {DLV12, "limits", gettext_nop("Limiting conditions")},  {DLV13, "ssl", gettext_nop("SSL informations")},  {0, NULL, NULL}};int debug_level_parse(char *str){  int dl = 0;  char *p = str;  int l, i;  bool_t found;  while(*p)  {    p += strspn(p, ",");    l = strcspn(p, ",");    found = FALSE;    for(i = 0; cfg_debug_levels[i].id; i++)    {      if(!strncasecmp(p, cfg_debug_levels[i].option, l) &&        (l == strlen(cfg_debug_levels[i].option)))      {        found = TRUE;        dl |= cfg_debug_levels[i].id;        break;      }    }    if(!found && !strncasecmp(p, "all", l))    {      dl = 0x7fffffff;    }    else if(!found)    {      char *ep;      i = strtol(p, &ep, 0);      if((ep - p) != l)      {        xprintf(0, gettext("Bad debug level selection : %s\n"), str);        return -1;      }      else        dl |= i;    }    p += l;  }  return dl;}char *debug_level_construct(int level, char *strbuf){  bool_t frst = TRUE;  int i;  if(!level)  {    strcpy(strbuf, "0");    return strbuf;  }  for(i = 0; cfg_debug_levels[i].id; i++)  {    if(!(cfg_debug_levels[i].id & level))      continue;    if(!frst)      strcat(strbuf, ",");    strcat(strbuf, cfg_debug_levels[i].option);    frst = FALSE;  }  return strbuf;}#endif#ifndef __GNUC__void DEBUG_HTML(char *str, ...){#ifdef DEBUG  va_list args;  va_start(args, str);  xvadebug(DLV1, str, &args);  va_end(args);#endif}void DEBUG_PROTOS(char *str, ...){#ifdef DEBUG  va_list args;  va_start(args, str);  xvadebug(DLV2, str, &args);  va_end(args);#endif}void DEBUG_PROTOC(char *str, ...){#ifdef DEBUG  va_list args;  va_start(args, str);  xvadebug(DLV3, str, &args);  va_end(args);#endif}void DEBUG_PROCS(char *str){#ifdef DEBUG  xdebug(DLV4, "calling - %s\n", str);#endif}void DEBUG_PROCE(char *str){#ifdef DEBUG  xdebug(DLV4, "exiting - %s\n", str);#endif}void DEBUG_LOCKS(char *str, ...){#ifdef DEBUG  va_list args;  va_start(args, str);  xvadebug(DLV5, str, &args);  va_end(args);#endif}void DEBUG_NET(char *str, ...){#ifdef DEBUG  va_list args;  va_start(args, str);  xvadebug(DLV6, str, &args);  va_end(args);#endif}void DEBUG_MISC(char *str, ...){#ifdef DEBUG  va_list args;  va_start(args, str);  xvadebug(DLV7, str, &args);  va_end(args);#endif}void DEBUG_USER(char *str, ...){#ifdef DEBUG  va_list args;  va_start(args, str);  xvadebug(DLV8, str, &args);  va_end(args);#endif}void DEBUG_MTLOCK(char *str, ...){#ifdef DEBUG  va_list args;  va_start(args, str);  xvadebug(DLV9, str, &args);  va_end(args);#endif}void DEBUG_MTTHR(char *str, ...){#ifdef DEBUG  va_list args;  va_start(args, str);  xvadebug(DLV10, str, &args);  va_end(args);#endif}void DEBUG_PROTOD(char *str, ...){#ifdef DEBUG  va_list args;  va_start(args, str);  xvadebug(DLV11, str, &args);  va_end(args);#endif}void DEBUG_LIMITS(char *str, ...){#ifdef DEBUG  va_list args;  va_start(args, str);  xvadebug(DLV12, str, &args);  va_end(args);#endif}void DEBUG_SSL(char *str, ...){#ifdef DEBUG  va_list args;  va_start(args, str);  xvadebug(DLV13, str, &args);  va_end(args);#endif}#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -