InspIRCd v2.0.16 is now available, downloads are here.

This is a bugfix-only release, containing several stability related and correctness improvements. An issue has also been fixed that prevented clients using NSS for SSL/TLS such as Pidgin (via libpurple), ChatZilla, Instantbird, etc. from reconnecting to a server using OpenSSL after disconnection. See this bug report for more information.

Upgrading is strongly recommended.

The example configuration and the helpop text received a huge update as well, hopefully the new explanations will make things easier to understand. Let us know if you find something in the documentation that is unclear to you.

The issue tracker contains a list of the reported bugs which got fixed in this version. View the complete changelog here.

Thanks to the following people for their efforts that made this release possible:

Adam (3):

  • Set a session id on our server ssl context in m_ssl_openssl. It is required for some clients which try to restore SSL sessions.
  • Fix new file descriptor debug log message in socketengine_poll to show the correct events
  • Fix /who on opers incorrectly showing +i opers to users without the privilege to see them

Attila Molnar (22):

  • m_ssl_openssl Fix memory leaks on /rehash ssl, unload and in VerifyCertificate()
  • m_banredirect Fix typo in a message (transfered -> transferred)
  • socketengine_epoll Initialize CurrentSetSize (only used by m_httpd_stats)
  • socketengine_select Reset the values in the timeval struct on *nix before select()
  • Fix NULL dereference on rehash when there is a fatal error in the configuration of connect classes
  • m_spanningtree Don't send snotices to servers about remote servers splitting
  • m_spanningtree Do pointer comparison before deleting one of the pointers in TreeSocket::Squit()
  • Improve detection for non-cidr masks to prevent unwanted matches
  • cmd_names Allow opers having the channels/auspex priv to view the NAMES list of +s channels from outside
  • Backport "Refactor Channel::UserList() to use std::string"
  • Fix NAMES list getting truncated on servers having an excessively long server name
  • m_operprefix Don't set +y on the oper if hideoper is being unset due to deopering
  • m_httpd Fix typo noticed by @SaberUK
  • m_globalload Don't pass a callback to ModuleManager::Reload() if reloading m_globalload
  • m_watch Validate targ before use, noticed while rewriting m_watch for 2.2
  • Major example configuration and helpop update
  • Fix typos and update text in the configure script
  • Add REG_ALL checks to treat unregistered users as nonexistent in more cases
  • Fix snotice about disabled command usage being sent to the wrong snomask
  • Fix typo in helpop-full that prevented it from loading and other minor helpop issues
  • Fix IPv6 address handling in 6aaf7047297b739377e7d509cb914f32447fb281
  • Release 2.0.16

Peter Powell (2):

  • Fix various problems detected by Clang 3.4.
  • Fix Solaris not being able to find modules without pkg-config.

Daniel Vassdal (1):

  • Fix build problem on Solaris