X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?p=ngircd-alex.git;a=blobdiff_plain;f=src%2Fngircd%2Fconf.h;h=9378d17c35f9c27436f6c885c141aed68fbbcbed;hp=70de20af9edbb6321b739eac123124baa74e5575;hb=HEAD;hpb=64c265cf33d09cfb9ab5e7d0bbc8033dc85f7c64 diff --git a/src/ngircd/conf.h b/src/ngircd/conf.h index 70de20af..9378d17c 100644 --- a/src/ngircd/conf.h +++ b/src/ngircd/conf.h @@ -29,7 +29,7 @@ /** * Configured IRC operator. - * Please note the the name of the IRC operaor and his nick have nothing to + * Please note that the name of the IRC operator and his nick have nothing to * do with each other! The IRC operator is only identified by the name and * password configured in this structure. */ @@ -61,6 +61,7 @@ typedef struct _Conf_Server ng_ipaddr_t dst_addr[2]; /**< List of addresses to connect to */ #ifdef SSL_SUPPORT bool SSLConnect; /**< Establish connection using SSL? */ + bool SSLVerify; /**< Verify server certificate using CA? */ #endif char svs_mask[CLIENT_ID_LEN]; /**< Mask of nicknames that should be treated and counted as services */ @@ -76,6 +77,8 @@ struct SSLOptions { array ListenPorts; /**< Array of listening SSL ports */ array KeyFilePassword; /**< Key file password */ char *CipherList; /**< Set SSL cipher list to use */ + char *CAFile; /**< Trusted CA certificates file */ + char *CRLFile; /**< Certificate revocation file */ }; #endif @@ -83,11 +86,13 @@ struct SSLOptions { /** Pre-defined channels */ struct Conf_Channel { char name[CHANNEL_NAME_LEN]; /**< Name of the channel */ - char modes[CHANNEL_MODE_LEN]; /**< Initial channel modes */ + char *modes[512]; /**< Initial channel modes to evaluate */ char key[CLIENT_PASS_LEN]; /**< Channel key ("password", mode "k" ) */ char topic[COMMAND_LEN]; /**< Initial topic */ char keyfile[512]; /**< Path and name of channel key file */ + bool autojoin; /**< 1 to make all users autojoin this channel */ unsigned long maxusers; /**< User limit for this channel, mode "l" */ + unsigned int modes_num; /**< Number of channel modes to evaluate */ }; @@ -203,6 +208,9 @@ GLOBAL bool Conf_PAM; /** Don't require all clients to send a password an to be PAM authenticated */ GLOBAL bool Conf_PAMIsOptional; +/** The service name to use for PAM */ +GLOBAL char Conf_PAMServiceName[MAX_PAM_SERVICE_NAME_LEN]; + /** Disable all CTCP commands except for /me ? */ GLOBAL bool Conf_ScrubCTCP; @@ -218,7 +226,7 @@ GLOBAL bool Conf_ConnectIPv6; /** Try to connect to remote systems using the IPv4 protocol (true) */ GLOBAL bool Conf_ConnectIPv4; -/** Idle timout (seconds), after which the daemon should exit */ +/** Idle timeout (seconds), after which the daemon should exit */ GLOBAL int Conf_IdleTimeout; /** Maximum number of simultaneous connections to this server */ @@ -236,6 +244,9 @@ GLOBAL unsigned int Conf_MaxNickLength; /** Maximum number of channels returned to /list */ GLOBAL int Conf_MaxListSize; +/** Maximum seconds to add per "penalty". -1 = unlimited. */ +GLOBAL time_t Conf_MaxPenaltyTime; + #ifndef STRICT_RFC /** Require "AUTH PING-PONG" on login */ @@ -273,9 +284,7 @@ GLOBAL bool Conf_SSLInUse PARAMS((void)); /* Password required by WEBIRC command */ GLOBAL char Conf_WebircPwd[CLIENT_PASS_LEN]; -#ifdef DEBUG GLOBAL void Conf_DebugDump PARAMS((void)); -#endif #endif