mirror of
https://github.com/matrix-construct/construct
synced 2024-12-29 08:54:02 +01:00
379 lines
17 KiB
Text
379 lines
17 KiB
Text
This is charybdis 2.2.0, Copyright (c) 2005-2007 Charybdis team.
|
|
See LICENSE for licensing details (GPL v2).
|
|
|
|
-- charybdis-2.2.0
|
|
|
|
- The I/O code has been reworked, file descriptor metadata is stored in a
|
|
hashtable and the maximum number of clients can now be set in ircd.conf.
|
|
- Improve error checking and error messages for kline/dline/xline/resv files.
|
|
- Allow kline ipv6:address, unkline some.host and unkline ipv6:address
|
|
without *@.
|
|
- Add accountability (wallops, log) to OKICK extension.
|
|
- Add opernick to OPME/OMODE/OJOIN log messages.
|
|
- Add use_forward option, allows disabling cmode +fFQ and umode +Q.
|
|
- Add keyword substitution to DNSBL reasons, making it possible to show
|
|
things like the user's IP address in the reason.
|
|
- Use sendto_one_notice() more.
|
|
- Server notices about kills now include the victim's nick!user@host instead
|
|
of just nick.
|
|
- Include real hostname in Closing Link message for unknown connections
|
|
that have sent USER, in particular banned users.
|
|
- Add some documentation about the SASL client protocol.
|
|
- Change spambot, flooder and jupe joiner notices from host to orighost.
|
|
- Remove the last remains of server hostmasking (this made it possible to
|
|
have multiple servers with similar names appear as a single server).
|
|
- Keep bitmasks of modularized umodes reserved forever to the letter,
|
|
avoiding problems when reloading umode modules in a different order.
|
|
- Fix -logfile.
|
|
- Update to the new revision (v8) of the TS6 spec, this fixes problems with
|
|
joins reversing certain mode changes crossing them. This interoperates
|
|
with older versions.
|
|
- Put "End of Channel Quiet List" at the end of +q lists.
|
|
- Fix invisible count getting desynched from reality if the act of opering
|
|
up sets -i or +i.
|
|
- Don't leak auth{} spoofed IP addresses in +f notices.
|
|
- Shorten quit/part/kick reasons to avoid quit reasons overflowing the
|
|
client exiting server notice (from TOPICLEN to 260).
|
|
- Fix some cases where 10 char usernames lose their final character.
|
|
- Move username check after xline and dnsbl checks, so it will not complain
|
|
to opers about clients who are xlined or blacklisted anyway (both of
|
|
which silently reject).
|
|
- Remove invite_ops_only config option, forcing it to YES.
|
|
- Allow /invite (but not invex) to override +r, +l, +j in addition to +i.
|
|
- Add several new extensions, such as createoperonly.
|
|
- Merge whois notice extensions into one and move it from snomask +y to +W.
|
|
|
|
-- charybdis-2.1.2
|
|
|
|
- Fix bug that could cause all hostmangled users to be exempted when a
|
|
single ban exception existed on a channel.
|
|
- Tweak \s code a little.
|
|
- Add a minor clarification to the SGML docs.
|
|
- Avoid truncation in ip_cloaking (by removing components on the other side).
|
|
Note that this may cause channel +bqeI modes set on such very long hosts
|
|
to no longer match.
|
|
|
|
-- charybdis-2.1.1
|
|
|
|
- Search the shortest list (user's/channel's) when looking up channel
|
|
memberships.
|
|
- Make the SID-collision notice look right under all conditions.
|
|
- Move kills from services from +s to +k snomask.
|
|
- When no_tilde is present on an auth{} block, check the non-tilde version
|
|
of the user@host against k:lines as well.
|
|
- Put full reason in the SQUIT reason when a server is rejected for
|
|
insufficient parameters being passed to a command.
|
|
- Don't redirect users to an existing domain, irc.fi.
|
|
- Improve communication of servlink-related error messages.
|
|
|
|
-- charybdis-2.1.0
|
|
|
|
- Our official website is now http;//www.ircd-charybdis.org/.
|
|
- Make RPL_ISUPPORT (005 numeric) modularizable.
|
|
- Also do forwarding if the channel limit (+l) is exceeded.
|
|
- Don't count opers on service{} servers in /lusers.
|
|
- Allow servers to send to @#chan and +#chan.
|
|
- Allow +S clients (services) to send to channels and @/+ channels always.
|
|
- Allow normal match() on IP address also in /masktrace.
|
|
- Add new testmask from ratbox 2.2. Allows matches on nick, ip and gecos
|
|
in addition to user and host, and is fully analogous to masktrace.
|
|
The numeric has changed from 724 to 727 and fields in it have changed.
|
|
- Show IP addresses to opers in /whowas.
|
|
- Add extb_extgecos extban option ($x:nick!user@host#gecos), from sorcery
|
|
modules.
|
|
- Add extb_canjoin extban option ($j:#channel), matches if the user is banned
|
|
from the other channel.
|
|
- Allow opers to /who based on realhost.
|
|
- Allow opers to /masktrace, /testmask based on realhost.
|
|
- Add general::operspy_dont_care_user_info, limits operspy accountability to
|
|
channel-related information.
|
|
- Make host mangling more reliable.
|
|
- Prevent ban evasion by enabling/disabling host mangling.
|
|
- Add EUID, sends real host and services account in the same command as other
|
|
user information.
|
|
- Make it possible to send CHGHOST without ENCAP (fixes problems with old
|
|
services).
|
|
- Allow service{} servers to manipulate the nick delay table (for "nickserv
|
|
enforcement", aka SVSHOLD).
|
|
- Send server notices about connections initiated by remote opers network wide.
|
|
- Fix too early truncation of JOIN channel list.
|
|
- Make the newconf system available to modules.
|
|
- Add /stats s to the hurt module to list active hurts.
|
|
- Add general::servicestring, shown in /whois for opered services (+oS).
|
|
- Show real host/IP behind dynamic spoof in /whois to the user themselves
|
|
and opers.
|
|
- Document option to disable nick delay.
|
|
- Improve logging of server connections.
|
|
- Clean up handling of hostnames in connect blocks.
|
|
- Remove support for resolving ip6.int, people should be using ip6.arpa.
|
|
- Unbreak --disable-balloc (useful for debugging with tools like valgrind).
|
|
- Make Solaris 10 I/O ports code compile.
|
|
- Add WEBIRC module to allow showing the real host/IP of CGI:IRC users.
|
|
- Comment out blacklist{} block in example confs, as AHBL requires
|
|
notification before use.
|
|
- Fix some bugs relating to the resolver.
|
|
|
|
-- charybdis-2.0.0
|
|
|
|
- Replace ADNS with a new smaller resolver from ircu and hybrid.
|
|
- Make services shortcuts (/chanserv etc) configurable in ircd.conf.
|
|
- Add extban: extensible +bqeI matching via modules. Syntax is
|
|
$<type>[:<data>]. By default no modules are loaded.
|
|
- Add DNS blacklist checking.
|
|
- Change operator{} block user@host from host to orighost. This means that
|
|
services/+h spoofs do not work in operator{} blocks; auth{} spoofs still
|
|
work. Check your operator{} blocks!
|
|
- Split contrib/ into extensions/ and unsupported/.
|
|
- Change CHGHOST do show the change to all other clients on common channels
|
|
with quit/join/mode.
|
|
- Add /rehash nickdelay to clear out the nickdelay tables.
|
|
- Glines are now disabled in the example confs.
|
|
- Show more error messages on stderr.
|
|
- Add OMODE command to extensions/ for easier oper mode hacking.
|
|
- Add HURT system to extensions/; this shuns clients matching certain host/ip
|
|
unless and until they identify to services. Mainly intended for SorceryNet.
|
|
- Show SASL success and failure counts in /stats t.
|
|
- Allow more frequent autoconnects to servers.
|
|
- Messaging services by nickname no longer uses target change slots.
|
|
- Only accept SASL from servers in a service{} block.
|
|
- New auth{} flag need_sasl to reject users who haven't done SASL
|
|
authentication.
|
|
- Expand blah.blah and blah:blah to *!*@... instead of ...!*@* for bans
|
|
- Don't allow opers to fake locops/operwall to +w.
|
|
- Documentation updates.
|
|
- Many bugfixes.
|
|
|
|
-- charybdis-1.1.0
|
|
|
|
- Implement SAFELIST.
|
|
- Incorporate ircu's match() algorithm.
|
|
- Improve usermode modularization.
|
|
- Seperate server notices into a seperate snomask, freeing up many
|
|
usermodes to be used.
|
|
- Add support for SIGNON originating from Hyperion2.
|
|
- Modularize many server notices into seperate modules.
|
|
- Add hooks for can_join and can_create_channel.
|
|
- Add support for SASL authentication.
|
|
- Add introduce_user hook for adding new messages when a user is bursted.
|
|
- Move a large part of the ircd into libcharybdis.
|
|
- Don't complain "unknown user mode" if a user tries to unset
|
|
a mode they do not have access to.
|
|
- Update our challenge specification to the challenge implementation in
|
|
ratbox 2.2 for interoperability.
|
|
- Make +f notices network-wide (local host, global host,
|
|
global user@host, local class), other notices tied to +f remain local.
|
|
- Allow ENCAP REALHOST outside of netburst.
|
|
- Add general::global_snotices option to make server notices be
|
|
network-wide or not.
|
|
- Add sno_farconnect.c to contrib, provides farconnect support.
|
|
Could be useful for BOPM.
|
|
- Add sno_routing.c which displays information about netsplits, netjoins
|
|
and the clients affected by them.
|
|
- Add CHANTRACE and TRACEMASK commands from ratbox 3.0
|
|
- Use IsOperAdmin() instead of IsAdmin() when sending admin-only messages,
|
|
that way hidden admins get them too.
|
|
- Add m_error to core_module_table, somehow it was missing.
|
|
- Correct a format string bug that occurs when a read error is
|
|
received.
|
|
- Add some logging in places where we drop servers and only notify
|
|
server operators.
|
|
- Track hostmask limits based on a client's original host, if
|
|
available.
|
|
- Move HIDE_SPOOF_IPS into the general {} block in ircd.conf
|
|
|
|
-- charybdis-1.0.3
|
|
|
|
- Fix /invite UID leak. (Found by logiclrd@EFnet.)
|
|
- Incorporate ratbox bugfixes for the MONITOR system.
|
|
- Made show_ip() less braindead.
|
|
- Show real errno if we fail to connect to a server.
|
|
- Don't disclose server IP's when a connection fails.
|
|
- Do not show the channels a service is sitting in.
|
|
- Reverted the aline code from hybrid-7.2
|
|
- Make sure TS6 services are recognized properly if connected remotely.
|
|
- Tweak something in services support for cyrix boxes.
|
|
|
|
-- charybdis-1.0.2
|
|
|
|
- Fix propagation of an empty SJOIN (permanant channels).
|
|
- Fix an exploit involving a malformed /trace request.
|
|
- Don't display a blank RPL_WHOISCHANNELS in a remote whois request.
|
|
- Allow modules to provide new usermodes.
|
|
- On a nickname collision, change the collided nick to their unique ID,
|
|
if general::collision_fnc is enabled in the config.
|
|
- Don't allow UID lookups in /monitor + and /monitor s
|
|
- Fix a garbage issue with channel mode +j.
|
|
- Apply proper capability flags to the proper server in me_gcap().
|
|
- Use find_named_person() instead of find_person() in a nick collision.
|
|
- Prevent UID disclosure in cmode setting.
|
|
- Prevent UID disclosure to remote clients in /kick.
|
|
- Do not allow users to query via /whois <server> <UID>.
|
|
- Don't allow local users to use UID's in local usermode changes.
|
|
- Propagate +q lists on netjunction.
|
|
- Clear +q lists on a lowerTS SJOIN.
|
|
- Ported a generic k/d/x-line parser from hybrid-7.2 which resulted in
|
|
duplicate code reduction.
|
|
- Fix linebuf raw code to not truncate lines longer than 512 bytes;
|
|
improves ziplink reliability on net junction.
|
|
- Use find_named_person() vs find_person() in services alias code.
|
|
- Fix issue where channel forwarding token can be lost on net junction.
|
|
- Fix empty channel desync issues involving +P.
|
|
- Remove unused non-ENCAP CHGHOST support.
|
|
- Use TS6 form for SQUIT wallops.
|
|
- Propagate nickname changes for remote clients in TS6 form if possible,
|
|
even if sent in TS5 format.
|
|
- Only clear oper_only_umodes for local clients on deoper.
|
|
|
|
-- charybdis-1.0.1
|
|
|
|
- Display logged in status on non-local clients too.
|
|
- Documentation updates
|
|
- Fix a bug with forward target authorization.
|
|
- Fix a bug with mode propagation (+Q/+F).
|
|
- Change ERR_NOSUCHNICK to ERR_SERVICESOFFLINE in services aliases.
|
|
- Add remote rehashing.
|
|
- Document service { } blocks (u:lines on ircu).
|
|
- Document identify_service and identify_command in reference.conf.
|
|
|
|
-- charybdis-1.0
|
|
- Implement channel mode +L for channel list limit exemptions.
|
|
- Implement channel mode +P primarily as a status mode, permanant
|
|
channel -- this is usually enforced via services registrations.
|
|
- Change behaviour of /stats p: now displays all staff members instead
|
|
of local ones only.
|
|
- Make oper_list global, add local_oper_list for local traffic.
|
|
- Strip control codes from parts and quits.
|
|
- Add channel mode +c which strips control codes from messages sent to
|
|
the channel.
|
|
- Add channel mode +g which enables free use of the /invite command.
|
|
- Add channel mode +z which sends rejected messages to channel ops.
|
|
Could be useful for Q&A sessions or other similar events.
|
|
- Add channel quietmasks. These are recommended over the use of channel
|
|
bans used to remove a user's ability to participate in the channel.
|
|
- Add channel join throttling mode, +j. Used to throttle channel join
|
|
traffic, i.e. join/part flood attacks. Syntax: +j <joins>:<timeslice>
|
|
- Improvements to channel_modes(), from shadowircd -- allows for
|
|
better construction of the mode string.
|
|
- Use the undernet throttle notice instead of bancache message when
|
|
dealing with rejected clients. (stolen from ircu2.10.12)
|
|
- Add channel forwarding, via channel mode +f, behaves similarly to
|
|
dancer-ircd version.
|
|
- Update example.conf to reflect AthemeNET changes. Original ratbox
|
|
config is now reference.conf.
|
|
- Services account names are now tracked globally.
|
|
- Add channel mode +Q which disables the effects of channel forwarding
|
|
on a temporary basis.
|
|
- Add channel mode +F which allows anybody to disable forwarding target
|
|
authorisation, voluntarily on their channels.
|
|
- Make wallops behave like normal wallops.
|
|
- Add services aliases: /ns, /cs, /os, /nickserv, /chanserv, /operserv.
|
|
- Add simple hack that enables use of server password for automatic
|
|
identify.
|
|
|
|
-- ircd-ratbox-2.1.5+datadrain
|
|
- fix a buffer overflow and an unterminated buffer when TS6 forces us
|
|
to remove bans
|
|
- fix potential junk SJOIN generation when splitting it into multiple
|
|
lines
|
|
- make servlink check for an uncompressed ERROR
|
|
- change NICKLEN to 15.
|
|
- change TOPICLEN to 390.
|
|
- force services extensions to be enabled always
|
|
- change patchlevel.h to get it's information from 'configure'
|
|
- add m_chghost.c, ghetto rigged hostcloaking module, using elite ENCAP
|
|
technique
|
|
|
|
-- ircd-ratbox-2.1.4
|
|
- fix minor time bug which occurs on december 31st
|
|
- dont drop a servers link when we get a malformed WHOIS
|
|
- disallow commas in channel keys
|
|
- fix compile problem with abort_list
|
|
- fix build on darwin
|
|
- fix compilation with gcc4
|
|
- userhost was only allowing 4 targets instead of 5
|
|
- invalidate channel ban cache on nickchange
|
|
- add TARGMAX to 005, detailing maximum targets for messages
|
|
- fix counting of clients on accept list when adding users
|
|
- use ID instead of name when bursting SJOIN to TS6 servers
|
|
- lower id in struct User, which was one byte bigger than it needs to be
|
|
|
|
-- ircd-ratbox-2.1.3
|
|
- removed sendq_eob as it just doesnt work on efnet
|
|
- dont allow MONITOR from an unregistered client
|
|
- add some uniqueness into the auth process for bopm
|
|
- fix resvs to check whether target server is us properly
|
|
- fix a core in cidr channel ban matching
|
|
- raise max temptime to a year
|
|
- fix cores when we receive extra params to NICK/UID
|
|
- remove no_oper_resvs, add resv_exempt auth flag
|
|
- fix flattened links
|
|
- clean up the accept code, and dont clear a users own list of accepted
|
|
clients on nickchange
|
|
- non-efnet:
|
|
- make services {}; blocks be displayed on stats U
|
|
- make services {}; blocks apply on rehash, you must now have only ONE
|
|
service {}; block, but you may have multiple name=""; entries within.
|
|
- only show services logged in info for local clients
|
|
|
|
-- ircd-ratbox-2.1.2
|
|
- fix missing end comment tag in example confs
|
|
- fix display problem with unauthorised conn notice
|
|
- remove some unused defines from INFO
|
|
- fix tabs for spaces in some helpfiles
|
|
- add in missing links_delay conf option
|
|
- fix cores under amd64
|
|
- disallow bans beginning with ':' over BMASK
|
|
- disallow bans with a space in chm_ban()
|
|
- stop counting hidden opers in stats p count output
|
|
- match() params of remote unresv were inverted, causing it to never match
|
|
- fix possibility of clients setting blank keys
|
|
- fix UID problems with trace
|
|
- raise default topiclen to 160
|
|
- add in forced nick change for ratbox-services, when compiled with
|
|
--enable-services
|
|
|
|
-- ircd-ratbox-2.1.1
|
|
- remove an 005 token to hack around the parser bug
|
|
- exempt users messaging themselves from target change
|
|
- disallow messaging towards UIDs
|
|
- add in doc/tgchange.txt
|
|
- move stats L back to RPL_STATSLINKINFO
|
|
- fix some minor auth problems
|
|
- properly store ipv6 ips when we're compiled for v4 only
|
|
- fix propagation of xline/resv
|
|
- sync remote kline reasons with form used for local klines
|
|
|
|
-- ircd-ratbox-2.1.0
|
|
- no changes
|
|
|
|
-- ircd-ratbox-2.1.0beta2
|
|
- fix a few compile warnings
|
|
- added multi-prefix clicap, for showing "@+" in NAMES/WHO replies
|
|
- remove split_delay, make split servers now work on how many servers have
|
|
issued EOB, rather than how many exist.
|
|
- server-side notify lists. See doc/monitor.txt
|
|
- fix undline core
|
|
- remove an unwanted space from beginning of second 005
|
|
- fix a potential core with the patricia when removing classes
|
|
- when we're handling global NAMES, dont output channels whose users are all
|
|
invisible
|
|
|
|
-- ircd-ratbox-2.1.0beta1
|
|
- No release notes, see doc/whats-new-2.1.txt
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
BUGS: Major bugs in this release are listed in BUGS
|
|
|
|
BUG REPORTS: If you run this code and encounter problems, you must report
|
|
via IRC to irc.atheme.org, #charybdis. For specific bugs you can use
|
|
http://bugs-meta.atheme.org/ (Charybdis project).
|
|
|
|
Please include a gdb backtrace and keep the core file, binaries and
|
|
modules in case the developers need them.
|
|
|
|
Other files recommended for reading: BUGS, README.FIRST, INSTALL
|
|
|
|
--------------------------------------------------------------------------------
|
|
$Id: NEWS 3496 2007-05-30 10:22:01Z jilles $
|
|
|