This is ShadowIRCd 6.1, Copyright (c) 2005-2010 ShadowIRCd team. See LICENSE for licensing details (GPL v2). -- shadowircd-6.1.0 new configuration options - general::static_quit - Quit message to display for all users (not opers). - general::no_part_messages - If this option is set to no, the ircd will not display PART messages/reasons from users. - general::true_no_oper_flood - Turns off *ALL* flood protection for opers. Instead of command flooding being 4x what it is for a user with no_oper_flood, there is no limit at all. This option also allows opers to flood channels/users so if you do set it, be extremely careful. - serverinfo::helpchan and helpurl - These are 2 config options that tell users, when they do /quote help (with no extra parameters) the official network help channel and a special URL for help. If these options are disabled, the users will just get the help index and that's it on /quote help. new commands - CYCLE #channel - server-side CYCLE, also called HOP in some clients/servers. Parts the user from the given channel, then joins them to it immediately after. Enabled by loading extensions/m_cycle. opers - Override no longer alows overriding opers to talk through +q, +m, etc. If you need to talk through one of these modes, its recommended to remove the offending mode or give yourself voice/ops. - OLIST now shows channel modes so opers can easily see which channels are +s and see which channels have oper-only channel modes set. - RESTART and DIE now can be executed remotely. See the appropriate helpfiles for details. - All module management commands (MODLOAD, MODLIST, MODUNLOAD, MODRELOAD and MODRESTART) can be executed remotely. See the appropriate helpfile for details. - OMODE can now set and unset +ah. - OJOIN now works with !#channel and %#channel. - Staff channelmodes (+AO) now require chanops to set. - OPERHOST option added to SET. You can now use SET to change the default operhost that operators get upon opering up, though like the general::default_operhost config option it will not override the operator::vhost config option. other - Added a strip_unprintable function to make evasion of cmodes +G and +K less trivial. - Massive helpfile updates. - Added SVSJOIN s2s command. This allows things like atheme's ns_ajoin to work on shadowircd. - Added BAN stuff (propogated bans on burst) from charybdis trunk. This can be disabled and the old behavior can be used by setting the general::use_propogated_bans option to no. - The --enable-small-net configure option is now enabled by default. If you wish to disable small net mode, pass --disable-small-net to configure. - New channel mode adding API has been added from charybdis trunk. - NOTICE/PRIVMSG @#channel and +#channel now go to admin/halfop as well as chanop. -- shadowircd-6.0.0 new modes - Add umode +C (no CTCP). - Add umode +V, users with this mode set will never recieve channel invites from other users. - Add umode +B which identifies users as being bots in /whois. - Add umode +G which disallows users from messaging you unless you're both on at least one channel together. This can be "overridden" with /accept. - Add cmode +T which blocks all notices to the channel. - Add cmode +D which blocks all actions (/me's) from being sent to the channel. - Add cmode +E which disallows channel ops from kicking users. - Add cmode +N which disallows users from changing their nick while they're on a channel with this mode set. - Add cmode +K (norepeat) which will block repeated messages, regardless of who they're from. - Add cmode +G which blocks messages containing 50% or more capital letters from being sent to the channel. - Add cmode +J which disallows a kicked user from rejoining within 'X' seconds of them being kicked, where 'X' is the variable of the channel::kick_no_rejoin_time configuration option. - Add cmodes +a and +h (admin and halfop, respectively). There are 2 extra prefixes to more finely-grain the status of staff members in your channels. They can be enabled or disabled in the configuration file with the options channel::use_halfop and channel::use_admin. new configuration options - auth::autojoin - This option will specify what channels users in a matching auth {} block will automatically join on connect to your server/network. - auth::autojoin_opers - This option will specify what channels opers in a matching auth {} block will automatically join on oper up (/oper). - channel::cycle_host_change - This option defines whether or not users will cycle (part and rejoin) the channels they're in when their host changes. This can be annoying to some people, but disabling it can cause client desyncs. - channel::host_in_topic - This option defines whether or not a host setter's full host or just their nick will be shown on /TOPIC. - channel::use_local_channels - With this option, you can enable/disable support for local channels on your server/network. - channel::exemptchanops - This option defines what channel modes channel operators are exempt from, channel modes usable in this option are: cCDTNGK. - general::secret_channels_in_whois - This option defines whether or not opers can see secret channels that a user is in when whoising them. Secret channels will show up in the whois prefixed with *. If this option is disabled, opers will still be able to see secret channels a user is in with the /SPYWHOIS command. - Enabled a few popular extensions by default, added a few extensions to the example config files that were missing, add a few more services aliases by default, enable ip_cloaking by default and get rid of all the old ip_cloaking modules. opers - Users' umodes are shown when you whois them. - swhois support - Adds a mostly free-form line of text to opers' whois if one is set in their operator {} block. - custom operstring - Instead of showing the IRC operator or IRC administrator oper strings, you can customize what it shows in each oper's operator {} block. - host-on-oper - Give a vhost to operators upon oper up. Can be defined generally, then the general option may be overridden by each operator {} block. - operoverride - Oper override works very differently in ShadowIRCd compared to all other IRCd's which support oper override. In ShadowIRCd, to be able to override, you must have the oper:override privledge and you must then set umode +p on yourself. The p umode will automatically expire and un-set itself after a time set in the configuration option general::expire_override_time. - immune - Adds cmode +M. Opers can set this on a channel (even if they don't have ops) without the channel's ops or other users seeing (only opers see this mode at all.) It disallows anyone in the channel from kicking opers. - OACCEPT/callerid override - In ShadowIRCd 6, opers no longer can simply PM users that have umodes +g or +G set and the oper is not on their accept list. To allow opers to still be able to PM users in this situation, OACCEPT has been added. OACCEPT is a new extension that enables the command /oaccept which adds a piece of metadata to that use which will allow you to PM them. other - Changed default NICKLEN to 31 (from 15) to fit more closely with other IRCd's. - Rebrand many things from Charybdis to ShadowIRCd. - Move the m_force module to extensions. - Add a metadata framework. Currently used for swhois, custom operstring, OACCEPT, cmode +J, cmode +K. -- charybdis-3.2.0 server protocol - Apply +z to messages blocked by +b and +q as well. (new EOPMOD capab) - Add new topic command ETB, allowing services to set topic+setter+ts always. (new EOPMOD capab) - The slash ('/') character is now allowed in spoofs. user - Add can_kick hook, based on the ircd-seven one. - Add cmode +C (no CTCP) from ircd-seven. - Flood checking has been reworked. - Fix op-moderate (cmode +z) for channel names with '@'. - Add CERTFP support, allowing users to connect with an SSL client certificate and propagating the certificate fingerprint to other servers. Services packages can use this to identify users based on client certificates. - Maintain the list of recently used targets (for the target change anti-spam system) in most-recently-used order, overwriting the least recently used target with a new one. This should be friendlier to users without giving spambots anything. - Do not require target change slots for replying to the last five users to send a private message, notice or invite. - Apply target change restrictions to /invite. - Apply umode +g/+R restrictions to /invite, with the difference that instead of sending " is messaging you" the invite is let through since that is just as noisy. oper - Add /rehash throttles to clear throttling. - Send all server notices resulting from a remote /rehash to the oper. - '\s' for space is now part of the matching, not a substitution at xline time, fixing various issues with it. - Display o:line "nickname" in oper-up server notices. - Fix sendq exceeded snotes for servers. - SCAN UMODES: default list-max to 500, like a global WHO. - Ignore directory names in MODRELOAD to avoid crashing if it is a core module and the path is incorrect. - Tweaks to spambot checks. config - Add channel::only_ascii_channels config option to restrict channel names to printable ascii only. - Add channel::resv_forcepart, forcibly parts local users on channel RESV, default enabled. misc - New mkpasswd from ircd-ratbox. - Check more system calls for errors and handle the errors. - Various ssld/libratbox bugfixes from ircd-ratbox. [some MERGED] - Fix fd passing on FreeBSD/amd64 and possibly Solaris/sparc. [MERGED] - Various documentation improvements. [some MERGED] - Fix some crash issues. [MERGED] - Add bandb from ircd-ratbox, which stores permanent dlines/klines/xlines/resvs in an sqlite database instead of a flatfile and does the storage in a helper process. -- charybdis-3.1.0 - Remove TS5 support. No TS5 servers are permitted in a network with charybdis 3.1.0 or newer, except jupes. - Replace oper flags by privilege sets (privsets). This adds an extra level of indirection between oper flags and operator blocks. /stats O (capital O) shows the configured privsets. - Update libratbox and ssld from upstream and use it better. - Add auth_user to auth{}. This allows specifying a username:password instead of just a password in PASS, so that a fixed user@host is not necessary for a specific auth{} block. - Add need_ssl to auth{} and operator{}. This makes these blocks reject the user if not connected via SSL. - Allow modules to provide simple channel modes without parameter. - Remove restrictions on CNAME in the resolver. - Make the resolver remember nonresponsive nameservers. - Move nick collision notices from +s to +k. - Add additional information to various server notices about server connections. - Show throttle information in /stats t. - Show rejectcache and throttle information in /testline. - Show oper reason in /testline. - Allow opers to see other users' umodes with /mode . - SCAN UMODES GLOBAL NO-LIST MASK is no longer an operspy command. - Also apply floodcount to messages to remote clients (except services). - Remove user@server messages to local users. Sending such messages to remote servers is still possible, for securely messaging pseudoservers whether service{}'ed or not. The special oper-only syntax opers@server remains as well. - Allow /list on a named +p channel. A full /list already included +p channels. - Add operspy /topic. - For remote rehashes, send error messages to the requesting oper as well. - Disable autoconnect for a server with excessive TS delta. - Disallow invites to juped channels. - Warn about certain duplicate and redundant auth blocks. - Make PRIVMSG/NOTICE behave as CPRIVMSG/CNOTICE automatically if possible. - Allow +z messages from outside if a channel is -n. - Allow coloured part reasons in -c channels. - Add ircu-like WHOX support. This allows requesting specific information in /who and allows obtaining services login name for all users in a channel. XChat/Conspire use WHOX to update away status more efficiently. - Allow opers and shide_exempt users to see hopcounts even if flatten_links is on. - Rework ip_cloaking. - Add the IP address to userlog, as in ircd-ratbox 3.0. - Split cidr_bitlen into cidr_ipv4_bitlen and cidr_ipv6_bitlen. - Allow using ziplinks with SSL connections. This is not as efficient as using OpenSSL's built in compression, but also works with older versions of OpenSSL. - Fix an off by one error with zipstats processing, which could overwrite a variable with NULL causing a crash on some systems. - Document some extensions in charybdis-oper-guide. - Add more server protocol documentation. - Add m_sendbans extension, SENDBANS command to propagate xlines and resvs manually. - Add chm_sslonly extension, cmode +S for SSL/TLS only channels. - Add chm_operonly extension, cmode +O for IRCop only channels. - Add chm_adminonly extension, cmode +A for server admin only channels. - Various code cleanups. -- charybdis-3.0.4 - Fix a crash on certain recent versions of Ubuntu. - Allow 127.x.y.z for DNSBL replies instead of just 127.0.0.x. - Various documentation improvements. -- charybdis-3.0.3 - Fix IPv6 D:lines - Fix rejectcache and unknown_count. - Fix genssl.sh. - Fix ident for SSL/TLS connections. - Fix SSL/TLS bugs for servers with more than about 100 connections. - Small bugfixes. -- charybdis-3.0.2 - Improve OLIST extension error messages. - Improve some kline error checking. - Avoid timing out clients if we are still waiting for a DNSBL lookup. - Fix resolver hangs with epoll. - Fix compilation without zlib. -- charybdis-3.0.1 - Fix occasional hung clients with kqueue. - Fix a rare ssld crash. - Fix a bug that could cause incorrect connect failure reasons to be reported. - Make the IRCd work on MacOS X again. -- charybdis-3.0.0 - Port the IRCd to libratbox, which has improved our portability and allows us to reuse low-level code instead of maintaining our own. - Change configuration of maximum number of clients to ircd-ratbox 3 way. - Add adminwall from ircd-ratbox, as an extension. - Add client and server-to-server SSL, read example.conf for setup. - Replace servlink with ssld (also for ziplinks). - A new extban, $z, has been added for ssl users (extensions/extb_ssl.so). - A new compatibility channel mode, +R, has been added, it sets +q/-q $~a (extensions/chm_operonly_compat.so). This is similar to the +R seen in ircd-seven. - A new compatibility channel mode, +S, has been added, it sets +b/-b $~z (extensions/chm_sslonly_compat.so). - A new compatibility channel mode, +O, has been added, it sets +iI/-iI $o (extensions/chm_operonly_compat.so). - Add remote D:lines. Note that these are not enabled by default. - Remove EFnet-style G:lines. Noone appears to use these. - Remove idle time checking (auto disconnecting users idle too long). - Display a notice to clients when the IRCd is shut down using SIGTERM. - Some error messages have been clarified to enhance usability. - Close the link to servers that send invalid nicks (e.g. nicklen mismatches). Formerly the users were killed from the network. - Enable topicburst by default in connect{}. - Fix a potential desync which can happen with oper override. - Remove "deopped" flag (TS5 legacy). - Use 127.0.0.1 as nameserver if none can be found in /etc/resolv.conf. - Only accept 127.0.0.x as a dnsbl listing. - Change cloaking module (same as 2.2.1, different from 2.2.0). - Make some more server notices about failed remote connect attempts network wide. - Make some server notices about flooders and TS delta network wide. - Remove redundant " had been connected for