]>
Commit | Line | Data |
---|---|---|
1add004b | 1 | This is ShadowIRCd 6.2, Copyright (c) 2005-2010 ShadowIRCd team. |
212380e3 | 2 | See LICENSE for licensing details (GPL v2). |
1add004b JH |
3 | |
4 | -- shadowircd-6.2.0 | |
5 | ||
561ee87a JH |
6 | configuration |
7 | - add channel::hide_channel_below_users - Channels with a user count lower | |
8 | than the valude of this option will not be shown by default in /LIST. | |
9 | - add channel::admin_on_channel_create - If enabled, gives users creating | |
10 | new channels +ao in that channel instead of just +o. | |
11 | - add channel::disabledmodes - This allows opers to disallow users from | |
12 | using certain channelmodes. This is only read on startup and your services | |
13 | and remote servers must be configured the same otherwise desyncs will occur. | |
14 | - add many services aliases for new Atheme services. | |
15 | opers | |
16 | - when users get hit by a DNSBL, this is now shown in the snotes. | |
17 | other | |
1add004b JH |
18 | - change kicknorejoin to not be a config option and be hardcoded to 2 seconds |
19 | because a longer time is kind of pointless. | |
fe04020f JH |
20 | - Many new features and improvements from charybdis 3.3.0. See below for |
21 | information about all that. | |
561ee87a JH |
22 | code |
23 | - many bugfixes and various cleanups. | |
212380e3 | 24 | |
fe04020f JH |
25 | -- charybdis-3.3.0 |
26 | ||
27 | server protocol | |
28 | - Add new BAN command, for propagated network-wide bans (K/X:lines and RESVs). | |
29 | These will burst to new servers as they are introduced, and will stay in sync | |
30 | across the whole network (new BAN capab). | |
31 | - Add new MLOCK command, to implement ircd-side channel mode locks. This allows | |
32 | services to send out a list of mode letters for a given channel which may not | |
33 | be changed, preventing mode fights between services and client bots (new MLOCK | |
34 | capab). | |
35 | user | |
36 | - New RPL_QUIETLIST(728) and RPL_ENDOFQUIETLIST(729) numerics are used for the | |
37 | quiet (+q) list, instead of overloading the ban list numerics. | |
38 | - Users may no longer change the topic of a -t channel if they cannot send to | |
39 | it. | |
40 | - Add help for EXTBAN, describing the syntax of extended bans in general, as | |
41 | well as the most common types. | |
42 | - Changed AWAY messages are now propagated to other servers. Previously, AWAY | |
43 | was only propagated when the user was not already away. | |
44 | - Channel mode +c (and other places that disallow colour codes) now also strip | |
45 | ASCII 29 (mIRC 7 italics). | |
46 | - Add auto-accept for user mode +g (callerid): Messaging a user while set +g | |
47 | will automatically add them to your accept list. | |
48 | - Add target change for channels. It applies to unopped, unvoiced and unopered | |
49 | users. This has the effect of stopping spambots which join, message and part | |
50 | many channels at a time. | |
51 | - Show RPL_WHOISLOGGEDIN in /whowas as well as in /whois entries. This adds at | |
52 | most an additional 0.5MB of memory usage. | |
53 | oper | |
54 | config | |
55 | - Add general::use_propagated_bans to switch the new BAN system on or off. | |
56 | - Add general::default_ident_timeout, to control the timeout for identd (auth) | |
57 | connections. | |
58 | - Add channel::channel_target_change to switch the new channel target change limits | |
59 | on or off. | |
60 | - Fix class::number_per_ident so that it also applies to connections without | |
61 | identd. | |
62 | - Change the example sslport option to 6697, which is more standard than 9999. | |
63 | misc | |
64 | - The custom channel mode API has been rewritten, allowing these modules to work | |
65 | correctly when reloaded, or loaded from the config file. | |
66 | - The EFNet RBL is now recommended, instead of DroneBL. | |
67 | - Remove the unsupported modules directory. | |
68 | - Numerous bug fixes and code cleanups. | |
69 | - In mkpasswd, default to MD5 crypt instead of insecure DES. | |
70 | ||
745237f1 JH |
71 | -- shadowircd-6.1.0 |
72 | ||
73 | new configuration options | |
74 | - general::static_quit - Quit message to display for all users (not opers). | |
75 | - general::no_part_messages - If this option is set to no, the ircd will not | |
76 | display PART messages/reasons from users. | |
fb81a733 JH |
77 | - general::true_no_oper_flood - Turns off *ALL* flood protection for opers. |
78 | Instead of command flooding being 4x what it is for a user with no_oper_flood, | |
79 | there is no limit at all. This option also allows opers to flood channels/users | |
80 | so if you do set it, be extremely careful. | |
e2b0cde2 JH |
81 | - serverinfo::helpchan and helpurl - These are 2 config options that tell users, |
82 | when they do /quote help (with no extra parameters) the official network help | |
83 | channel and a special URL for help. If these options are disabled, the users | |
84 | will just get the help index and that's it on /quote help. | |
5882de85 JH |
85 | - general::default_ident_timeout - Allows you to set the default ident timeout |
86 | in the ircd.conf instead of it being hardcoded and only settable with /SET. | |
745237f1 | 87 | |
85305853 | 88 | new commands |
d6a51668 G |
89 | - CYCLE #channel - server-side CYCLE, also called HOP in some clients/servers. |
90 | Parts the user from the given channel, then joins them to it immediately after. | |
91 | Enabled by loading extensions/m_cycle. | |
85305853 | 92 | |
bc9ccf4a JH |
93 | opers |
94 | - Override no longer alows overriding opers to talk through +q, +m, etc. | |
95 | If you need to talk through one of these modes, its recommended to remove | |
96 | the offending mode or give yourself voice/ops. | |
97 | - OLIST now shows channel modes so opers can easily see which channels are | |
98 | +s and see which channels have oper-only channel modes set. | |
fb81a733 JH |
99 | - RESTART and DIE now can be executed remotely. See the appropriate helpfiles |
100 | for details. | |
101 | - All module management commands (MODLOAD, MODLIST, MODUNLOAD, MODRELOAD and | |
102 | MODRESTART) can be executed remotely. See the appropriate helpfile for | |
103 | details. | |
d6a51668 G |
104 | - OMODE can now set and unset +ah. |
105 | - OJOIN now works with !#channel and %#channel. | |
106 | - Staff channelmodes (+AO) now require chanops to set. | |
ad9de1c8 G |
107 | - OPERHOST option added to SET. You can now use SET to change the default |
108 | operhost that operators get upon opering up, though like the | |
109 | general::default_operhost config option it will not override the | |
110 | operator::vhost config option. | |
fb81a733 JH |
111 | |
112 | other | |
113 | - Added a strip_unprintable function to make evasion of cmodes +G and +K | |
114 | less trivial. | |
e2b0cde2 | 115 | - Massive helpfile updates. |
d6a51668 G |
116 | - Added SVSJOIN s2s command. This allows things like atheme's ns_ajoin |
117 | to work on shadowircd. | |
e2b0cde2 JH |
118 | - Added BAN stuff (propogated bans on burst) from charybdis trunk. This |
119 | can be disabled and the old behavior can be used by setting the | |
120 | general::use_propogated_bans option to no. | |
d6a51668 G |
121 | - The --enable-small-net configure option is now enabled by default. |
122 | If you wish to disable small net mode, pass --disable-small-net to | |
123 | configure. | |
a5687a4c | 124 | - New channel mode adding API has been added from charybdis trunk. |
ad9de1c8 G |
125 | - NOTICE/PRIVMSG @#channel and +#channel now go to admin/halfop as well |
126 | as chanop. | |
bc9ccf4a | 127 | |
2d465e24 JH |
128 | -- shadowircd-6.0.0 |
129 | ||
130 | new modes | |
131 | - Add umode +C (no CTCP). | |
132 | - Add umode +V, users with this mode set will never recieve channel invites | |
133 | from other users. | |
b5285733 | 134 | - Add umode +B which identifies users as being bots in /whois. |
2d465e24 JH |
135 | - Add umode +G which disallows users from messaging you unless you're both |
136 | on at least one channel together. This can be "overridden" with /accept. | |
137 | - Add cmode +T which blocks all notices to the channel. | |
138 | - Add cmode +D which blocks all actions (/me's) from being sent to the channel. | |
139 | - Add cmode +E which disallows channel ops from kicking users. | |
140 | - Add cmode +N which disallows users from changing their nick while they're on | |
141 | a channel with this mode set. | |
b5285733 | 142 | - Add cmode +K (norepeat) which will block repeated messages, regardless of |
559d5301 | 143 | who they're from. |
2d465e24 JH |
144 | - Add cmode +G which blocks messages containing 50% or more capital letters |
145 | from being sent to the channel. | |
146 | - Add cmode +J which disallows a kicked user from rejoining within 'X' seconds | |
147 | of them being kicked, where 'X' is the variable of the channel::kick_no_rejoin_time | |
148 | configuration option. | |
c1c91f94 | 149 | - Add cmodes +a and +h (admin and halfop, respectively). There are 2 extra |
2d465e24 JH |
150 | prefixes to more finely-grain the status of staff members in your channels. |
151 | They can be enabled or disabled in the configuration file with the options | |
c1c91f94 | 152 | channel::use_halfop and channel::use_admin. |
2d465e24 JH |
153 | |
154 | new configuration options | |
155 | - auth::autojoin - This option will specify what channels users in a matching | |
156 | auth {} block will automatically join on connect to your server/network. | |
157 | - auth::autojoin_opers - This option will specify what channels opers in a | |
158 | matching auth {} block will automatically join on oper up (/oper). | |
159 | - channel::cycle_host_change - This option defines whether or not users | |
160 | will cycle (part and rejoin) the channels they're in when their host changes. | |
161 | This can be annoying to some people, but disabling it can cause client desyncs. | |
162 | - channel::host_in_topic - This option defines whether or not a host setter's | |
163 | full host or just their nick will be shown on /TOPIC. | |
164 | - channel::use_local_channels - With this option, you can enable/disable | |
165 | support for local channels on your server/network. | |
166 | - channel::exemptchanops - This option defines what channel modes channel | |
167 | operators are exempt from, channel modes usable in this option are: cCDTNGK. | |
168 | - general::secret_channels_in_whois - This option defines whether or not opers | |
169 | can see secret channels that a user is in when whoising them. Secret channels | |
170 | will show up in the whois prefixed with *. If this option is disabled, opers | |
171 | will still be able to see secret channels a user is in with the /SPYWHOIS | |
172 | command. | |
173 | - Enabled a few popular extensions by default, added a few extensions to the | |
174 | example config files that were missing, add a few more services aliases | |
175 | by default, enable ip_cloaking by default and get rid of all the old | |
176 | ip_cloaking modules. | |
177 | ||
178 | opers | |
179 | - Users' umodes are shown when you whois them. | |
180 | - swhois support - Adds a mostly free-form line of text to opers' whois | |
181 | if one is set in their operator {} block. | |
182 | - custom operstring - Instead of showing the IRC operator or IRC administrator | |
b5285733 G |
183 | oper strings, you can customize what it shows in each oper's operator {} |
184 | block. | |
185 | - host-on-oper - Give a vhost to operators upon oper up. Can be defined | |
186 | generally, then the general option may be overridden by each operator {} | |
187 | block. | |
2d465e24 JH |
188 | - operoverride - Oper override works very differently in ShadowIRCd compared |
189 | to all other IRCd's which support oper override. In ShadowIRCd, to be able | |
190 | to override, you must have the oper:override privledge and you must then | |
191 | set umode +p on yourself. The p umode will automatically expire and un-set | |
192 | itself after a time set in the configuration option general::expire_override_time. | |
b5285733 G |
193 | - immune - Adds cmode +M. Opers can set this on a channel (even if they don't |
194 | have ops) without the channel's ops or other users seeing (only opers see | |
195 | this mode at all.) It disallows anyone in the channel from kicking opers. | |
90e68bbe JH |
196 | - OACCEPT/callerid override - In ShadowIRCd 6, opers no longer can simply PM |
197 | users that have umodes +g or +G set and the oper is not on their accept list. | |
198 | To allow opers to still be able to PM users in this situation, OACCEPT has been | |
b5285733 G |
199 | added. OACCEPT is a new extension that enables the command /oaccept <user> |
200 | which adds a piece of metadata to that use which will allow you to PM them. | |
2d465e24 JH |
201 | |
202 | other | |
203 | - Changed default NICKLEN to 31 (from 15) to fit more closely with other | |
204 | IRCd's. | |
205 | - Rebrand many things from Charybdis to ShadowIRCd. | |
206 | - Move the m_force module to extensions. | |
b5285733 G |
207 | - Add a metadata framework. Currently used for swhois, custom operstring, |
208 | OACCEPT, cmode +J, cmode +K. | |
2d465e24 | 209 | |
c9013e0d JT |
210 | -- charybdis-3.2.0 |
211 | ||
212 | server protocol | |
213 | - Apply +z to messages blocked by +b and +q as well. (new EOPMOD capab) | |
214 | - Add new topic command ETB, allowing services to set topic+setter+ts always. | |
215 | (new EOPMOD capab) | |
216 | - The slash ('/') character is now allowed in spoofs. | |
217 | user | |
218 | - Add can_kick hook, based on the ircd-seven one. | |
219 | - Add cmode +C (no CTCP) from ircd-seven. | |
220 | - Flood checking has been reworked. | |
221 | - Fix op-moderate (cmode +z) for channel names with '@'. | |
222 | - Add CERTFP support, allowing users to connect with an SSL client | |
223 | certificate and propagating the certificate fingerprint to other servers. | |
224 | Services packages can use this to identify users based on client | |
225 | certificates. | |
226 | - Maintain the list of recently used targets (for the target change | |
227 | anti-spam system) in most-recently-used order, overwriting the least | |
228 | recently used target with a new one. This should be friendlier to users | |
229 | without giving spambots anything. | |
230 | - Do not require target change slots for replying to the last five users to | |
231 | send a private message, notice or invite. | |
232 | - Apply target change restrictions to /invite. | |
233 | - Apply umode +g/+R restrictions to /invite, with the difference that | |
234 | instead of sending "<user> is messaging you" the invite is let through | |
235 | since that is just as noisy. | |
236 | oper | |
237 | - Add /rehash throttles to clear throttling. | |
238 | - Send all server notices resulting from a remote /rehash to the oper. | |
239 | - '\s' for space is now part of the matching, not a substitution at xline | |
240 | time, fixing various issues with it. | |
241 | - Display o:line "nickname" in oper-up server notices. | |
242 | - Fix sendq exceeded snotes for servers. | |
243 | - SCAN UMODES: default list-max to 500, like a global WHO. | |
244 | - Ignore directory names in MODRELOAD to avoid crashing if it is a core | |
245 | module and the path is incorrect. | |
3abf5074 | 246 | - Tweaks to spambot checks. |
c9013e0d JT |
247 | config |
248 | - Add channel::only_ascii_channels config option to restrict channel names | |
249 | to printable ascii only. | |
250 | - Add channel::resv_forcepart, forcibly parts local users on channel RESV, | |
251 | default enabled. | |
252 | misc | |
253 | - New mkpasswd from ircd-ratbox. | |
254 | - Check more system calls for errors and handle the errors. | |
255 | - Various ssld/libratbox bugfixes from ircd-ratbox. [some MERGED] | |
256 | - Fix fd passing on FreeBSD/amd64 and possibly Solaris/sparc. [MERGED] | |
257 | - Various documentation improvements. [some MERGED] | |
258 | - Fix some crash issues. [MERGED] | |
259 | - Add bandb from ircd-ratbox, which stores permanent dlines/klines/xlines/resvs | |
260 | in an sqlite database instead of a flatfile and does the storage in a | |
261 | helper process. | |
262 | ||
70f227af JT |
263 | -- charybdis-3.1.0 |
264 | ||
265 | - Remove TS5 support. No TS5 servers are permitted in a network with | |
266 | charybdis 3.1.0 or newer, except jupes. | |
48811aeb JT |
267 | - Replace oper flags by privilege sets (privsets). This adds an extra |
268 | level of indirection between oper flags and operator blocks. /stats O | |
269 | (capital O) shows the configured privsets. | |
70f227af JT |
270 | - Update libratbox and ssld from upstream and use it better. |
271 | - Add auth_user to auth{}. This allows specifying a username:password instead | |
272 | of just a password in PASS, so that a fixed user@host is not necessary | |
273 | for a specific auth{} block. | |
274 | - Add need_ssl to auth{} and operator{}. This makes these blocks reject | |
275 | the user if not connected via SSL. | |
276 | - Allow modules to provide simple channel modes without parameter. | |
277 | - Remove restrictions on CNAME in the resolver. | |
278 | - Make the resolver remember nonresponsive nameservers. | |
279 | - Move nick collision notices from +s to +k. | |
280 | - Add additional information to various server notices about server | |
281 | connections. | |
48811aeb JT |
282 | - Show throttle information in /stats t. |
283 | - Show rejectcache and throttle information in /testline. | |
284 | - Show oper reason in /testline. | |
285 | - Allow opers to see other users' umodes with /mode <nick>. | |
eb157882 | 286 | - SCAN UMODES GLOBAL NO-LIST MASK <mask> is no longer an operspy command. |
70f227af JT |
287 | - Also apply floodcount to messages to remote clients (except services). |
288 | - Remove user@server messages to local users. Sending such messages to | |
289 | remote servers is still possible, for securely messaging pseudoservers | |
290 | whether service{}'ed or not. The special oper-only syntax opers@server | |
291 | remains as well. | |
292 | - Allow /list on a named +p channel. A full /list already included +p channels. | |
293 | - Add operspy /topic. | |
24335dd6 | 294 | - For remote rehashes, send error messages to the requesting oper as well. |
a8b9939d JT |
295 | - Disable autoconnect for a server with excessive TS delta. |
296 | - Disallow invites to juped channels. | |
24335dd6 | 297 | - Warn about certain duplicate and redundant auth blocks. |
70f227af JT |
298 | - Make PRIVMSG/NOTICE behave as CPRIVMSG/CNOTICE automatically if possible. |
299 | - Allow +z messages from outside if a channel is -n. | |
300 | - Allow coloured part reasons in -c channels. | |
301 | - Add ircu-like WHOX support. This allows requesting specific information | |
302 | in /who and allows obtaining services login name for all users in a | |
303 | channel. XChat/Conspire use WHOX to update away status more efficiently. | |
48811aeb JT |
304 | - Allow opers and shide_exempt users to see hopcounts even if flatten_links |
305 | is on. | |
70f227af JT |
306 | - Rework ip_cloaking. |
307 | - Add the IP address to userlog, as in ircd-ratbox 3.0. | |
308 | - Split cidr_bitlen into cidr_ipv4_bitlen and cidr_ipv6_bitlen. | |
48811aeb JT |
309 | - Allow using ziplinks with SSL connections. This is not as efficient as |
310 | using OpenSSL's built in compression, but also works with older versions | |
311 | of OpenSSL. | |
a8b9939d JT |
312 | - Fix an off by one error with zipstats processing, which could overwrite |
313 | a variable with NULL causing a crash on some systems. | |
70f227af | 314 | - Document some extensions in charybdis-oper-guide. |
48811aeb | 315 | - Add more server protocol documentation. |
24335dd6 JT |
316 | - Add m_sendbans extension, SENDBANS command to propagate xlines and resvs |
317 | manually. | |
318 | - Add chm_sslonly extension, cmode +S for SSL/TLS only channels. | |
16369f02 | 319 | - Add chm_operonly extension, cmode +O for IRCop only channels. |
24335dd6 | 320 | - Add chm_adminonly extension, cmode +A for server admin only channels. |
70f227af JT |
321 | - Various code cleanups. |
322 | ||
323 | -- charybdis-3.0.4 | |
324 | ||
325 | - Fix a crash on certain recent versions of Ubuntu. | |
326 | - Allow 127.x.y.z for DNSBL replies instead of just 127.0.0.x. | |
327 | - Various documentation improvements. | |
328 | ||
329 | -- charybdis-3.0.3 | |
330 | ||
331 | - Fix IPv6 D:lines | |
332 | - Fix rejectcache and unknown_count. | |
333 | - Fix genssl.sh. | |
334 | - Fix ident for SSL/TLS connections. | |
335 | - Fix SSL/TLS bugs for servers with more than about 100 connections. | |
336 | - Small bugfixes. | |
337 | ||
338 | -- charybdis-3.0.2 | |
339 | ||
340 | - Improve OLIST extension error messages. | |
341 | - Improve some kline error checking. | |
342 | - Avoid timing out clients if we are still waiting for a DNSBL lookup. | |
343 | - Fix resolver hangs with epoll. | |
344 | - Fix compilation without zlib. | |
345 | ||
6d2090c2 JT |
346 | -- charybdis-3.0.1 |
347 | ||
348 | - Fix occasional hung clients with kqueue. | |
349 | - Fix a rare ssld crash. | |
350 | - Fix a bug that could cause incorrect connect failure reasons to be | |
351 | reported. | |
be54db58 | 352 | - Make the IRCd work on MacOS X again. |
6d2090c2 | 353 | |
ee160c2a VY |
354 | -- charybdis-3.0.0 |
355 | ||
eeae854d JT |
356 | - Port the IRCd to libratbox, which has improved our portability and allows |
357 | us to reuse low-level code instead of maintaining our own. | |
358 | - Change configuration of maximum number of clients to ircd-ratbox 3 way. | |
359 | - Add adminwall from ircd-ratbox, as an extension. | |
360 | - Add client and server-to-server SSL, read example.conf for setup. | |
361 | - Replace servlink with ssld (also for ziplinks). | |
362 | - A new extban, $z, has been added for ssl users (extensions/extb_ssl.so). | |
8b48b346 | 363 | - A new compatibility channel mode, +R, has been added, it sets |
eeae854d JT |
364 | +q/-q $~a (extensions/chm_operonly_compat.so). This is similar to |
365 | the +R seen in ircd-seven. | |
3691f6ed | 366 | - A new compatibility channel mode, +S, has been added, it sets |
eeae854d | 367 | +b/-b $~z (extensions/chm_sslonly_compat.so). |
8b48b346 | 368 | - A new compatibility channel mode, +O, has been added, it sets |
eeae854d JT |
369 | +iI/-iI $o (extensions/chm_operonly_compat.so). |
370 | - Add remote D:lines. Note that these are not enabled by default. | |
371 | - Remove EFnet-style G:lines. Noone appears to use these. | |
372 | - Remove idle time checking (auto disconnecting users idle too long). | |
373 | - Display a notice to clients when the IRCd is shut down using SIGTERM. | |
374 | - Some error messages have been clarified to enhance usability. | |
375 | - Close the link to servers that send invalid nicks (e.g. nicklen mismatches). | |
376 | Formerly the users were killed from the network. | |
377 | - Enable topicburst by default in connect{}. | |
378 | - Fix a potential desync which can happen with oper override. | |
379 | - Remove "deopped" flag (TS5 legacy). | |
380 | - Use 127.0.0.1 as nameserver if none can be found in /etc/resolv.conf. | |
381 | - Only accept 127.0.0.x as a dnsbl listing. | |
382 | - Change cloaking module (same as 2.2.1, different from 2.2.0). | |
383 | - Make some more server notices about failed remote connect attempts | |
384 | network wide. | |
385 | - Make some server notices about flooders and TS delta network wide. | |
386 | - Remove redundant "<server> had been connected for <time>" server notice. | |
387 | - Add resv oper privilege to control /resv, /unresv and cmode +L and +P, | |
388 | enabled by default. | |
389 | - Add mass_notice oper privilege to control global notices and /wallops, | |
390 | enabled by default. | |
391 | - Rework unkline/undline/unxline/unresv so they show the exact item removed | |
392 | and do not rehash bans. | |
393 | - Show opers a list of recently (<24hrs) split servers in /map. | |
394 | - Add /privs command, shows effective privileges of a client. | |
ee160c2a | 395 | |
55da5539 | 396 | -- charybdis-2.2.0 |
397 | ||
f32e30dd | 398 | - The I/O code has been reworked, file descriptor metadata is stored in a |
f7b60293 | 399 | hashtable and the maximum number of clients can now be set in ircd.conf. |
0b15df83 | 400 | - Improve error checking and error messages for kline/dline/xline/resv files. |
401 | - Allow kline ipv6:address, unkline some.host and unkline ipv6:address | |
402 | without *@. | |
403 | - Add accountability (wallops, log) to OKICK extension. | |
404 | - Add opernick to OPME/OMODE/OJOIN log messages. | |
405 | - Add use_forward option, allows disabling cmode +fFQ and umode +Q. | |
406 | - Add keyword substitution to DNSBL reasons, making it possible to show | |
407 | things like the user's IP address in the reason. | |
408 | - Use sendto_one_notice() more. | |
409 | - Server notices about kills now include the victim's nick!user@host instead | |
410 | of just nick. | |
411 | - Include real hostname in Closing Link message for unknown connections | |
412 | that have sent USER, in particular banned users. | |
413 | - Add some documentation about the SASL client protocol. | |
414 | - Change spambot, flooder and jupe joiner notices from host to orighost. | |
415 | - Remove the last remains of server hostmasking (this made it possible to | |
416 | have multiple servers with similar names appear as a single server). | |
417 | - Keep bitmasks of modularized umodes reserved forever to the letter, | |
418 | avoiding problems when reloading umode modules in a different order. | |
419 | - Fix -logfile. | |
420 | - Update to the new revision (v8) of the TS6 spec, this fixes problems with | |
0af87e57 | 421 | joins reversing certain mode changes crossing them. This interoperates |
422 | with older versions. | |
0b15df83 | 423 | - Put "End of Channel Quiet List" at the end of +q lists. |
424 | - Fix invisible count getting desynched from reality if the act of opering | |
425 | up sets -i or +i. | |
426 | - Don't leak auth{} spoofed IP addresses in +f notices. | |
427 | - Shorten quit/part/kick reasons to avoid quit reasons overflowing the | |
428 | client exiting server notice (from TOPICLEN to 260). | |
429 | - Fix some cases where 10 char usernames lose their final character. | |
430 | - Move username check after xline and dnsbl checks, so it will not complain | |
431 | to opers about clients who are xlined or blacklisted anyway (both of | |
432 | which silently reject). | |
433 | - Remove invite_ops_only config option, forcing it to YES. | |
434 | - Allow /invite (but not invex) to override +r, +l, +j in addition to +i. | |
f7b60293 | 435 | - Add several new extensions, such as createoperonly. |
436 | - Merge whois notice extensions into one and move it from snomask +y to +W. | |
0b15df83 | 437 | |
212380e3 | 438 | -- charybdis-2.1.2 |
439 | ||
440 | - Fix bug that could cause all hostmangled users to be exempted when a | |
441 | single ban exception existed on a channel. | |
442 | - Tweak \s code a little. | |
443 | - Add a minor clarification to the SGML docs. | |
444 | - Avoid truncation in ip_cloaking (by removing components on the other side). | |
445 | Note that this may cause channel +bqeI modes set on such very long hosts | |
446 | to no longer match. | |
447 | ||
448 | -- charybdis-2.1.1 | |
449 | ||
450 | - Search the shortest list (user's/channel's) when looking up channel | |
451 | memberships. | |
452 | - Make the SID-collision notice look right under all conditions. | |
453 | - Move kills from services from +s to +k snomask. | |
454 | - When no_tilde is present on an auth{} block, check the non-tilde version | |
455 | of the user@host against k:lines as well. | |
456 | - Put full reason in the SQUIT reason when a server is rejected for | |
457 | insufficient parameters being passed to a command. | |
458 | - Don't redirect users to an existing domain, irc.fi. | |
459 | - Improve communication of servlink-related error messages. | |
460 | ||
461 | -- charybdis-2.1.0 | |
462 | ||
8b48b346 | 463 | - Our official website is now http://www.ircd-charybdis.org/. |
212380e3 | 464 | - Make RPL_ISUPPORT (005 numeric) modularizable. |
465 | - Also do forwarding if the channel limit (+l) is exceeded. | |
466 | - Don't count opers on service{} servers in /lusers. | |
467 | - Allow servers to send to @#chan and +#chan. | |
468 | - Allow +S clients (services) to send to channels and @/+ channels always. | |
469 | - Allow normal match() on IP address also in /masktrace. | |
470 | - Add new testmask from ratbox 2.2. Allows matches on nick, ip and gecos | |
471 | in addition to user and host, and is fully analogous to masktrace. | |
472 | The numeric has changed from 724 to 727 and fields in it have changed. | |
473 | - Show IP addresses to opers in /whowas. | |
474 | - Add extb_extgecos extban option ($x:nick!user@host#gecos), from sorcery | |
475 | modules. | |
476 | - Add extb_canjoin extban option ($j:#channel), matches if the user is banned | |
477 | from the other channel. | |
478 | - Allow opers to /who based on realhost. | |
479 | - Allow opers to /masktrace, /testmask based on realhost. | |
480 | - Add general::operspy_dont_care_user_info, limits operspy accountability to | |
481 | channel-related information. | |
482 | - Make host mangling more reliable. | |
483 | - Prevent ban evasion by enabling/disabling host mangling. | |
484 | - Add EUID, sends real host and services account in the same command as other | |
485 | user information. | |
486 | - Make it possible to send CHGHOST without ENCAP (fixes problems with old | |
487 | services). | |
488 | - Allow service{} servers to manipulate the nick delay table (for "nickserv | |
489 | enforcement", aka SVSHOLD). | |
490 | - Send server notices about connections initiated by remote opers network wide. | |
491 | - Fix too early truncation of JOIN channel list. | |
492 | - Make the newconf system available to modules. | |
493 | - Add /stats s to the hurt module to list active hurts. | |
494 | - Add general::servicestring, shown in /whois for opered services (+oS). | |
495 | - Show real host/IP behind dynamic spoof in /whois to the user themselves | |
496 | and opers. | |
497 | - Document option to disable nick delay. | |
498 | - Improve logging of server connections. | |
499 | - Clean up handling of hostnames in connect blocks. | |
500 | - Remove support for resolving ip6.int, people should be using ip6.arpa. | |
501 | - Unbreak --disable-balloc (useful for debugging with tools like valgrind). | |
502 | - Make Solaris 10 I/O ports code compile. | |
503 | - Add WEBIRC module to allow showing the real host/IP of CGI:IRC users. | |
504 | - Comment out blacklist{} block in example confs, as AHBL requires | |
505 | notification before use. | |
506 | - Fix some bugs relating to the resolver. | |
507 | ||
508 | -- charybdis-2.0.0 | |
509 | ||
510 | - Replace ADNS with a new smaller resolver from ircu and hybrid. | |
511 | - Make services shortcuts (/chanserv etc) configurable in ircd.conf. | |
512 | - Add extban: extensible +bqeI matching via modules. Syntax is | |
513 | $<type>[:<data>]. By default no modules are loaded. | |
514 | - Add DNS blacklist checking. | |
515 | - Change operator{} block user@host from host to orighost. This means that | |
516 | services/+h spoofs do not work in operator{} blocks; auth{} spoofs still | |
517 | work. Check your operator{} blocks! | |
518 | - Split contrib/ into extensions/ and unsupported/. | |
519 | - Change CHGHOST do show the change to all other clients on common channels | |
520 | with quit/join/mode. | |
521 | - Add /rehash nickdelay to clear out the nickdelay tables. | |
522 | - Glines are now disabled in the example confs. | |
523 | - Show more error messages on stderr. | |
524 | - Add OMODE command to extensions/ for easier oper mode hacking. | |
525 | - Add HURT system to extensions/; this shuns clients matching certain host/ip | |
526 | unless and until they identify to services. Mainly intended for SorceryNet. | |
527 | - Show SASL success and failure counts in /stats t. | |
528 | - Allow more frequent autoconnects to servers. | |
529 | - Messaging services by nickname no longer uses target change slots. | |
530 | - Only accept SASL from servers in a service{} block. | |
531 | - New auth{} flag need_sasl to reject users who haven't done SASL | |
532 | authentication. | |
533 | - Expand blah.blah and blah:blah to *!*@... instead of ...!*@* for bans | |
534 | - Don't allow opers to fake locops/operwall to +w. | |
535 | - Documentation updates. | |
536 | - Many bugfixes. | |
537 | ||
538 | -- charybdis-1.1.0 | |
539 | ||
540 | - Implement SAFELIST. | |
541 | - Incorporate ircu's match() algorithm. | |
542 | - Improve usermode modularization. | |
543 | - Seperate server notices into a seperate snomask, freeing up many | |
544 | usermodes to be used. | |
545 | - Add support for SIGNON originating from Hyperion2. | |
546 | - Modularize many server notices into seperate modules. | |
547 | - Add hooks for can_join and can_create_channel. | |
548 | - Add support for SASL authentication. | |
549 | - Add introduce_user hook for adding new messages when a user is bursted. | |
550 | - Move a large part of the ircd into libcharybdis. | |
551 | - Don't complain "unknown user mode" if a user tries to unset | |
552 | a mode they do not have access to. | |
553 | - Update our challenge specification to the challenge implementation in | |
554 | ratbox 2.2 for interoperability. | |
555 | - Make +f notices network-wide (local host, global host, | |
556 | global user@host, local class), other notices tied to +f remain local. | |
557 | - Allow ENCAP REALHOST outside of netburst. | |
558 | - Add general::global_snotices option to make server notices be | |
559 | network-wide or not. | |
560 | - Add sno_farconnect.c to contrib, provides farconnect support. | |
561 | Could be useful for BOPM. | |
562 | - Add sno_routing.c which displays information about netsplits, netjoins | |
563 | and the clients affected by them. | |
564 | - Add CHANTRACE and TRACEMASK commands from ratbox 3.0 | |
565 | - Use IsOperAdmin() instead of IsAdmin() when sending admin-only messages, | |
566 | that way hidden admins get them too. | |
567 | - Add m_error to core_module_table, somehow it was missing. | |
568 | - Correct a format string bug that occurs when a read error is | |
569 | received. | |
570 | - Add some logging in places where we drop servers and only notify | |
571 | server operators. | |
572 | - Track hostmask limits based on a client's original host, if | |
573 | available. | |
574 | - Move HIDE_SPOOF_IPS into the general {} block in ircd.conf | |
575 | ||
576 | -- charybdis-1.0.3 | |
577 | ||
578 | - Fix /invite UID leak. (Found by logiclrd@EFnet.) | |
579 | - Incorporate ratbox bugfixes for the MONITOR system. | |
580 | - Made show_ip() less braindead. | |
581 | - Show real errno if we fail to connect to a server. | |
582 | - Don't disclose server IP's when a connection fails. | |
583 | - Do not show the channels a service is sitting in. | |
584 | - Reverted the aline code from hybrid-7.2 | |
585 | - Make sure TS6 services are recognized properly if connected remotely. | |
586 | - Tweak something in services support for cyrix boxes. | |
587 | ||
588 | -- charybdis-1.0.2 | |
589 | ||
590 | - Fix propagation of an empty SJOIN (permanant channels). | |
591 | - Fix an exploit involving a malformed /trace request. | |
592 | - Don't display a blank RPL_WHOISCHANNELS in a remote whois request. | |
593 | - Allow modules to provide new usermodes. | |
594 | - On a nickname collision, change the collided nick to their unique ID, | |
595 | if general::collision_fnc is enabled in the config. | |
596 | - Don't allow UID lookups in /monitor + and /monitor s | |
597 | - Fix a garbage issue with channel mode +j. | |
598 | - Apply proper capability flags to the proper server in me_gcap(). | |
599 | - Use find_named_person() instead of find_person() in a nick collision. | |
600 | - Prevent UID disclosure in cmode setting. | |
601 | - Prevent UID disclosure to remote clients in /kick. | |
602 | - Do not allow users to query via /whois <server> <UID>. | |
603 | - Don't allow local users to use UID's in local usermode changes. | |
604 | - Propagate +q lists on netjunction. | |
605 | - Clear +q lists on a lowerTS SJOIN. | |
606 | - Ported a generic k/d/x-line parser from hybrid-7.2 which resulted in | |
607 | duplicate code reduction. | |
608 | - Fix linebuf raw code to not truncate lines longer than 512 bytes; | |
609 | improves ziplink reliability on net junction. | |
610 | - Use find_named_person() vs find_person() in services alias code. | |
611 | - Fix issue where channel forwarding token can be lost on net junction. | |
612 | - Fix empty channel desync issues involving +P. | |
613 | - Remove unused non-ENCAP CHGHOST support. | |
614 | - Use TS6 form for SQUIT wallops. | |
615 | - Propagate nickname changes for remote clients in TS6 form if possible, | |
616 | even if sent in TS5 format. | |
617 | - Only clear oper_only_umodes for local clients on deoper. | |
618 | ||
619 | -- charybdis-1.0.1 | |
620 | ||
621 | - Display logged in status on non-local clients too. | |
622 | - Documentation updates | |
623 | - Fix a bug with forward target authorization. | |
624 | - Fix a bug with mode propagation (+Q/+F). | |
625 | - Change ERR_NOSUCHNICK to ERR_SERVICESOFFLINE in services aliases. | |
626 | - Add remote rehashing. | |
627 | - Document service { } blocks (u:lines on ircu). | |
628 | - Document identify_service and identify_command in reference.conf. | |
629 | ||
630 | -- charybdis-1.0 | |
631 | - Implement channel mode +L for channel list limit exemptions. | |
632 | - Implement channel mode +P primarily as a status mode, permanant | |
633 | channel -- this is usually enforced via services registrations. | |
634 | - Change behaviour of /stats p: now displays all staff members instead | |
635 | of local ones only. | |
636 | - Make oper_list global, add local_oper_list for local traffic. | |
637 | - Strip control codes from parts and quits. | |
638 | - Add channel mode +c which strips control codes from messages sent to | |
639 | the channel. | |
640 | - Add channel mode +g which enables free use of the /invite command. | |
641 | - Add channel mode +z which sends rejected messages to channel ops. | |
642 | Could be useful for Q&A sessions or other similar events. | |
643 | - Add channel quietmasks. These are recommended over the use of channel | |
644 | bans used to remove a user's ability to participate in the channel. | |
645 | - Add channel join throttling mode, +j. Used to throttle channel join | |
646 | traffic, i.e. join/part flood attacks. Syntax: +j <joins>:<timeslice> | |
647 | - Improvements to channel_modes(), from shadowircd -- allows for | |
648 | better construction of the mode string. | |
649 | - Use the undernet throttle notice instead of bancache message when | |
650 | dealing with rejected clients. (stolen from ircu2.10.12) | |
651 | - Add channel forwarding, via channel mode +f, behaves similarly to | |
652 | dancer-ircd version. | |
653 | - Update example.conf to reflect AthemeNET changes. Original ratbox | |
654 | config is now reference.conf. | |
655 | - Services account names are now tracked globally. | |
656 | - Add channel mode +Q which disables the effects of channel forwarding | |
657 | on a temporary basis. | |
658 | - Add channel mode +F which allows anybody to disable forwarding target | |
659 | authorisation, voluntarily on their channels. | |
660 | - Make wallops behave like normal wallops. | |
661 | - Add services aliases: /ns, /cs, /os, /nickserv, /chanserv, /operserv. | |
662 | - Add simple hack that enables use of server password for automatic | |
663 | identify. | |
664 | ||
665 | -- ircd-ratbox-2.1.5+datadrain | |
666 | - fix a buffer overflow and an unterminated buffer when TS6 forces us | |
667 | to remove bans | |
668 | - fix potential junk SJOIN generation when splitting it into multiple | |
669 | lines | |
670 | - make servlink check for an uncompressed ERROR | |
671 | - change NICKLEN to 15. | |
672 | - change TOPICLEN to 390. | |
673 | - force services extensions to be enabled always | |
674 | - change patchlevel.h to get it's information from 'configure' | |
675 | - add m_chghost.c, ghetto rigged hostcloaking module, using elite ENCAP | |
676 | technique | |
677 | ||
678 | -- ircd-ratbox-2.1.4 | |
679 | - fix minor time bug which occurs on december 31st | |
680 | - dont drop a servers link when we get a malformed WHOIS | |
681 | - disallow commas in channel keys | |
682 | - fix compile problem with abort_list | |
683 | - fix build on darwin | |
684 | - fix compilation with gcc4 | |
685 | - userhost was only allowing 4 targets instead of 5 | |
686 | - invalidate channel ban cache on nickchange | |
687 | - add TARGMAX to 005, detailing maximum targets for messages | |
688 | - fix counting of clients on accept list when adding users | |
689 | - use ID instead of name when bursting SJOIN to TS6 servers | |
690 | - lower id in struct User, which was one byte bigger than it needs to be | |
691 | ||
692 | -- ircd-ratbox-2.1.3 | |
693 | - removed sendq_eob as it just doesnt work on efnet | |
694 | - dont allow MONITOR from an unregistered client | |
695 | - add some uniqueness into the auth process for bopm | |
696 | - fix resvs to check whether target server is us properly | |
697 | - fix a core in cidr channel ban matching | |
698 | - raise max temptime to a year | |
699 | - fix cores when we receive extra params to NICK/UID | |
700 | - remove no_oper_resvs, add resv_exempt auth flag | |
701 | - fix flattened links | |
702 | - clean up the accept code, and dont clear a users own list of accepted | |
703 | clients on nickchange | |
704 | - non-efnet: | |
705 | - make services {}; blocks be displayed on stats U | |
706 | - make services {}; blocks apply on rehash, you must now have only ONE | |
707 | service {}; block, but you may have multiple name=""; entries within. | |
708 | - only show services logged in info for local clients | |
709 | ||
710 | -- ircd-ratbox-2.1.2 | |
711 | - fix missing end comment tag in example confs | |
712 | - fix display problem with unauthorised conn notice | |
713 | - remove some unused defines from INFO | |
714 | - fix tabs for spaces in some helpfiles | |
715 | - add in missing links_delay conf option | |
716 | - fix cores under amd64 | |
717 | - disallow bans beginning with ':' over BMASK | |
718 | - disallow bans with a space in chm_ban() | |
719 | - stop counting hidden opers in stats p count output | |
720 | - match() params of remote unresv were inverted, causing it to never match | |
721 | - fix possibility of clients setting blank keys | |
722 | - fix UID problems with trace | |
723 | - raise default topiclen to 160 | |
724 | - add in forced nick change for ratbox-services, when compiled with | |
725 | --enable-services | |
726 | ||
727 | -- ircd-ratbox-2.1.1 | |
728 | - remove an 005 token to hack around the parser bug | |
729 | - exempt users messaging themselves from target change | |
730 | - disallow messaging towards UIDs | |
731 | - add in doc/tgchange.txt | |
732 | - move stats L back to RPL_STATSLINKINFO | |
733 | - fix some minor auth problems | |
734 | - properly store ipv6 ips when we're compiled for v4 only | |
735 | - fix propagation of xline/resv | |
736 | - sync remote kline reasons with form used for local klines | |
737 | ||
738 | -- ircd-ratbox-2.1.0 | |
739 | - no changes | |
740 | ||
741 | -- ircd-ratbox-2.1.0beta2 | |
742 | - fix a few compile warnings | |
743 | - added multi-prefix clicap, for showing "@+" in NAMES/WHO replies | |
744 | - remove split_delay, make split servers now work on how many servers have | |
745 | issued EOB, rather than how many exist. | |
746 | - server-side notify lists. See doc/monitor.txt | |
747 | - fix undline core | |
748 | - remove an unwanted space from beginning of second 005 | |
749 | - fix a potential core with the patricia when removing classes | |
750 | - when we're handling global NAMES, dont output channels whose users are all | |
751 | invisible | |
752 | ||
753 | -- ircd-ratbox-2.1.0beta1 | |
754 | - No release notes, see doc/whats-new-2.1.txt | |
755 | ||
756 | -------------------------------------------------------------------------------- | |
757 | ||
758 | BUGS: Major bugs in this release are listed in BUGS | |
759 | ||
760 | BUG REPORTS: If you run this code and encounter problems, you must report | |
91132813 | 761 | via IRC to irc.atheme.org, #charybdis. For specific bugs you can use |
762 | http://bugs-meta.atheme.org/ (Charybdis project). | |
212380e3 | 763 | |
764 | Please include a gdb backtrace and keep the core file, binaries and | |
765 | modules in case the developers need them. | |
766 | ||
767 | Other files recommended for reading: BUGS, README.FIRST, INSTALL | |
768 | ||
769 | -------------------------------------------------------------------------------- | |
f7b60293 | 770 | $Id: NEWS 3496 2007-05-30 10:22:01Z jilles $ |
212380e3 | 771 |