X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=include%2Fircd_features.h;h=42c54ac94bf933fb2c2842aebc79206e76621070;hb=refs%2Fheads%2Fupstream-ssl;hp=b1e0cc585d941cbb2167aeeff69fda04a6c09d4e;hpb=03b8f45e5712f9d4a46dc03f695dd9ac5426626e;p=ircu2.10.12-pk.git diff --git a/include/ircd_features.h b/include/ircd_features.h index b1e0cc5..42c54ac 100644 --- a/include/ircd_features.h +++ b/include/ircd_features.h @@ -17,13 +17,20 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - * $Id$ + */ +/** @file + * @brief Public interfaces and declarations for dealing with configurable features. + * @version $Id$ */ struct Client; struct StatDesc; +extern struct Client his; + +/** Contains all feature settings for ircu. + * For documentation of each, see doc/readme.features. + */ enum Feature { /* Misc. features */ FEAT_LOG, @@ -49,8 +56,10 @@ enum Feature { FEAT_HIDDEN_IP, FEAT_CONNEXIT_NOTICES, FEAT_OPLEVELS, + FEAT_ZANNELS, FEAT_LOCAL_CHANNELS, FEAT_TOPIC_BURST, + FEAT_DISABLE_GLINES, /* features that probably should not be touched */ FEAT_KILLCHASETIMELIMIT, @@ -62,7 +71,6 @@ enum Feature { FEAT_HANGONGOODLINK, FEAT_HANGONRETRYDELAY, FEAT_CONNECTTIMEOUT, - FEAT_TIMESEC, FEAT_MAXIMUM_LINKS, FEAT_PINGFREQUENCY, FEAT_CONNECTFREQUENCY, @@ -73,6 +81,7 @@ enum Feature { FEAT_IPCHECK_CLONE_LIMIT, FEAT_IPCHECK_CLONE_PERIOD, FEAT_IPCHECK_CLONE_DELAY, + FEAT_CHANNELLEN, /* Some misc. default paths */ FEAT_MPATH, @@ -80,36 +89,37 @@ enum Feature { FEAT_PPATH, /* Networking features */ - FEAT_VIRTUAL_HOST, FEAT_TOS_SERVER, FEAT_TOS_CLIENT, FEAT_POLLS_PER_LOOP, FEAT_IRCD_RES_RETRIES, FEAT_IRCD_RES_TIMEOUT, FEAT_AUTH_TIMEOUT, + FEAT_ANNOUNCE_INVITES, /* features that affect all operators */ - FEAT_CRYPT_OPER_PASSWORD, FEAT_CONFIG_OPERCMDS, - FEAT_LIST_CHAN, /* HEAD_IN_SAND Features */ FEAT_HIS_SNOTICES, FEAT_HIS_SNOTICES_OPER_ONLY, - FEAT_HIS_DESYNCS, FEAT_HIS_DEBUG_OPER_ONLY, FEAT_HIS_WALLOPS, FEAT_HIS_MAP, FEAT_HIS_LINKS, FEAT_HIS_TRACE, - FEAT_HIS_STATS_l, + FEAT_HIS_STATS_a, FEAT_HIS_STATS_c, - FEAT_HIS_STATS_g, - FEAT_HIS_STATS_h, - FEAT_HIS_STATS_k, + FEAT_HIS_STATS_d, + FEAT_HIS_STATS_e, FEAT_HIS_STATS_f, + FEAT_HIS_STATS_g, FEAT_HIS_STATS_i, FEAT_HIS_STATS_j, + FEAT_HIS_STATS_J, + FEAT_HIS_STATS_k, + FEAT_HIS_STATS_l, + FEAT_HIS_STATS_L, FEAT_HIS_STATS_M, FEAT_HIS_STATS_m, FEAT_HIS_STATS_o, @@ -117,8 +127,6 @@ enum Feature { FEAT_HIS_STATS_q, FEAT_HIS_STATS_R, FEAT_HIS_STATS_r, - FEAT_HIS_STATS_d, - FEAT_HIS_STATS_e, FEAT_HIS_STATS_t, FEAT_HIS_STATS_T, FEAT_HIS_STATS_u, @@ -128,10 +136,13 @@ enum Feature { FEAT_HIS_STATS_x, FEAT_HIS_STATS_y, FEAT_HIS_STATS_z, + FEAT_HIS_STATS_IAUTH, FEAT_HIS_WHOIS_SERVERNAME, FEAT_HIS_WHOIS_IDLETIME, + FEAT_HIS_WHOIS_LOCALCHAN, FEAT_HIS_WHO_SERVERNAME, FEAT_HIS_WHO_HOPCOUNT, + FEAT_HIS_MODEWHO, FEAT_HIS_BANWHO, FEAT_HIS_KILLWHO, FEAT_HIS_REWRITE, @@ -144,6 +155,7 @@ enum Feature { /* Misc. random stuff */ FEAT_NETWORK, FEAT_URL_CLIENTS, + FEAT_URLREG, FEAT_LAST_F }; @@ -160,7 +172,7 @@ extern int feature_get(struct Client* from, const char* const* fields, extern void feature_unmark(void); extern void feature_mark(void); -extern void feature_report(struct Client* to, struct StatDesc* sd, int stat, +extern void feature_report(struct Client* to, const struct StatDesc* sd, char* param); extern int feature_int(enum Feature feat);