X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=include%2Fs_conf.h;h=775dcf78daa40b71fc24cc8e4a40acb4052117c8;hb=c13fbd5384338be6c99d529db9b6ba787afcb1c0;hp=e58d9faf188b0f7143375b2d3c2324c678adcb2d;hpb=de82d3dbd2135e3772433577a16ce752a13426bd;p=ircu2.10.12-pk.git diff --git a/include/s_conf.h b/include/s_conf.h index e58d9fa..775dcf7 100644 --- a/include/s_conf.h +++ b/include/s_conf.h @@ -32,6 +32,8 @@ struct Message; #define CONF_OPERATOR 0x0020 /**< ConfItem describes an Operator block */ #define CONF_UWORLD 0x8000 /**< ConfItem describes a Uworld server */ +#define CONF_AUTOCONNECT 0x0001 /**< Autoconnect to a server */ + /** Indicates ConfItem types that count associated clients. */ #define CONF_CLIENT_MASK (CONF_CLIENT | CONF_OPERATOR | CONF_SERVER) @@ -63,8 +65,10 @@ struct ConfItem time_t hold; /**< Earliest time to attempt an outbound connect on this ConfItem. */ int dns_pending; /**< A dns request is pending. */ + int usessl; /**< establish SSL connection */ + int flags; /**< Additional modifiers for item. */ int addrbits; /**< Number of bits valid in ConfItem::address. */ - struct Privs privs; /**< Privileges for opers. */ + struct Privs privs; /**< Privileges for all users in this class. */ /** Used to detect if a privilege has been set by this ConfItem. */ struct Privs privs_dirty; }; @@ -80,17 +84,16 @@ struct qline /** Local K-line structure. */ struct DenyConf { struct DenyConf* next; /**< Next DenyConf in #denyConfList. */ - char* hostmask; /**< Mask for realname, IP or hostname. */ + char* hostmask; /**< Mask for IP or hostname. */ char* message; /**< Message to send to denied users. */ char* usermask; /**< Mask for client's username. */ + char* realmask; /**< Mask for realname. */ struct irc_in_addr address; /**< Address for IP-based denies. */ unsigned int flags; /**< Interpretation flags for the above. */ unsigned char bits; /**< Number of bits for ipkills */ }; #define DENY_FLAGS_FILE 0x0001 /**< Comment is a filename */ -#define DENY_FLAGS_IP 0x0002 /**< K-line by IP address */ -#define DENY_FLAGS_REALNAME 0x0004 /**< K-line by real name */ /** Local server configuration. */ struct LocalConf { @@ -100,6 +103,10 @@ struct LocalConf { char* location1; /**< First line of location information. */ char* location2; /**< Second line of location information. */ char* contact; /**< Admin contact information. */ + + char* sslcertfile; /**< SSL certificate file. */ + char* sslkeyfile; /**< SSL private key file. */ + char* sslcafile; /**< SSL CA file. */ }; enum { @@ -134,6 +141,8 @@ struct nick_host { char nick[1]; /**< start of nick\@server string */ }; +#define SMAP_FAST 1 /**< Command does not have MFLG_SLOW. */ + /** Target set for a service pseudo-command. */ struct s_map { struct s_map *next; /**< Next element in #GlobalServiceMapList. */ @@ -141,6 +150,7 @@ struct s_map { char *name; /**< Text name of the mapping. */ char *command; /**< Command name to use. */ char *prepend; /**< Extra text to prepend to user's text. */ + unsigned int flags; /**< Bitwise map of SMAP_* flags. */ struct nick_host *services; /**< Linked list of possible targets. */ }; @@ -180,6 +190,8 @@ extern int find_kill(struct Client *cptr); extern const char *find_quarantine(const char* chname); extern void lookup_confhost(struct ConfItem *aconf); extern void conf_parse_userhost(struct ConfItem *aconf, char *host); +extern struct ConfItem *conf_debug_iline(const char *client); +extern void free_mapping(struct s_map *smap); extern void yyerror(const char *msg);