ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/NEWS
Revision: 9699
Committed: Sun Nov 1 13:37:21 2020 UTC (5 years, 9 months ago) by michael
File size: 44880 byte(s)
Log Message:
- Update NEWS file

File Contents

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

Properties

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