]> jfr.im git - irc/freenode/syn.git/blame - syn.h
masks.c: add help files
[irc/freenode/syn.git] / syn.h
CommitLineData
3e65cfbd
SB
1#ifndef syn_h
2#define syn_h
3
1686d5bf 4service_t *syn;
3e65cfbd
SB
5
6void (*syn_report)(char *, ...);
92d07997 7void (*syn_report2)(unsigned int, char *, ...);
b56c9b7a 8void (*syn_debug)(int, char *, ...);
3e65cfbd 9
bc7288fb 10static inline void use_syn_main_symbols(module_t *m)
3e65cfbd 11{
b918d5d9
SB
12 MODULE_TRY_REQUEST_SYMBOL(m, syn_report, "syn/main", "syn_report");
13 MODULE_TRY_REQUEST_SYMBOL(m, syn_report2, "syn/main", "syn_report2");
14 MODULE_TRY_REQUEST_SYMBOL(m, syn_debug, "syn/main", "syn_debug");
4f46b336 15 service_t **syn_tmp;
b918d5d9 16 MODULE_TRY_REQUEST_SYMBOL(m, syn_tmp, "syn/main", "syn");
4f46b336 17 syn = *syn_tmp;
3e65cfbd
SB
18}
19
345beb92
SB
20const char* (*decode_hex_ip)(const char *);
21const char* (*get_random_host_part)();
b45a5ca4
SB
22time_t (*syn_parse_duration)(const char *);
23const char* (*syn_format_expiry)(time_t);
345beb92 24
bc7288fb 25static inline void use_syn_util_symbols(module_t *m)
345beb92 26{
b918d5d9
SB
27 MODULE_TRY_REQUEST_SYMBOL(m, decode_hex_ip, "syn/util", "decode_hex_ip");
28 MODULE_TRY_REQUEST_SYMBOL(m, get_random_host_part, "syn/util", "get_random_host_part");
29 MODULE_TRY_REQUEST_SYMBOL(m, syn_parse_duration, "syn/util", "syn_parse_duration");
30 MODULE_TRY_REQUEST_SYMBOL(m, syn_format_expiry, "syn/util", "syn_format_expiry");
345beb92
SB
31}
32
854959a5 33kline_t* (*syn_find_kline)(const char *, const char *);
33ca2ed9
SB
34void (*syn_kline)(const char *, int, const char *, ...);
35void (*syn_kill)(user_t *, const char *, ...);
345beb92 36void (*syn_kill2)(user_t *, const char *, const char *, ...);
33ca2ed9 37void (*syn_kill_or_kline)(user_t *, int, const char *, ...);
854959a5 38
bc7288fb 39static inline void use_syn_kline_symbols(module_t *m)
854959a5 40{
b918d5d9
SB
41 MODULE_TRY_REQUEST_SYMBOL(m, syn_find_kline, "syn/kline", "_syn_find_kline");
42 MODULE_TRY_REQUEST_SYMBOL(m, syn_kline, "syn/kline", "_syn_kline");
43 MODULE_TRY_REQUEST_SYMBOL(m, syn_kill, "syn/kline", "_syn_kill");
44 MODULE_TRY_REQUEST_SYMBOL(m, syn_kill2, "syn/kline", "_syn_kill2");
45 MODULE_TRY_REQUEST_SYMBOL(m, syn_kill_or_kline, "syn/kline", "_syn_kill_or_kline");
854959a5
SB
46}
47
41bf8d8d
SB
48typedef struct
49{
50 const char *ip;
51 user_t *u;
e27c00bd 52 int added;
41bf8d8d
SB
53} syn_kline_check_data_t;
54
9d4dc4ef
SB
55// This in user_t.flags means the user connected through a facility of some sort,
56// so our gateway-cloak-enforcement needs to take effect.
57#define SYN_UF_FACILITY_USER 0x80000000
d2b5e766 58#define SYN_UF_NO_GATEWAY_IP 0x40000000
9d4dc4ef 59
6e89586c 60#include "syn_hooktypes.h"
3e65cfbd
SB
61
62#endif