shell.h 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. #ifndef _SHELL_H
  2. #define _SHELL_H
  3. #ifdef HAVE_CONFIG_H
  4. #include "config.h"
  5. #endif /* HAVE_CONFIG_H */
  6. #define ERR_BINSTAT 1
  7. #define ERR_PASSWD 3
  8. #define ERR_WRONGBINDIR 4
  9. #define ERR_DATADIR 5
  10. #define ERR_TMPSTAT 8
  11. #define ERR_TMPMOD 9
  12. #define ERR_WRONGUID 12
  13. #define ERR_WRONGUNAME 13
  14. #define ERR_BADCONF 14
  15. #define ERR_BADBOT 15
  16. #define ERR_BADPASS 16
  17. #define ERR_BOTDISABLED 17
  18. #define ERR_NOBOTS 18
  19. #define ERR_NOBOT 19
  20. #define ERR_NOUSERNAME 20
  21. #define ERR_NOHOMEDIR 21
  22. #define ERR_NOTINIT 22
  23. #define ERR_MAX 23
  24. #define EMAIL_OWNERS BIT0
  25. #define DETECT_LOGIN 1
  26. #define DETECT_TRACE 2
  27. #define DETECT_PROMISC 3
  28. #define DETECT_PROCESS 4 /* NOT USED */
  29. #define DETECT_HIJACK 5
  30. #define DET_IGNORE 0
  31. #define DET_WARN 1
  32. #define DET_REJECT 2
  33. #define DET_DIE 3
  34. #define DET_SUICIDE 4
  35. #define DETECTED_LEN 8 /* 'suicide' is longest word */
  36. namespace bd {
  37. class Stream;
  38. }
  39. void check_maxfiles();
  40. void check_mypid();
  41. void clear_tmp();
  42. char *homedir(bool = 1);
  43. char *my_username();
  44. void expand_tilde(char **);
  45. int email(char *, char *, int);
  46. int shell_exec(char *, char *, char **, char **, bool = 0);
  47. int simple_exec(const char* argv[]);
  48. #ifndef CYGWIN_HACKS
  49. void check_last();
  50. void check_promisc();
  51. void check_trace(int);
  52. void check_crontab();
  53. void crontab_del();
  54. int crontab_exists(bd::Stream* = NULL, bool = 0);
  55. void crontab_create(int);
  56. void detected(int, const char *);
  57. #endif /* !CYGWIN_HACKS */
  58. void suicide(const char *);
  59. void werr(int) __attribute__((noreturn));
  60. const char *werr_tostr(int);
  61. int det_translate(const char *);
  62. const char *det_translate_num(int);
  63. char *shell_escape(const char *);
  64. int mkdir_p(const char *);
  65. extern bool clear_tmpdir;
  66. #endif /* _SHELL_H */