ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/NEWS
Revision: 9783
Committed: Fri Dec 4 13:25:20 2020 UTC (5 years, 7 months ago) by michael
File size: 46216 byte(s)
Log Message:
- Update NEWS

File Contents

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

Properties

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