| 71 |
|
GLINE_TYPE, |
| 72 |
|
CRESV_TYPE, |
| 73 |
|
NRESV_TYPE, |
| 74 |
< |
GDENY_TYPE |
| 74 |
> |
GDENY_TYPE, |
| 75 |
> |
SERVICE_TYPE |
| 76 |
|
} ConfType; |
| 77 |
|
|
| 78 |
|
struct split_nuh_item |
| 133 |
|
char * reason; |
| 134 |
|
char * oper_reason; |
| 135 |
|
char * user; /* user part of user@host */ |
| 135 |
– |
char * fakename; /* Mask name */ |
| 136 |
|
time_t hold; /* Hold action until this time (calendar time) */ |
| 137 |
|
struct ConfItem *class_ptr; /* Class of connection */ |
| 138 |
|
int aftype; |
| 207 |
|
#define CONF_ULINE 0x00002000 |
| 208 |
|
#define CONF_EXEMPTDLINE 0x00004000 |
| 209 |
|
#define CONF_GLINE 0x00008000 |
| 210 |
+ |
#define CONF_SERVICE 0x00010000 |
| 211 |
|
|
| 212 |
|
#define CONF_SERVER_MASK CONF_SERVER |
| 213 |
|
#define CONF_CLIENT_MASK (CONF_CLIENT | CONF_OPERATOR | CONF_SERVER_MASK) |
| 245 |
|
#define CONF_FLAGS_NOMATCH_IP 0x00000020 |
| 246 |
|
#define CONF_FLAGS_EXEMPTKLINE 0x00000040 |
| 247 |
|
#define CONF_FLAGS_NOLIMIT 0x00000080 |
| 248 |
< |
#define CONF_FLAGS_IDLE_LINED 0x00000100 |
| 248 |
> |
/* 0x00000100 */ |
| 249 |
|
#define CONF_FLAGS_SPOOF_IP 0x00000200 |
| 250 |
|
#define CONF_FLAGS_SPOOF_NOTICE 0x00000400 |
| 251 |
|
#define CONF_FLAGS_REDIR 0x00000800 |
| 252 |
|
#define CONF_FLAGS_EXEMPTGLINE 0x00001000 |
| 253 |
< |
#define CONF_FLAGS_RESTRICTED 0x00002000 |
| 253 |
> |
/* 0x00002000 */ |
| 254 |
|
#define CONF_FLAGS_CAN_FLOOD 0x00100000 |
| 255 |
|
#define CONF_FLAGS_NEED_PASSWORD 0x00200000 |
| 256 |
|
/* server flags */ |
| 257 |
|
#define CONF_FLAGS_ALLOW_AUTO_CONN 0x00004000 |
| 258 |
< |
#define CONF_FLAGS_LAZY_LINK 0x00008000 |
| 258 |
> |
/* 0x00008000 */ |
| 259 |
|
#define CONF_FLAGS_ENCRYPTED 0x00010000 |
| 260 |
|
#define CONF_FLAGS_COMPRESSED 0x00020000 |
| 261 |
|
#define CONF_FLAGS_TEMPORARY 0x00040000 |
| 275 |
|
#define IsConfExemptLimits(x) ((x)->flags & CONF_FLAGS_NOLIMIT) |
| 276 |
|
#define IsConfExemptGline(x) ((x)->flags & CONF_FLAGS_EXEMPTGLINE) |
| 277 |
|
#define IsConfExemptResv(x) ((x)->flags & CONF_FLAGS_EXEMPTRESV) |
| 277 |
– |
#define IsConfIdlelined(x) ((x)->flags & CONF_FLAGS_IDLE_LINED) |
| 278 |
|
#define IsConfDoIdentd(x) ((x)->flags & CONF_FLAGS_DO_IDENTD) |
| 279 |
|
#define IsConfDoSpoofIp(x) ((x)->flags & CONF_FLAGS_SPOOF_IP) |
| 280 |
|
#define IsConfSpoofNotice(x) ((x)->flags & CONF_FLAGS_SPOOF_NOTICE) |
| 281 |
– |
#define IsConfRestricted(x) ((x)->flags & CONF_FLAGS_RESTRICTED) |
| 281 |
|
#define IsConfEncrypted(x) ((x)->flags & CONF_FLAGS_ENCRYPTED) |
| 282 |
|
#define SetConfEncrypted(x) ((x)->flags |= CONF_FLAGS_ENCRYPTED) |
| 283 |
|
#define ClearConfEncrypted(x) ((x)->flags &= ~CONF_FLAGS_ENCRYPTED) |
| 340 |
|
|
| 341 |
|
char *servlink_path; |
| 342 |
|
char *egdpool_path; |
| 343 |
+ |
char *service_name; |
| 344 |
|
|
| 345 |
|
MessageFile motd; |
| 346 |
|
MessageFile opermotd; |
| 349 |
|
unsigned char compression_level; |
| 350 |
|
int gline_min_cidr; |
| 351 |
|
int gline_min_cidr6; |
| 352 |
– |
int dot_in_ip6_addr; |
| 352 |
|
int dots_in_ident; |
| 353 |
|
int failed_oper_notice; |
| 354 |
|
int anti_spam_exit_message_time; |
| 383 |
|
int pace_wait_simple; |
| 384 |
|
int gline_time; |
| 385 |
|
int gline_logging; |
| 387 |
– |
int idletime; |
| 386 |
|
int oper_only_umodes; |
| 387 |
|
int oper_umodes; |
| 388 |
|
int max_targets; |
| 487 |
|
extern dlink_list rxconf_items; |
| 488 |
|
extern dlink_list rkconf_items; |
| 489 |
|
extern dlink_list leaf_items; |
| 490 |
+ |
extern dlink_list service_items; |
| 491 |
|
extern dlink_list temporary_klines; |
| 492 |
|
extern dlink_list temporary_dlines; |
| 493 |
|
extern dlink_list temporary_glines; |
| 564 |
|
|
| 565 |
|
#define TK_SECONDS 0 |
| 566 |
|
#define TK_MINUTES 1 |
| 567 |
< |
extern time_t valid_tkline(char *, int); |
| 567 |
> |
extern time_t valid_tkline(const char *, int); |
| 568 |
|
extern int match_conf_password(const char *, const struct AccessItem *); |
| 569 |
|
|
| 570 |
|
#define NOT_AUTHORIZED (-1) |