ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/NEWS
Revision: 9666
Committed: Sun Oct 11 12:50:37 2020 UTC (5 years, 9 months ago) by michael
File size: 43524 byte(s)
Log Message:
- Update NEWS file

File Contents

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

Properties

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