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 services
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
Peter Powell (14):
Fix property list arguments.
OpenBSD does not have KERN_MAXFILESPERPROC.
Fix the poll socket engine on BSD's other than FreeBSD.
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