cfg.h 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. #ifndef _CFG_H
  2. #define _CFG_H
  3. #ifdef HAVE_CONFIG_H
  4. # include "config.h"
  5. #endif
  6. #define CFGF_GLOBAL 1 /* Accessible as .config */
  7. #define CFGF_LOCAL 2 /* Accessible as .botconfig */
  8. typedef struct cfg_entry {
  9. char *name;
  10. int flags;
  11. char *gdata;
  12. char *ldata;
  13. void (*globalchanged) (struct cfg_entry *, char *oldval, int *valid);
  14. void (*localchanged) (struct cfg_entry *, char *oldval, int *valid);
  15. void (*describe) (struct cfg_entry *, int idx);
  16. } cfg_entry_T;
  17. extern struct cfg_entry CFG_MOTD, CFG_CMDPREFIX, CFG_BADCOOKIE, CFG_MANUALOP, CFG_MDOP, CFG_MOP, CFG_FORKINTERVAL, CFG_CHANSET;
  18. #if defined(S_AUTHHASH) || defined(S_DCCAUTH)
  19. extern struct cfg_entry CFG_AUTHKEY;
  20. #endif /* S_AUTHHASH || S_DCCAUTH */
  21. #ifdef S_MSGCMDS
  22. extern struct cfg_entry CFG_MSGOP, CFG_MSGPASS, CFG_MSGINVITE, CFG_MSGIDENT;
  23. #endif /* S_MSGCMDS */
  24. #ifdef G_MEAN
  25. extern struct cfg_entry CFG_MEANDEOP, CFG_MEANKICK, CFG_MEANBAN;
  26. #endif /* G_MEAN */
  27. #ifdef S_LASTCHECK
  28. extern struct cfg_entry CFG_LOGIN;
  29. #endif /* S_LASTCHECK */
  30. #ifdef S_HIJACKCHECK
  31. extern struct cfg_entry CFG_HIJACK;
  32. #endif /* S_HIJACKCHECK */
  33. #ifdef S_ANTITRACE
  34. extern struct cfg_entry CFG_TRACE;
  35. #endif /* S_ANTITRACE */
  36. #ifdef S_PROMISC
  37. extern struct cfg_entry CFG_PROMISC;
  38. #endif /* S_PROMISC */
  39. #ifdef S_PROCESSCHECK
  40. extern struct cfg_entry CFG_BADPROCESS, CFG_PROCESSLIST;
  41. #endif /* S_PROCESSCHECK */
  42. #ifdef HUB
  43. extern struct cfg_entry CFG_SERVERS, CFG_SERVERS6, CFG_NICK, CFG_REALNAME,
  44. CFG_INBOTS, CFG_LAGTHRESHOLD, CFG_OPREQUESTS, CFG_OPTIMESLACK;
  45. #ifdef S_AUTOLOCK
  46. struct cfg_entry CFG_FIGHTTHRESHOLD;
  47. #endif /* S_AUTOLOCK */
  48. #endif /* HUB */
  49. void set_cfg_str(char *, char *, char *);
  50. void add_cfg(struct cfg_entry *);
  51. void got_config_share(int, char *, int);
  52. void userfile_cfg_line(char *);
  53. void trigger_cfg_changed();
  54. #ifdef S_DCCPASS
  55. int check_cmd_pass(const char *, char *);
  56. int has_cmd_pass(const char *);
  57. void set_cmd_pass(char *, int);
  58. extern struct cmd_pass *cmdpass;
  59. #endif /* S_DCCPASS */
  60. extern char cmdprefix[];
  61. extern int cfg_count, cfg_noshare;
  62. extern struct cfg_entry **cfg;
  63. #endif /* !_CFG_H */