]> jfr.im git - irc/rqf/shadowircd.git/blobdiff - NEWS
Cleanup cmode help files and add cmodes provided by extensions.
[irc/rqf/shadowircd.git] / NEWS
diff --git a/NEWS b/NEWS
index e11f0ccb1359b83f2f1c23570381627c62bd9628..e45e97a70ccec05271aad18b79f0d6ca2ec37166 100644 (file)
--- a/NEWS
+++ b/NEWS
-This is charybdis 3.0.0, Copyright (c) 2005-2008 Charybdis team.
+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.
+
+new commands
+- /CYCLE - server-side /CYCLE, also called /HOP in some clients/servers.
+
+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.
+
+other
+- Added a strip_unprintable function to make evasion of cmodes +G and +K
+  less trivial.
+
+-- 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 <user> 
+  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 "<user> 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 <nick>.
+- SCAN UMODES GLOBAL NO-LIST MASK <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
 
-- The IRCd has been ported to libratbox, which has improved our portability.
-- Client SSL and Server-to-Server SSL are now available, read the example.conf
-  for setup.
-- A new extban, $z, has been added for ssl users.
+- 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
-  +b/-b $~a. This is equivilant to the +R seen in ircd-seven.
+  +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.
+  +b/-b $~z (extensions/chm_sslonly_compat.so).
 - A new compatibility channel mode, +O, has been added, it sets
-  +iI/-iI $o.
-- The /privs command has been added which shows you your privileges and
-  access level.
+  +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 "<server> had been connected for <time>" server notice.
+- Add resv oper privilege to control /resv, /unresv and cmode +L and +P,
+  enabled by default.
+- Add mass_notice oper privilege to control global notices and /wallops,
+  enabled by default.
+- Rework unkline/undline/unxline/unresv so they show the exact item removed
+  and do not rehash bans.
+- Show opers a list of recently (<24hrs) split servers in /map.
+- Add /privs command, shows effective privileges of a client.
 
 -- charybdis-2.2.0