]>
Commit | Line | Data |
---|---|---|
3e65cfbd SB |
1 | #ifndef syn_h |
2 | #define syn_h | |
3 | ||
1686d5bf | 4 | service_t *syn; |
3e65cfbd SB |
5 | |
6 | void (*syn_report)(char *, ...); | |
92d07997 | 7 | void (*syn_report2)(unsigned int, char *, ...); |
b56c9b7a | 8 | void (*syn_debug)(int, char *, ...); |
3e65cfbd | 9 | |
bc7288fb | 10 | static 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 | 20 | const char* (*decode_hex_ip)(const char *); |
dc11be33 | 21 | const char* (*get_random_host_part)(user_t *); |
d0f72f63 | 22 | const char* (*encode_ident_for_host)(const char *); |
b45a5ca4 SB |
23 | time_t (*syn_parse_duration)(const char *); |
24 | const char* (*syn_format_expiry)(time_t); | |
345beb92 | 25 | |
bc7288fb | 26 | static inline void use_syn_util_symbols(module_t *m) |
345beb92 | 27 | { |
2497348d JK |
28 | MODULE_TRY_REQUEST_SYMBOL(m, decode_hex_ip, "syn/util", "_decode_hex_ip"); |
29 | MODULE_TRY_REQUEST_SYMBOL(m, get_random_host_part, "syn/util", "_get_random_host_part"); | |
30 | MODULE_TRY_REQUEST_SYMBOL(m, encode_ident_for_host, "syn/util", "_encode_ident_for_host"); | |
31 | MODULE_TRY_REQUEST_SYMBOL(m, syn_parse_duration, "syn/util", "_syn_parse_duration"); | |
32 | MODULE_TRY_REQUEST_SYMBOL(m, syn_format_expiry, "syn/util", "_syn_format_expiry"); | |
345beb92 SB |
33 | } |
34 | ||
854959a5 | 35 | kline_t* (*syn_find_kline)(const char *, const char *); |
33ca2ed9 SB |
36 | void (*syn_kline)(const char *, int, const char *, ...); |
37 | void (*syn_kill)(user_t *, const char *, ...); | |
345beb92 | 38 | void (*syn_kill2)(user_t *, const char *, const char *, ...); |
33ca2ed9 | 39 | void (*syn_kill_or_kline)(user_t *, int, const char *, ...); |
854959a5 | 40 | |
bc7288fb | 41 | static inline void use_syn_kline_symbols(module_t *m) |
854959a5 | 42 | { |
b918d5d9 SB |
43 | MODULE_TRY_REQUEST_SYMBOL(m, syn_find_kline, "syn/kline", "_syn_find_kline"); |
44 | MODULE_TRY_REQUEST_SYMBOL(m, syn_kline, "syn/kline", "_syn_kline"); | |
45 | MODULE_TRY_REQUEST_SYMBOL(m, syn_kill, "syn/kline", "_syn_kill"); | |
46 | MODULE_TRY_REQUEST_SYMBOL(m, syn_kill2, "syn/kline", "_syn_kill2"); | |
47 | MODULE_TRY_REQUEST_SYMBOL(m, syn_kill_or_kline, "syn/kline", "_syn_kill_or_kline"); | |
854959a5 SB |
48 | } |
49 | ||
41bf8d8d SB |
50 | typedef struct |
51 | { | |
52 | const char *ip; | |
53 | user_t *u; | |
e27c00bd | 54 | int added; |
41bf8d8d SB |
55 | } syn_kline_check_data_t; |
56 | ||
9d4dc4ef SB |
57 | // This in user_t.flags means the user connected through a facility of some sort, |
58 | // so our gateway-cloak-enforcement needs to take effect. | |
59 | #define SYN_UF_FACILITY_USER 0x80000000 | |
d2b5e766 | 60 | #define SYN_UF_NO_GATEWAY_IP 0x40000000 |
9d4dc4ef | 61 | |
6e89586c | 62 | #include "syn_hooktypes.h" |
3e65cfbd SB |
63 | |
64 | #endif |