InspIRCd v2.0.11 is now available, downloads can be found here.
This is mainly a bugfix only release, however the Windows version does contain major improvements, a new build system by Adam, and a brand new service wrapper by @ChrisTX. This release also solves build problems on OpenBSD and Solaris.
For a list of fixed issues and improvements see the bug tracker.
A shortlog since the last release:
- Fixed m_ssl_gnutls build on Windows; gnutls.h uses ssize_t which is defined in gcrypt.h
- Replace Windows build system and installer with cmake
- Link win32_memory too inspircd too
- win: Made config, modules, data, and log paths configurable.
- Win32: Rewrite the service wrapper
Daniel Vassdal (1):
- Added support for EXTERNAL
Sadie Powell (14):
- Fix property list arguments.
- OpenBSD does not have KERN_MAXFILESPERPROC.
- Fix the poll socket engine on BSD’s other than FreeBSD.
- Include <list> in base.h to prevent build errors on OpenBSD.
- Replace a GNUmake idiom with the portable equivalent.
- Fix warning: “const type qualifier on return type has no effect”.
- Fix OpenSSL detection on distributions which modify the version number.
- Use GNU install on Solaris.
- Use a better server name in m_httpd.
- Use the preprocessor to detect whether hash_map is available.
- Remove unused variables detected by Clang 4.2.
- Fix multiple escape bugs in m_httpd_stats.
- Reorganise configuration files
- Update Doxyfile for the latest version of Doxygen.
- cmode_b: Correction to the maxbans conditional It was possible to set one more ban beyond the configured limit.
- Modified m_timedbans to behave more like setting mode +b manually. It now accepts extbans.
- Fix errors in socketengine_ports so it compiles on Solaris
- m_ldapoper Fix typo spotted by @lordsith49
- m_banredirect Remove unnecessary hooks, cleanup
- m_banredirect Deny the join to the redirect channel if it has a redirecting ban set that matches the user
- m_messageflood Ask to be the last to handle OnUserPreMessage/OnUserPreNotice
- m_maphide Ignore unregistered users
- m_spanningtree Fix rare desync when a KILL crosses a message that has the killed user’s prefix and modifies global state
- m_chanhistory Fix durations containing ‘S’ being rejected
- m_ssl_gnutls Fix build with GnuTLS 1.x
- Fix exactly <limits:maxchan> long channel names being truncated
- cmd_invite Correct error message when the user has no privs to invite and no halfop prefix is available
- cmd_invite Send invite announcements to halfops and higher when <security:announceinvites> is ‘dynamic’ regardless of the channel being +i or not
- m_ssl_gnutls Fix null pointer dereference in case gnutls_xxx_get_name() returns NULL
- cmd_lusers Convert to a module
- cmd_lusers Refresh max local/global user counters after a user connects
- cmd_lusers Use of size() instead of counting elements
- cmd_lusers Be smart and know how many invisible users are there without iterating the userlist
- m_dnsbl Fix connecting users timeouting when a dnsbl result is in the dns cache
- Stop user initialization when the user is marked as quitting after OnSetUserIP
- Either store the Resolver in DNS::AddResolverClass() or delete it before returning
- Fix m_dnsbl not checking cgiirc users when the cgiirc address is elined
- m_connectban Switch to OnSetUserIP hook to handle cgiirc users properly, ignore e-lined users
- Remove dead code from DNS
- m_ssl_openssl Make it clear that a CA file is not mandatory
- m_connflood Ignore e-lined users
- m_permchannels Load channels from the config only at module load time and only when there are no linked servers to avoid desync
- m_spanningtree Fix incoming channel modes being lost for 0-user permanent channels on the losing side of a netmerge
- Add support for mandatory tags in included config files
- Fix infinite loop when all DNS request slots are in use
- m_timedbans Notice halfops and above when a timed ban is placed
- Initialize the FakeClient pointer in InspIRCd::InspIRCd()
- Accept -c as a command line argument (equivalent to –config)
- m_xline_db Major enhancements
- m_xline_db Fix pointless excessive stack usage in ReadDatabase()
- cmd_lusers Fix miscounting
- Fix premature overwriting of OLDTIME that resulted in time drifts never being detected
- m_ldapoper Fix memory leak
- m_ldapoper Make the module actually work
- Update doc and fix the description of m_allowinvite
- cmd_kill Send snotice to servers when both the oper and the victim are on the same server
- Release 2.0.11