ec_error.c
上传用户:nilegod
上传日期:2007-01-08
资源大小:220k
文件大小:2k
源码类别:

网络截获/分析

开发平台:

C/C++

  1. /*
  2.     ettercap -- error handling module
  3.     Copyright (C) 2001  ALoR <alor@users.sourceforge.net>, NaGA <crwm@freemail.it>
  4.     This program is free software; you can redistribute it and/or modify
  5.     it under the terms of the GNU General Public License as published by
  6.     the Free Software Foundation; either version 2 of the License, or
  7.     (at your option) any later version.
  8.     This program is distributed in the hope that it will be useful,
  9.     but WITHOUT ANY WARRANTY; without even the implied warranty of
  10.     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  11.     GNU General Public License for more details.
  12.     You should have received a copy of the GNU General Public License
  13.     along with this program; if not, write to the Free Software
  14.     Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  15. */
  16. #include <stdio.h>
  17. #include <stdlib.h>
  18. #include <string.h>
  19. #include <stdarg.h>
  20. #include "include/ec_main.h"
  21. #ifdef HAVE_NCURSES
  22.     #include "include/ec_interface.h"
  23. #endif
  24. #ifdef DEBUG
  25.    #include "include/ec_debug.h"
  26. #endif
  27. // protos
  28. void Error_msg(char *message, ...);
  29. // ------------------------------
  30. void Error_msg(char *message, ...)
  31. {
  32.    va_list ap;
  33.    char errmsg[150];    // should be enough
  34. #ifndef HAVE_VSNPRINTF
  35. #errors "Must have vsnprintf()."
  36. #endif
  37.    va_start(ap, message);
  38.    vsnprintf(errmsg, 150, message, ap);
  39.    va_end(ap);
  40. #ifdef DEBUG
  41.       Debug_msg("Error_msg -- %s", errmsg);
  42. #endif
  43. #ifdef HAVE_NCURSES
  44.    if (!Options.normal && !strcmp(program_argv0, PROGRAM))
  45.       Interface_WExit(errmsg);
  46. #endif
  47.    fprintf(stderr, "nn%snn", errmsg);
  48.    exit(-1);
  49. }
  50. /* EOF */