ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/NEWS
Revision: 9816
Committed: Fri Dec 11 19:08:58 2020 UTC (5 years, 7 months ago) by michael
File size: 46345 byte(s)
Log Message:
- Revert echo-message changes for now

File Contents

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

Properties

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