| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- #ifndef _CFG_H
- #define _CFG_H
- #ifdef HAVE_CONFIG_H
- # include "config.h"
- #endif
- #define CFGF_GLOBAL 1 /* Accessible as .config */
- #define CFGF_LOCAL 2 /* Accessible as .botconfig */
- typedef struct cfg_entry {
- char *name;
- int flags;
- char *gdata;
- char *ldata;
- void (*globalchanged) (struct cfg_entry *, char *oldval, int *valid);
- void (*localchanged) (struct cfg_entry *, char *oldval, int *valid);
- #ifdef HUB
- void (*describe) (struct cfg_entry *, int idx);
- #endif /* HUB */
- } cfg_entry_T;
- extern struct cfg_entry CFG_MOTD, CFG_CMDPREFIX, CFG_BADCOOKIE, CFG_MANUALOP, CFG_MDOP,
- CFG_MOP, CFG_FORKINTERVAL, CFG_CHANSET, CFG_SERVERS, CFG_SERVERS6,
- CFG_NICK, CFG_REALNAME, CFG_INBOTS, CFG_LAGTHRESHOLD, CFG_OPREQUESTS, CFG_OPTIMESLACK,
- CFG_OPBOTS, CFG_INBOTS, CFG_SERVPORT;
- #if defined(S_AUTHHASH) || defined(S_DCCAUTH)
- extern struct cfg_entry CFG_AUTHKEY;
- #endif /* S_AUTHHASH || S_DCCAUTH */
- #ifdef S_MSGCMDS
- extern struct cfg_entry CFG_MSGOP, CFG_MSGPASS, CFG_MSGINVITE, CFG_MSGIDENT;
- #endif /* S_MSGCMDS */
- #ifdef G_MEAN
- extern struct cfg_entry CFG_MEANDEOP, CFG_MEANKICK, CFG_MEANBAN;
- #endif /* G_MEAN */
- #ifdef S_LASTCHECK
- extern struct cfg_entry CFG_LOGIN;
- #endif /* S_LASTCHECK */
- #ifdef S_HIJACKCHECK
- extern struct cfg_entry CFG_HIJACK;
- #endif /* S_HIJACKCHECK */
- #ifdef S_ANTITRACE
- extern struct cfg_entry CFG_TRACE;
- #endif /* S_ANTITRACE */
- #ifdef S_PROMISC
- extern struct cfg_entry CFG_PROMISC;
- #endif /* S_PROMISC */
- #ifdef S_PROCESSCHECK
- extern struct cfg_entry CFG_BADPROCESS, CFG_PROCESSLIST;
- #endif /* S_PROCESSCHECK */
- #ifdef S_AUTOLOCK
- struct cfg_entry CFG_FIGHTTHRESHOLD;
- #endif /* S_AUTOLOCK */
- void set_cfg_str(char *, char *, char *);
- void add_cfg(struct cfg_entry *);
- void got_config_share(int, char *, int);
- void userfile_cfg_line(char *);
- void trigger_cfg_changed();
- #ifdef S_DCCPASS
- int check_cmd_pass(const char *, char *);
- int has_cmd_pass(const char *);
- void set_cmd_pass(char *, int);
- extern struct cmd_pass *cmdpass;
- #endif /* S_DCCPASS */
- extern char cmdprefix;
- extern int cfg_count, cfg_noshare;
- extern struct cfg_entry **cfg;
- #define OP_BOTS (CFG_OPBOTS.gdata ? atoi(CFG_OPBOTS.gdata) : 1)
- #define IN_BOTS (CFG_INBOTS.gdata ? atoi(CFG_INBOTS.gdata) : 1)
- #define LAG_THRESHOLD (CFG_LAGTHRESHOLD.gdata ? atoi(CFG_LAGTHRESHOLD.gdata) : 15)
- #define OPREQ_COUNT (CFG_OPREQUESTS.gdata ? atoi( CFG_OPREQUESTS.gdata ) : 2)
- #define OPREQ_SECONDS (CFG_OPREQUESTS.gdata ? atoi( strchr(CFG_OPREQUESTS.gdata, ':') + 1 ) : 5)
- #define OP_TIME_SLACK (CFG_OPTIMESLACK.gdata ? atoi(CFG_OPTIMESLACK.gdata) : 60)
- #define msgop CFG_MSGOP.ldata ? CFG_MSGOP.ldata : CFG_MSGOP.gdata ? CFG_MSGOP.gdata : ""
- #define msgpass CFG_MSGPASS.ldata ? CFG_MSGPASS.ldata : CFG_MSGPASS.gdata ? CFG_MSGPASS.gdata : ""
- #define msginvite CFG_MSGINVITE.ldata ? CFG_MSGINVITE.ldata : CFG_MSGINVITE.gdata ? CFG_MSGINVITE.gdata : ""
- #define msgident CFG_MSGIDENT.ldata ? CFG_MSGIDENT.ldata : CFG_MSGIDENT.gdata ? CFG_MSGIDENT.gdata : ""
- #ifdef S_AUTOLOCK
- #define kill_threshold (CFG_KILLTHRESHOLD.gdata ? atoi(CFG_KILLTHRESHOLD.gdata) : 0)
- #endif /* S_AUTOLOCK */
- #endif /* !_CFG_H */
|