ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/NEWS
Revision: 9856
Committed: Thu Dec 31 12:35:16 2020 UTC (5 years, 7 months ago) by michael
File size: 46878 byte(s)
Log Message:
- Update NEWS file

File Contents

# Content
1 -- Noteworthy changes in version 8.2.38 (2021-??-??)
2 * Backwards compatibility mode for ircd-hybrid 8.2.22 and below has been removed
3 * Minimum supported version of the Anope IRC services is now 2.0.8
4
5
6 -- Noteworthy changes in version 8.2.37 (2020-12-26)
7 * Implemented IRCv3 `CAP 302`
8 * Implemented IRCv3 `cap-notify` capability
9 * In case a client sends multiple `PASS` messages, ircd only accepts the password
10 sent in the first `PASS` message instead of the last one
11 * Missing help file for `MONITOR` has been added
12 * Fixed slightly off memory count for motds in `STATS z`
13 * For a full list of all changes in this release, see <https://git.io/JLMnk>
14
15
16 -- Noteworthy changes in version 8.2.36 (2020-12-04)
17 * The old WATCH implementation has been replaced with IRCv3.2 MONITOR. For this,
18 the `general::max_watch` configuration directive has been renamed to
19 `general::max_monitor`.
20 * User mode `B` has been implemented. Clients with that mode set are marked as a
21 bot in both `WHOIS` and `WHO`. This mode can only be set by IRC operators (as
22 long as the `bot` directive is set in `general::oper_only_umodes`), servers,
23 and services.
24 This mode can for example be used to mark HOPM as official network bot.
25 * For a full list of all changes in this release, see <https://git.io/JLMnJ>
26
27
28 -- Noteworthy changes in version 8.2.35 (2020-11-14)
29 * Fixed issue where servers could propagate truncated ban masks during net-join
30 * For a full list of all changes in this release, see <https://git.io/JIUa6>
31
32
33 -- Noteworthy changes in version 8.2.34 (2020-11-01)
34 * Re-implement backwards compatibility mode for old ircd-hybrid 8.2.23 and below.
35 Final removal is scheduled for early 2021.
36 * For consistency, the `general::network_desc` configuration directive has been
37 renamed to `general::network_description`
38 * Server notices that previously have been sent to user modes +f and +u are now
39 sent to user mode +j (reject notices) instead. Due to this change, `unauth` and
40 `full` have been removed from `general::oper_only_umodes`, `general::oper_umodes`,
41 and `operator::umodes`.
42 * User mode +b (bots) has been replaced with +f (flood). Spam/flood notices are now
43 sent to this user mode. For this, `bots` has been removed from
44 `general::oper_only_umodes`, `general::oper_umodes`, and `operator::umodes`.
45 `flood` has been added instead to these configuration directives.
46 * Stricten server/user ID validation. IDs have to be all uppercase everywhere now.
47 * For a full list of all changes in this release, see <https://git.io/JkeID>
48
49
50 -- Noteworthy changes in version 8.2.33 (2020-09-07)
51 * Added `client` option to `listener::flags`
52 * Added `defer` option to `listener::flags`
53 * IRC operators may now use CIDR notation in `WHO`
54 * For a full list of all changes in this release, see <https://git.io/JTftW>
55
56
57 -- Noteworthy changes in version 8.2.32 (2020-08-16)
58 * `RESV` couldn't be issued in case no reason has been supplied. This has been fixed.
59 * Fixed possible `RPL_WHOISCHANNELS` line truncation of remote replies
60 * Extban $t of type `matching` has been implemented. This extban allows matching
61 based on TLS protocol version and/or cipher suite
62 * Implemented channel mode `K`. `KNOCK` cannot be used on channels with that mode set
63 * `STATS ?` is now oper-only
64 * For a full list of all changes in this release, see <https://git.io/JUZa1>
65
66
67 -- Noteworthy changes in version 8.2.31 (2020-05-03)
68 * macOS compatibility fixes
69 * Removed `spoof_notice` from `auth::flags`. With vhosts now this notice doesn't make
70 much sense anymore
71 * Fixed issue where ban masks might become malformed if set by remote clients/servers
72 * Fixed issue with channel mode +c where high ascii characters can be erroneously
73 detected as control characters
74 * For a full list of all changes in this release, see <https://git.io/JUZa6>
75
76
77 -- Noteworthy changes in version 8.2.30 (2020-03-01)
78 * `QUOTE HELP extban` didn't work because the extban help file hasn't been
79 installed properly during `make install`
80 * Fixed broken libcrypto detection which caused the ircd not to work with
81 OpenSSL under certain circumstances
82 * Extban $n of type `acting` has been implemented. This extban prevents
83 matching users from changing their nick while in the channel. Users
84 with voice or above are not affected.
85 * Channel mode +N has been changed so channel members with +v can change
86 their nick name as well
87 * For a full list of all changes in this release, see <https://git.io/JfOyF>
88
89
90 -- Noteworthy changes in version 8.2.29 (2020-02-19)
91 * Extbans have been implemented. Currently supported extbans:
92
93 Matching:
94
95 * `$a:<account>` Matches users logged into a matching account.
96 * `$c:<channel>` Matches users that are on the given channel. An additional
97 prefix of either @, %, or + can be specified to test for
98 certain channel privileges.
99 * `$o:<class>` Matches IRC operators that have joined a class
100 matching the mask.
101 * `$r:<realname>` Matches users with a matching realname.
102 * `$s:<server>` Matches users that are connected to a server matching the mask.
103 * `$u:<modes>` Matches users having the specified user modes set or not set.
104 * `$z:<certfp>` Matches users having the given TLS certificate fingerprint.
105
106 Acting:
107
108 * `$j:<banmask>` Prevents matching users from joining the channel.
109 * `$m:<banmask>` Blocks messages from matching users. Users with voice
110 or above are not affected.
111
112 For more details, see `help/extban`.
113 * Added `channel::enable_extbans` configuration option. See `doc/reference.conf`
114 for more information.
115 * For a full list of all changes in this release, see <https://git.io/JvgAL>
116
117
118 -- Noteworthy changes in version 8.2.28 (2020-01-26)
119 * Fixed issue with topics set by `TBURST` not being propagated properly to clients
120 * Allow IRC operators to search for real hosts in `WHO`
121 * Ban/exempt/invex masks are now also tested against realhosts to prevent clients
122 from bypassing channel bans by activating a fakehost
123 * For a full list of all changes in this release, see <https://git.io/Jv37M>
124
125
126 -- Noteworthy changes in version 8.2.27 (2020-01-22)
127 * Experimental support for wolfSSL has been implemented. Minimum supported version is 4.3.0
128 * The `--enable-openssl`, `--enable-gnutls` switches, and their disabling counterparts
129 `--disable-openssl` and `--disable-gnutls`, have been replaced with the `--with-tls`
130 switch which takes one of the following options: `openssl`, `wolfssl`, `gnutls`,
131 and `none`.
132 If nothing has been specified, configure tries to autodetect in the following order:
133 OpenSSL/LibreSSL -> GnuTLS -> wolfSSL.
134 * Fixed segfault with GnuTLS/libgmp in case there's no DH parameters file
135 defined in `serverinfo::ssl_dh_param_file` or if that file is missing
136 * The connection timeout for connect{} blocks can now be configured via
137 the `connect::timeout` configuration directive
138 * Minimum supported OpenSSL version is 1.1.1 now
139 * Minimum supported GnuTLS version is 3.6.5 now
140 * Supported TLSv1.3 cipher suites can now be configured explicitely via the
141 new `serverinfo::tls_cipher_suites` configuration directive
142 * In the serverinfo {} block, the following configuration directives have been renamed:
143 `ssl_certificate_file` -> `tls_certificate_file`
144 `ssl_dh_param_file` -> `tls_dh_param_file`
145 `ssl_dh_elliptic_curve` -> `tls_supported_groups`
146 `ssl_cipher_list` -> `tls_cipher_list`
147 `ssl_message_digest_algorithm` -> `tls_message_digest_algorithm`
148 * In the operator {} block, the following configuration directives have been renamed:
149 `ssl_certificate_fingerprint -> `tls_certificate_fingerprint`
150 `ssl_connection_required -> `tls_connection_required`
151 * In the connect {} block, the following configuration directives have been renamed:
152 `ssl_cipher_list -> `tls_cipher_list`
153 `ssl_certificate_fingerprint -> `tls_certificate_fingerprint`
154 * For a full list of all changes in this release, see <https://git.io/Jvq9g>
155
156
157 -- Noteworthy changes in version 8.2.26 (2019-05-31)
158 * The `general::tkline_expire_notices` configuration directive has been
159 replaced with user mode `X`. *LINE expiration notices are sent to IRC
160 operators with that mode set
161 * Fixed issue with `/rehash conf` creating duplicated class entries
162 instead of updating existing ones that are already in use
163 * For a full list of all changes in this release, see <https://git.io/fjEbq>
164
165
166 -- Noteworthy changes in version 8.2.25 (2019-04-24)
167 * The `class::number_per_ip`, `class::max_local` and `class::max_global`
168 configuration directives have been replaced with just `class::number_per_ip_local`
169 and `class::number_per_ip_global`. The `class::max_local` basically was
170 redundant as it had the same functionality as `class::number_per_ip`
171 * Adding RESVs with wildcards no longer requires administrator privileges
172 * The `general::ignore_bogus_ts` configuration option has been deprecated
173 * TLSv1.1 and TLSv1.0 are no longer supported and have been disabled in
174 the OpenSSL and GnuTLS module
175 * Minimum supported OpenSSL version is 1.0.1f now
176 * Minimum supported GnuTLS version is 3.5.8 now
177 * The `serverinfo::vhost` and `serverinfo:vhost6` configuration directives have
178 been deprecated. If you need to bind() a specific address you can specify one
179 in the connect {} block
180 * The `connect::vhost` configuration directive has been renamed to `connect::bind`
181 * For a full list of all changes in this release, see <https://git.io/fjRVk>
182
183
184 -- Noteworthy changes in version 8.2.24 (2018-04-05)
185 * Added `STATS s` to show configured pseudo {} blocks
186 * Implemented channel mode `N` which prevents users from changing their
187 nick while in a channel with that mode set
188 * Services clients are now shown with `is a Network Service` in `WHOIS`
189 * For a full list of all changes in this release, see <https://git.io/fjRVt>
190
191
192 -- Noteworthy changes in version 8.2.23 (2018-03-26)
193 * IRC operators are now able to see a user's resolved hostname in `WHOWAS`,
194 and `WHOIS` even if the user has a fakehost/vhost
195 * `RPL_WELCOME` now does use the rfc2812 style nick!user@host format
196 * Removed rudimentary libgeoip support
197 * Added `--enable-efence` switch to allow easy linking with the
198 electric fence memory debugger library
199 * `JOIN 0` is no longer supported
200 * Fixed bug where ircd would not remove `RPL_WHOISOPERATOR` based svstags
201 when deoppering
202 * Fixed `unknown closes` statistic in `STATS t` showing invalid values sometimes
203 * For a full list of all changes in this release, see <https://git.io/fjRVq>
204
205
206 -- Noteworthy changes in version 8.2.22 (2017-03-26)
207 * Implemented channel mode `L`. Channels with that mode set can make use of an
208 extended ban list size specified with the new `channel::max_bans_large`
209 configuraton option. This mode can be set only by IRC operators or servers.
210 * Implemented channel mode `u` which hides bmask (+b/+e/+I) lists and mode changes
211 to non-chanops everywhere
212 * Fixed an issue with `TRACE` where remote servers would reply with `RPL_TRACEUSER`
213 numerics containing UIDs
214 * `STATS z` now shows simple memory stats of servers linked to the network
215 * Added support for remote `ETRACE`
216 * For a full list of all changes in this release, see <https://git.io/fjRVO>
217
218
219 -- Noteworthy changes in version 8.2.21 (2016-11-27)
220 * The `general::default_floodtime` configuration option has been added
221 along with the `SET FLOODTIME` command. These allow to fine-tune the
222 message throttling better
223 * Fixed an issue with `INVITE` not showing the list of channels the
224 sender is invited to
225 * For a full list of all changes in this release, see <https://git.io/fjRVG>
226
227
228 -- Noteworthy changes in version 8.2.20 (2016-11-05)
229 * `INFO` now shows GnuTLS/OpenSSL library/header versions
230 * Added `channel::max_invites` configuration option. See `doc/reference.conf`
231 for more information.
232 * `INVITE` expirations have been implemented. Expire time can be adjusted with
233 the `channel::invite_expire_time` configuration directive
234 * `WHOIS` notices to IRC operators have been re-added. User mode +y is required
235 to see them
236 * The maximum line length for motd files has been increased to 320 bytes to
237 support multibyte encodings better
238 * For a full list of all changes in this release, see <https://git.io/fjRVZ>
239
240
241 -- Noteworthy changes in version 8.2.19 (2016-08-21)
242 * Fixed a possible server name leak in `WHO` with server hiding enabled
243 * `WHO` now allows IRC operators to search by IP address
244 * Admins no longer can see IP addresses in `STATS P` with
245 `serverhide::hide_server_ips` enabled
246 * User mode `n` now shows nick name changes from remote clients, too
247 * For a full list of all changes in this release, see <https://git.io/fjRVC>
248
249
250 -- Noteworthy changes in version 8.2.18 (2016-06-22)
251 * Fixed an assert when a client sends invalid `LIST` options
252 * Fixed invalid memory stats of channel invites in `STATS z`
253 * For a full list of all changes in this release, see <https://git.io/fjRSx>
254
255
256 -- Noteworthy changes in version 8.2.17 (2016-04-21)
257 * Fixed core on `REHASH CONF` with `general::whowas_history_length`
258 set to 0
259 * Fixed possible core on `INVITE` with `channel::max_channels` set to 0
260 * For a full list of all changes in this release, see <https://git.io/fjRSp>
261
262
263 -- Noteworthy changes in version 8.2.16 (2016-03-20)
264 * Added `general::whowas_history_length` configuration option which
265 allows to define the maximum length of the `WHOWAS` nickname history
266 * Services are now allowed to override `general::min_nonwildcard`,
267 and `general::min_nonwildcard_simple` settings
268 * Minor updates to help files
269 * For a full list of all changes in this release, see <https://git.io/fjRSj>
270
271
272 -- Noteworthy changes in version 8.2.15 (2016-02-24)
273 * Added proper support for Raspbian/ARM. Gracias to Beave/2600.net
274 for providing a box for testing purposes.
275 * Fixed an assert with empty `user = ""` directives in auth {} blocks
276 * `STATS z` now shows allocated listeners
277 * Fixed bug where `can_flood` auth {} flags did not work on channels
278 * For a full list of all changes in this release, see <https://git.io/fjR9v>
279
280
281 -- Noteworthy changes in version 8.2.14 (2016-02-09)
282 * Fixed server clustering
283 * Major cleanups to the configuration subsystem
284 * Improvements to libGeoIP support:
285 - Works now with IPv6 addresses
286 - Added `libgeoip_database_options`, `libgeoip_ipv4_database_file`,
287 and `libgeoip_ipv6_database_file` configuration directives to the
288 serverinfo {} block
289 * Further improvements to GnuTLS support
290 * For a full list of all changes in this release, see <https://git.io/fjR9f>
291
292
293 -- Noteworthy changes in version 8.2.13 (2016-02-02)
294 * Implemented support for GnuTLS. Currently ./configure's autodetection
295 intentionally prefers OpenSSL over GnuTLS, so OpenSSL detection needs
296 to be disabled explicitely by using the `--disable-openssl` switch.
297 * Minimum supported GnuTLS version is 3.3.8 now
298 * Minimum supported OpenSSL version is 1.0.1d now
299 * Added support for remote `REHASH`: `REHASH <server> <option>`
300 * Added `rehash:remote` IRC operator privilege flag
301 * Added `rehash` type to shared {} blocks
302 * Fixed minor memory leak with shared {} and cluster {} blocks
303 * For a full list of all changes in this release, see <https://git.io/fjR9J>
304
305
306 -- Noteworthy changes in version 8.2.12 (2016-01-05)
307 * **IMPORTANT:** Character case mapping is `ascii` now. It is recommended
308 to update all servers on the network to prevent possible channel
309 desynchronizations and nick name collision kills
310 * Added channel mode `T` which forbids `NOTICE` to be sent to a channel
311 * Fixed minor `SVSTAG` memory leak
312 * Fixed broken `PART` message blocking mechanism
313 * ircd now makes use of up to 8 name servers that are specified in
314 `/etc/resolv.conf`
315 * The `-klinefile`, `-dlinefile`, etc. switches didn't work at all
316 * Fixed possible core on ident lookups if ircd is out of file descriptors
317 * Far client exit notices (+F) now show IP addresses, too
318 * Made idle time look nicer in `STATS v|p` by using a formatted time string
319 * `general::ts_warn_delta`, and `general::ts_max_delta` can be set to 0 now
320 * For a full list of all changes in this release, see <https://git.io/JvLtj>
321
322
323 -- Noteworthy changes in version 8.2.11 (2015-11-19)
324 * Implemented IRCv3.2 `invite-notify` extension
325 * Implemented IRCv3.2 `chghost` extension
326 * Added `channel::invite_delay_channel` configuration option
327 * For a full list of all changes in this release, see <https://git.io/JvLqe>
328
329
330 -- Noteworthy changes in version 8.2.10 (2015-11-06)
331 * **IMPORTANT:** renamed `serverhide::links_delay` configuration directive
332 to `serverhide::flatten_links_delay`
333 * Added `serverhide::flatten_links_file` configuration option
334 * Fixed bug where changing `serverhide::flatten_links_delay` on runtime
335 would not have any effect
336 * mkpasswd (tools): fixed broken bcrypt support on *BSD in conjunction with
337 the `-s` and `-l` switches. Dropped MD5, DES and Extended DES support.
338 * Removed `CHALLENGE` in favor of ssl certificate fingerprint enabled
339 operator {} blocks
340 * RSA keys with less than 2048 bits are no longer supported; same applies
341 to the DH param file
342 * Added missing IRC operator privilege flags to `STATS o`. For a full list
343 of flags see `doc/reference.conf`
344 * For a full list of all changes in this release, see <https://git.io/JvLqJ>
345
346
347 -- Noteworthy changes in version 8.2.9 (2015-09-13)
348 * **IMPORTANT:** database files and links.txt are now stored in `/var/lib`
349 instead of `/etc`, so make sure to move your k/d/x-line database files
350 to the new path before (re)starting the ircd
351 * **IMPORTANT:** the splitmode logic has been removed along with the
352 following channel {} block configuration directives:
353 `default_split_user_count`, `default_split_server_count`,
354 `no_create_on_split`, `no_join_on_split`
355 * Added `xline_exempt` to auth {} block flags
356 * `serverinfo::sid` is now optional. A unique SID is now automatically
357 generated based on the server's name and description
358 * Various fixes to the mkpasswd tool
359 * If supported by the compiler, ircd-hybrid now compiles with
360 `-fstack-protector-strong` instead of `-fstack-protector`
361 * Services can now add RESVs (SQLINEs) that have wildcards in it
362 * Channel name RESVs are now sanity checked for too broad masks
363 * `class::connectfreq` now works properly with values lower than 300 seconds
364 * Implemented IRCv3.1 `account-notify` extension
365 * The `general::oper_pass_resv` configuration directive has been deprecated
366 in favor of the new `join:resv`, and `nick:resv` IRC operator flags.
367 See `doc/reference.conf` for more information.
368 * Added `resv`, and `unresv` IRC operator flags. Previously, all
369 IRC operators were allowed to `RESV` and `UNRESV`, regardless of configured
370 privileges.
371 * Added `close` to IRC operator flags
372 * ircd is using ISO 8601 date and time notation in most places now
373 * For a full list of all changes in this release, see <https://git.io/JvLqI>
374
375
376 -- Noteworthy changes in version 8.2.8 (2015-05-10)
377 * ircd now rejects remote k-line requests for user@host mask that don't
378 have at least `general::min_nonwildcard` non-wildcard characters in it
379 * Configuration related server notices are now sent to admins only as
380 they potentially could leak passwords and other sensitive data to IRC
381 operators that don't have administrator privileges
382 * The `GLINE`/`GUNGLINE` commands have been removed. `KLINE` in conjunction
383 with cluster {} and/or shared {} blocks is now the recommended
384 way to add global user@host mask based server bans
385 * Added `dline_min_cidr`, `dline_min_cidr6`, `kline_min_cidr`, and
386 `kline_min_cidr6` configuration options to the general {} block
387 * Fixed bug where a `REHASH` would clear all X-Lines and RESVs that have
388 been set with the `XLINE`/`RESV commands`
389 * Fixed broken temporary remote XLINEs
390 * The `general::havent_read_conf` configuration directive has been removed
391 * For a full list of all changes in this release, see <https://git.io/JvLqq>
392
393
394 -- Noteworthy changes in version 8.2.7 (2015-04-05)
395 * Fixed a potential buffer overflow with the `BMASK` inter-server command
396 * Fixed undefined behavior in the `HELP` command module which could
397 lead to stack corruption
398 * Removed useless help files for inter-server commands
399 * For a full list of all changes in this release, see <https://git.io/JfOyA>
400
401
402 -- Noteworthy changes in version 8.2.6 (2015-03-29)
403 * `INFO` now shows configured values of `max_watch` and `stats_m_oper_only`
404 * `WHOWAS` now shows IP addresses to IRC operators
405 * Fixed bug that would allow remote clients to bypass the hard
406 limit of max `WHOWAS` entries to be returned
407 * For a full list of all changes in this release, see <https://git.io/JTTuf>
408
409
410 -- Noteworthy changes in version 8.2.5 (2015-02-24)
411 * Fixed core on Mac OSX 10.10 and possibly some other systems when parsing
412 the `ircd.conf` with configured pseudo {} blocks
413 * For a full list of all changes in this release, see <https://git.io/JTTuI>
414
415
416 -- Noteworthy changes in version 8.2.4 (2015-02-17)
417 * Added `SVSTAG` command which services may use to add tags to users which can
418 be seen in `WHOIS`
419 * Added `oper::whois` configuration option which allows to override the default
420 `RPL_WHOISOPERATOR` numeric string shown in `WHOIS`
421 * IRC operators may now use +O on a channel even if they are only a half-op
422 * Fixed bug where `TOPIC` messages were not n!u@h prefixed in case of `TBURST`
423 issued by services clients
424 * For a full list of all changes in this release, see <https://git.io/JTTut>
425
426
427 -- Noteworthy changes in version 8.2.3 (2015-02-11)
428 * **IMPORTANT:** the following configuration directives have been renamed:
429 `max_clients` -> `default_max_clients`
430 `join_flood_count` -> `default_join_flood_count`
431 `join_flood_time` -> `default_join_flood_time`
432 * Fixed bug where `REHASH` would always reset the `MAX`, `JFLOODTIME`, and
433 `JFLOODCOUNT` values that have been changed from within IRC via the `SET`
434 command
435 * Added channel mode `C` which prevents users from sending CTCPs to a channel
436 * Fixes to the `NOTICE`/`PRIVMSG` anti-flood logic
437 * Allow to disable the `NOTICE`/`PRIVMSG` anti-flood mechanism by setting the
438 `general::default_floodcount` configuration option to 0
439 * Updated some help files
440 * IRC operators may now see certificate fingerprints, user modes and hidden
441 channels via `WHOIS` as well. This used to be admin only.
442 * For a full list of all changes in this release, see <https://git.io/JTQP3>
443
444
445 -- Noteworthy changes in version 8.2.2 (2015-01-20)
446 * Implemented IRCv3.1 `extended-join` extension
447 * Channel half-ops can now use `INVITE` as well
448 * Fixed broken `make install -jX`
449 * `m_opme.c` has been added to `modules/extra`. Can be used on opless channels only.
450 * Added `opme` to IRC operator flags
451 * Updated several help files
452 * The `general::hide_spoof_ips` configuration option has been deprecated
453 * The `general::true_no_oper_flood` configuration option has been deprecated.
454 IRC operators still can have higher `flood` limits with `no_oper_flood = yes;`
455 hoewever, they are no longer allowed to bypass RecvQ limits.
456 * Added `general::stats_m_oper_only` configuration option
457 * Remote client connection notices (user mode +F) now do show IP addresses, too
458 * For a full list of all changes in this release, see <https://git.io/JTQPG>
459
460
461 -- Noteworthy changes in version 8.2.1 (2014-10-21)
462 * Fixed bug where `UNDLINE remote.server IP` did not work as expected
463 * Servers are now allowed to add/remove K-/D-/X-lines and RESVs
464 * User mode +G now no longer allows to override +g
465 * Due to potential weakness, TLS session caching and session tickets
466 have been disabled
467 * Minor improvements to TS6 implementation
468 * `WHOWAS` now shows the name of the services account a user was logged in
469 * For a full list of all changes in this release, see <https://git.io/JTQP8>
470
471
472 -- Noteworthy changes in version 8.2.0 (2014-08-24)
473 * Successful IRC operator logins are now announced globally via `GLOBOPS`
474 * Cleanups and improvements to the resolver code
475 * Cleanups and improvements to the poll() I/O event notification support
476 * A topic mask can now be specified within the `LIST` options
477 * All users may now see channel modes in the `LIST` reply
478 * Fixed bug where `NOTICE +#somechan` did allow bypassing resv {} channels,
479 or channels that are set +c (no control codes)
480 * pseudo {} blocks also known as service aliases have been implemented.
481 See `doc/reference.conf` for more information.
482 * Removed `general::services_name` configuration option. This is now no
483 longer needed.
484 * For a full list of all changes in this release, see <https://git.io/JTQPR>
485
486
487 -- Noteworthy changes in version 8.2.0rc2 (2014-08-03)
488 * Improved AWAY throttling to allow for better fine-tuning. See the
489 newly added `away_count` and `away_time` configuration directives
490 in the general {} block
491 * Support for the select() I/O event notification has been dropped
492 * For a full list of all changes in this release, see <https://git.io/JkeIF>
493
494
495 -- Noteworthy changes in version 8.2.0rc1 (2014-07-20)
496 * Miscellaneous code cleanups and stabilization fixes
497 * `./configure` now requires OpenSSL 0.9.8o or above in order
498 to enable TLS/SSL support
499 * For a full list of all changes in this release, see <https://git.io/JkeLI>
500
501
502 -- Noteworthy changes in version 8.2.0beta4 (2014-07-06)
503 * **IMPORTANT:** channel halfops are now an integral part of ircd-hybrid
504 and can't be disabled anymore
505 * Added flood control for the `INVITE` command. See channel {} block in `reference.conf`
506 * Changed flood control logic for the `KNOCK` command. See channel {} block in `reference.conf`
507 * `INVITE` without any parameters now shows a list of channels a client is invited to
508 * The `OPERWALL` command has been removed. Use `GLOBOPS` instead
509 * Added `max_channels` to class {} blocks
510 * Added `throttle_count` configuration option to the general {} block
511 * Added `ssl_message_digest_algorithm` configuration option to serverinfo {} block.
512 See `doc/reference.conf` for more information.
513 * Added support for Elliptic Curve Diffie-Hellman (ECDH). Also an elliptic curve can be
514 specified via the `serverinfo::ssl_dh_elliptic_curve` configuration option.
515 * Removed `ssl_server_method` and `ssl_client_method` configuration options.
516 ircd now only allows TLSv1, TLSv1.1 and TLSv1.2 protocols depending
517 on the OpenSSL version. SSLv3 is no longer supported.
518 * For a full list of all changes in this release, see <https://git.io/JkeLO>
519
520
521 -- Noteworthy changes in version 8.2.0beta3 (2014-05-26)
522 * Code cleanups/performance improvements
523 * For a full list of all changes in this release, see <https://git.io/JkeLW>
524
525
526 -- Noteworthy changes in version 8.2.0beta2 (2014-05-15)
527 * **IMPORTANT:** renamed `general::warn_no_nline` configuration directive to
528 `general::warn_no_connect_block`
529 * Fixed bug with `WHOIS` not showing a list of channel names as expected
530 * Added user mode +q which hides idle and signon time in `WHOIS`
531 * Added user mode +p which hides channel list in `WHOIS`
532 * For a full list of all changes in this release, see <https://git.io/JkeLB>
533
534
535 -- Noteworthy changes in version 8.2.0beta1 (2014-04-29)
536 * TS6 is now mandatory. ircd is no longer backwards compatible with TS5
537 and below.
538 * `SVSJOIN` and `SVSPART` commands have been added
539 * Major code cleanups and refactoring. Improved overall performance
540 * `INFO` now also reports `MPATH` (path to main motd (Message of the Day) file)
541 and `SPATH` (Path to server executable)
542 * Updated several help files
543
544
545 -- Noteworthy changes in version 8.1.20 (2014-07-20)
546 * Fixed `XLINE` not working as expected
547 * Fixed build with LibreSSL which hasn't compression support
548 * Miscellaneous stabilization and cosmetical fixes
549 * EGD support has been dropped
550
551
552 -- Noteworthy changes in version 8.1.19 (2014-07-05)
553 * Fixed `EOB` logic for remote servers
554 * Fixed bug where IRC operators that have the +g/+G/+R umodes set won't receive
555 server notices for remote CONNECT/KLINE/DLINE/XLINE/RESV attempts
556 * Sending messages to user@server to local targets is now no longer possible,
557 as this was an easy way to bypass +R/+G/+g user modes.
558 * Fixed splicode logic so `SPLITNUM` now works as expected
559 * Fixed `UNDLINE` not to require the IP address to be prepended with *@
560
561
562 -- Noteworthy changes in version 8.1.18 (2014-06-09)
563 * Fixed `CAP` issue for certain clients
564 * Fixed bug where `STATS p` would show an invalid amount of IRC operators
565 in case there are any +H opers
566 * IRC operators may now no longer set a channel +O if they are only halfops (%)
567 * Channel halfops (%) may now no longer (de)halfop other channel members
568 * Channel halfops (%) may now no longer `KICK` other channel halfops
569 * Fixed compile warnings; code cleanups
570 * Fixed bug where the configuration parser wouldn't truncate the network name
571 if `general::network_name` contains spaces
572
573
574 -- Noteworthy changes in version 8.1.17 (2014-05-01)
575 * Fixed possible `WATCH` core
576 * Fixed bug where the configuration parser wouldn't take time units
577 into consideration for the `join_flood_time` and `throttle_time`
578 configuration options
579 * Minor `LIST` optimization
580
581
582 -- Noteworthy changes in version 8.1.16 (2014-04-20)
583 * Fixed undefined behaviour with crypt() returning `NULL`
584 since glibc2.17 in certain cases
585 * Admins may now see all channel members via `WHO #channel`
586 regardless of channel mode +s
587 * Fixed corrupted `STATS U` output
588
589
590 -- Noteworthy changes in version 8.1.15 (2014-03-29)
591 * **IMPORTANT:** ircd binary is now again placed into `bin/` instead of `sbin/`
592 * mkpasswd in tools/ now defaults to MD5 instead of DES
593 * The `USERS` command has been removed
594 * Fixed issue with `SVSNICK` where clients self-collided when changing
595 just the case of the nick name, i.e. somenick -> SomeNicK
596
597
598 -- Noteworthy changes in version 8.1.14 (2014-02-25)
599 * WHOWAS now honors `serverhide::disable_remote_commands`
600 * Improved TS6 inter-server communication
601 * Added `unxline` IRC operator flag
602 * Implemented IRCv3.2 `userhost-in-names` extension
603 * ircd now allows private RSA keys larger than 2048 bits
604 * Fixed bug where signals stopped from working after restarting
605 the ircd via SIGINT
606 * Fixed bug where certain irc clients could not reconnect via TLS/SSL
607 * Fixed long-standing bug where +p channels have been shown
608 in the `WHOIS` reply
609
610
611 -- Noteworthy changes in version 8.1.13 (2014-01-07)
612 * Fixed `EOB` not working for remote servers (resulted in fake direction notices)
613 * Fixed remote client connection notices for servers that are
614 more than one hop away
615 * Fixed bug where the ircd didn't timeout SSL connections that
616 haven't finished the SSL handshake
617 * Fixed several bugs with server hiding
618 * Updated/fixed help files
619 * `WHOIS` no longer sends a notice to +y operators
620
621
622 -- Noteworthy changes in version 8.1.12 (2013-12-22)
623 * `RPL_WHOISMODES` now uses the 379 numeric
624 * Serial number is now shown on start up
625 * Fixed possible channel mode desynch with services
626 * Fixed TS6 support with `LOCOPS`
627 * Minor code cleanups
628 * Fixed file descriptor leak with empty help files
629 * Fixed issue with `WEBIRC` where hostnames were not validated
630
631
632 -- Noteworthy changes in version 8.1.11 (2013-12-06)
633 * Administrators may now see channel modes in `LIST`
634 * Fixed compile error on BSD systems when building with kqueue()
635
636
637 -- Noteworthy changes in version 8.1.10 (2013-11-25)
638 * Fixed bug with kqueue() where it occasionally dropped updates
639 * Changed `WHOIS` to show certificate fingerprint to administrators only
640 * The `WHO` reply now shows if a nickname has been registered
641 with NickServ. (`r` status flag)
642 * Fixed some flaws with server hiding
643 * Fixed bug where `STATS P` would leak ip addresses to remotely connected
644 administrators, even if `serverhide::hide_server_ips` was set to `yes`
645 * Added `SVSKILL` command
646
647
648 -- Noteworthy changes in version 8.1.9 (2013-11-08)
649 * Added user mode +W. Users connected via a webirc gateway get this
650 mode set by servers.
651 * `WHOIS` now shows if a client is connected via a webirc gateway
652 * Administrators may now see +s channels a user is in with `WHOIS`.
653 Secret channels are prepended with a tilde in the `WHOIS` reply.
654 * Administrators are now able to see all the user modes a user has
655 set via `WHOIS`
656
657
658 -- Noteworthy changes in version 8.1.8 (2013-10-25)
659 * Fixed bug that could lead to a desynchronized nick database
660 throughout the entire network if using services enforced
661 nick names (`SVSNICK`)
662 * Cleaned up/modernized build system
663 * Add `-fstack-protector` to `CFLAGS` if available. Basically checks for
664 buffer overflows/stack-smashing attacks
665 * When using anope 1.9/2.0 services, `WHOIS` now shows the account name
666 of a registered/identified client (numeric 330)
667 * Administrators can now see +s channels in the `LIST` reply
668
669
670 -- Noteworthy changes in version 8.1.7 (2013-08-18)
671 * Fixed issue with channel mode +n having no functionality at all
672 * Fixed SSL certificate fingerprint validation for outgoing server connects
673 * Updated several documentation files
674
675
676 -- Noteworthy changes in version 8.1.6 (2013-08-02)
677 * Fixed possible core with empty motd files
678
679
680 -- Noteworthy changes in version 8.1.5 (2013-07-16)
681 * Fixed bug that would prevent servers from linking together
682 if `connect::aftype` isn't set
683
684
685 -- Noteworthy changes in version 8.1.4 (2013-07-05)
686 * Added `xline` and `resv` logging types. See `doc/reference.conf`
687 for more information
688 * Fixed bug where remote `STATS` requests were not rate limited
689 * Fixed core with empty `auth::spoof` entries
690 * Increased oper/auth/connect password length limit from 20 to 128
691 * Minor fixes to nickflood control code
692
693
694 -- Noteworthy changes in version 8.1.3 (2013-06-23)
695 * Fixed possible core on `STATS z`
696 * Revised `doc/reference.conf`
697 * Fixed broken `--disable-libgeoip` switch
698
699
700 -- Noteworthy changes in version 8.1.2 (2013-06-20)
701 * Added `general::cycle_on_host_change` configuration option
702 * Added `general::stats_u_oper_only` configuration option
703 * Added support for SHA-256 ssl certificate fingerprint based operator {}
704 and connect {} blocks.
705 In conjunction with Anope 1.9/2.0 IRC-services, clients are now also able
706 to automatically identify for their nick with ssl certificate
707 fingerprints
708 * Added `operator::ssl_connection_required` configuration option. See
709 `doc/reference.conf` for more information
710 * Added user mode +S (client is connected via SSL/TLS). Allows services
711 to keep track of what users are connected via SSL, and allows to see
712 ssl-status of remote clients in a `WHOIS`
713 * Fixed a server name leak with server hiding enabled
714
715
716 -- Noteworthy changes in version 8.1.1 (2013-06-06)
717 * **IMPORTANT:** moved `disable_remote_command` configuration directive from
718 general {} block to serverhide {} block
719 * Minor code cleanups/performance improvements
720 * Fixed bug where IRC operators could see `LOCOPS` messages even if they don't
721 have the +l mode set
722 * Fixed bug where non-SSL clients could join +S channels on non-SSL servers
723 * Implemented motd {} configuration blocks. See `doc/reference.conf` for more
724 information
725 * `STATS T` shows configured MOTD files
726
727
728 -- Noteworthy changes in version 8.1.0 (2013-05-23)
729 * Minor code cleanups/performance improvements
730
731
732 -- Noteworthy changes in version 8.1.0rc1 (2013-05-19)
733 * Fixed broken spoofs
734
735
736 -- Noteworthy changes in version 8.1.0beta5 (2013-05-15)
737 * Removed `remote`, and `global_kill` oper flags, and added `connect`,
738 `squit`, and `kill` flags for better fine-tuning instead. Whether or
739 not a specific action is allowed on a remote server can be controlled
740 by appending the `:remote` flag. For example: `kill` allows only local
741 clients to be killed, whereas `kill:remote` allows to issue a `KILL` for
742 remote clients
743 * Added `locops` and `wallops` to IRC operator flags
744 * Improve/cleanup `HELP` system
745
746
747 -- Noteworthy changes in version 8.1.0beta4 (2013-05-09)
748 * Implemented channel mode +M. Clients that haven't identified their
749 name with NickServ may not speak in a channel that has this mode set
750 * Fixed weird idletimes shown in `TRACE`
751 * Added `nononreg` (+R) to `general::oper_umodes`
752 * Added user mode +F (can see remote client connect/exit notices)
753
754
755 -- Noteworthy changes in version 8.1.0beta3 (2013-05-05)
756 * PCRE support has been dropped
757 * `STATS o` now shows how many times an operator {} block has been used.
758 Similar to `STATS x|q`
759 * Implemented channel mode +c. Known from other ircds, this mode basically
760 prevents users from sending messages including control codes to a channel
761 that has this mode set
762 * Fixed bug where bans were not checked against non-channel members when
763 sending messages to a channel
764 * Removed `channel::quiet_on_ban` configuration option. This feature is
765 now enabled by default
766
767
768 -- Noteworthy changes in version 8.1.0beta2 (2013-04-28)
769 * Fixed broken compile with libGeoIP disabled
770 * Code cleanups; working towards stabilization and improved performance
771 * Removed oper flag `nick_changes`. IRC operators can now set +n at will
772 * Fixed shared {} blocks not working as expected
773 * Fixed spoofs not working as expected
774
775
776 -- Noteworthy changes in version 8.1.0beta1 (2013-04-25)
777 * **IMPORTANT:** name/channel entries can't be stacked any longer within a
778 single resv {} block. Each entry now requires its own resv {} block.
779 Read `doc/reference.conf` for more details
780 * Added `resv::exempt` configuration option. Exempt can be either a
781 ISO 3166 alpha-2 two letter country code, or a nick!user@host mask.
782 CIDR is supported
783 * Removed `channel::restrict_channels` configuration option
784 * Preliminary libGeoIP support. Currently only used for exempt entries
785 in resv {} blocks
786 * Improved WEBIRC authentication; added `webirc` to `auth::flags`.
787 A `webirc.` spoof is now no longer required
788 * Implemented new memory pool allocator which basically is based upon Tor's
789 mempool allocator for Tor cells
790 * Implemented new binary database storage for X-, D-, K-, G-Lines and RESVs.
791 Temporary bans are now stored as well and will persist after a reboot
792 * Channel based resv {} blocks may now contain wildcards
793 * NICK/JOIN now shows the actual reason of reserved nick-/channelnames
794 * contrib/ and its content has been enirely removed from the tree
795 * Added `serverhide::hide_services` configuration option
796 * Added `nononreg` (+R) to `oper::umodes` and `general::oper_only_modes`
797 * Implemented IRCv3.1 `away-notify` extension
798
799
800 -- Noteworthy changes in version 8.0.9 (2013-05-16)
801 * Fixed bug where ircd would sometimes drop a services link because
802 of a missing argument to the `SVSMODE` command
803 * Fixed weird idletimes shown in `TRACE`
804
805
806 -- Noteworthy changes in version 8.0.8 (2013-04-28)
807 * `STATS s` now shows configured services {} blocks as well
808 * Fixed compile warnings, minor code cleanups and optimizations
809 * Increased nickname history length to 32768
810 * Unidentified/unregistered nicks may not speak in +R channels
811
812
813 -- Noteworthy changes in version 8.0.7 (2013-04-12)
814 * Services may now set a channel topic without joining the channel first
815 * Fixed bug where `WHOIS` would send empty sockhost information on TS5 servers
816 * Remote server connection and split notices now go to new user mode +e.
817 These previously used user mode +x.
818 * Services may now change the host of a specific user
819 via `SVSMODE <timestamp> <target> +x <hostname>`
820
821
822 -- Noteworthy changes in version 8.0.6 (2013-01-28)
823 * Fix bug where idle time sometimes is 0 even if the client didn't
824 send any private message
825 * Fixed possible core in try_parse_v4_netmask()
826
827
828 -- Noteworthy changes in version 8.0.5 (2013-01-24)
829 * **IMPORTANT:** nick and topic lengths are now configurable via `ircd.conf`.
830 A `max_nick_length`, as well as a `max_topic_length` configuration option
831 can now be found in the serverinfo {} block
832 * Fixed build on GNU/Hurd
833 * Fixed log files not getting reopened after `REHASH`
834 * Improved logging of configuration file issues
835 * `ircd.pid` has been accidentally saved in `/var` instead of `/var/run`
836 * Linux RT signal support for notification of socket events has been dropped
837 * Fixed `STATS Y|y` sometimes sending weird sendq/recvq values
838 * `INFO` now also shows configured values of `disable_fake_channels`,
839 and `stats_e_disabled`
840 * m_webirc.c is now officially supported, and has been moved from contrib/
841 to modules/
842 * `WHOIS`, `STATS p`, and `TRACE` may now show fake idle times depending
843 on how the new `class::min_idle` and `class::max_idle` configuration
844 directives have been configured. This feature basically works in the
845 same way as it does in csircd
846 * The configuration parser now does support `year` and `month` units
847
848
849 -- Noteworthy changes in version 8.0.4 (2013-01-02)
850 * Fixed possible core on `USERHOST`/`ISON` with optimization enabled
851 * Fixed bug where `can_flood` sometimes didn't work as expected
852
853
854 -- Noteworthy changes in version 8.0.3 (2012-12-24)
855 * Fixed core on `UNDLINE`
856 * `XLINE`, `KLINE`, `RESV`, `DLINE`, `SQUIT`, and `KILL` now have the
857 same default reason if no reason has been specified
858
859
860 -- Noteworthy changes in version 8.0.2 (2012-12-20)
861 * Minor updates to the build system
862 * Fixed broken `--enable-assert` configure switch
863 * Fixed bug where timed events stopped from working if the system's
864 clock is running backwards
865 * `STATS q|Q` now shows how many times a resv {} block has been matched
866 * Fixed contributed WEBIRC module
867 * IRC operators may now again see server generated nick rejection notices
868
869
870 -- Noteworthy changes in version 8.0.1 (2012-11-04)
871 * Fixed broken CIDR support for `CHALLENGE` based IRC operator logins
872 * Fixed class limits not properly applying to operator {} blocks
873 * Fixed possible `TBURST` desynchronization with services
874 * Fixed `TBURST` from leaking the server name if it's a hidden server
875
876
877 -- Noteworthy changes in version 8.0.0 (2012-10-18)
878 * Fixed an off-by-one with spoofs. Spoofs are now also checked for
879 invalid characters
880 * Removed `general::use_whois_actually` configuration directive.
881 This is now enabled by default
882 * Minor `SQUIT` handling fixes
883 * Fixed bancache not being updated on `CHGHOST`/`CHGIDENT`
884
885
886 -- Noteworthy changes in version 8.0.0rc1 (2012-09-28)
887 * Removed `general::client_flood` configuration option and added the
888 new `recvq` configuration directive to class {} blocks.
889 The max size of a receive queue can be seen in `STATS Y`
890 for each class
891 * Allow the `[` and `]` characters in server description
892
893
894 -- Noteworthy changes in version 8.0.0beta3 (2012-08-24)
895 * Fixed wrong syntax in several language files
896 * Removed &localchannels
897 * `PRIVMSG` to opers@some.server is no longer supported
898 * Fixed bug that could lead to topic desynchronization
899 * Removed `serverhide::disable_hidden` configuration option
900 * Dropped ircd-hybrid-6 `GLINE` compatibility mode
901 * Removed `use_invex`, `use_except` and `use_knock` configuration options.
902 These features are now enabled by default
903
904
905 -- Noteworthy changes in version 8.0.0beta2 (2012-07-21)
906 * `channel::disable_fake_channels` now also disables ascii 29 (mIRC italic)
907 when set to yes
908 * Added `channel::max_chans_per_oper` configuration directive. The old way
909 was to let IRC operators join three times the amount of max_chans_per_user
910 * Replaced `MODLOAD`, `MODUNLOAD`, `MODRELOAD`, `MODLIST` and `MODRESTART`
911 commands with the new `MODULE` command which can be fed with the `LOAD,`
912 `UNLOAD`, `RELOAD` and `LIST` parameters.
913 `MODRESTART` has been entirely removed. Use `MODULE RELOAD *` to reload
914 all modules
915 * Added back server notice when a client tries to obtain a reserved nick name
916 * Removed `OMOTD` module
917 * Added `set` to IRC operator privilege flags. Gives access to the `SET` command
918 * Improved TS6 support
919 * Channel keys/passwords are now case sensitive
920
921
922 -- Noteworthy changes in version 8.0.0beta1 (2012-05-28)
923 * Implemented full services support, including but not limited to the
924 following changes:
925 - Added `SVSNICK`, and `SVSMODE` command handlers
926 - Added service stamps to `NICK`/`UID` messages
927 - Added SVS to server capabilities (`CAPAB`). SVS capable servers can
928 deal with extended `NICK`/`UID` messages that contain service IDs/stamps.
929 - Changed rejected client notices to go to new user mode +j. These
930 previously used user mode +r.
931 - Added user mode +r (registered nick) and channel mode +r (registered channel)
932 - Added user mode +R (only registered clients may send a private message)
933 - Added channel mode +R (only registered clients may join that channel)
934 - Various services shortcuts have been added (`NS`, `CS`, `NICKSERV`, `CHANSERV`, etc.)
935 - Added services {} block to `ircd.conf`
936 - Added services_name directive to general {} block
937 - Added `GLOBOPS` mainly for services compatibility, but can be used by IRC operators, too
938 * Removed `RKLINE` and `RXLINE` commands. Regular expression based bans should
939 only be added via `ircd.conf`
940 * Added `globops`, `restart`, `dline`, `undline` and `module` IRC operator privilege flags.
941 Read `doc/reference.conf` for further explanation of what these flags control
942 * Removed Idle-time klines
943 * Cleaned up modules API. Old modules won't work anymore
944 * Removed `general::burst_away` configuration directive. AWAY bursts are now
945 controlled via `connect::flags` explicitly
946 * Introduced new logging subsystem including log rotation based on
947 file sizes. Log timestamp format is ISO8601 now
948 * Added support for remote D-lines
949 * Added user mode +H which is basically a replacement for the hidden_admin and
950 `hidden_oper` operator flags. With user mode +H, IRC operator status can now
951 be hidden even on remote servers
952 * Added CIDR support for operator {} blocks
953 * Removed the servlink program. ircd-hybrid can now make use of
954 SSL/TLS for inter-server communication.
955 NOTE: compressed server links are of course still available, but a SSL/TLS
956 connection is required, as compression is now handled via OpenSSL
957 * Removed `ssl_server_protocol` configuration directive and
958 added `ssl_client_method` and `ssl_server_method` instead.
959 Both of these options can now be changed at runtime
960 * IRC operator login IDs are no longer limited to NICKLEN*2
961 * Removed `channel::burst_topicwho` configuration option. This feature is now
962 enabled by default
963 * `STATS Y|y` now reports CIDR limits as well
964 * Added `m_webirc.c` to `contrib/`
965 * Overall code cleanup and speed improvements
966
967 --------------------------------------------------------------------------------
968
969 BUG REPORTS: If you run this code and encounter problems, you must report
970 the bug by EMAIL to bugs@ircd-hybrid.org
971 Please include a gdb backtrace and a copy of your config.h and
972 ircd.conf with any report (with passwords and other sensitive
973 information masked).
974
975 DISCUSSION: There is a mailing list for discussion of hybrid issues,
976 including betas. To subscribe, use this link:
977 https://lists.ircd-hybrid.org/mailman/listinfo/hybrid
978 This is the proper place to discuss new features, bugs, etc.
979
980 Questions/comments directed to bugs@ircd-hybrid.org
981
982 Other files recommended for reading: README, INSTALL
983
984 --------------------------------------------------------------------------------
985 $Id$

Properties

Name Value
svn:eol-style native
svn:keywords Id