Skip to content
ZNC 1.2

Changes since ZNC 1.0

New
===

* ZNC has been relicensed to Apache 2.0
* Show password block in --makepass in new format
* Return MaxJoins setting, it helps against server sending ZNC too many lines
  at once and disconnecting with "Max SendQ exceeded"
* Make /znc detach case insensitive, allow "/detach #chan1,#chan2" syntax
* No longer store 381 in the buffer

Fixes
=====

* CModule::OnMode(): Fix a stupid NULL pointer dereference
* Fix NULL pointer dereference in webadmin.
* Fix a crash when you delete a user with more than one attached client
* Fix a random crash with module hooks
* Revert "Rewrite the JOIN channel logic, dropping MaxJoins"
* Fix build on some systems
* Fix build of shallow git clone
* Fix build of git tags
* Fix OOT builds with swig files in source dir
* Don't send NAMES and TOPIC for detached channels when a client connects
* Fix memory leak
* Consistency between Del* and Rem* in command names
* Fix changing client nick when client connects.
* Timezone GMT+N is really GMT+N now. It behaved like -N before.
* Escape special characters in debug output (znc --debug)
* Don't disconnect networkless users without PINGing them first.
* Don't lose dlerror() message.
* Fix use-after-free which may happen during shutdown
* Fix "Error: Success" message in SSL
* Fixed double forward slashes and incorrect active module highlighting.
* make clean: Only delete files that can be regenerated
* Don't make backup of znc.conf readable by everyone.
* makepem: create pem only rw for the user, on non-win32
* Don't ever try to overwrite /usr/bin/git
* Fix user modes
* Request secure cookie transmission for HTTPS
* "make clean" removes .depend/
* Fix support for /msg @#chan :hi
* Fix saving config on some cygwin installations
* Fix error message for invalid network name

Modules
=======

* Return old fakeonline module (accidentally removed in 1.0) as modules_online
* autoattach: add string searching
* autocycle: Convert to a network module
* chansaver: Fix chansaver to not rewrite the config each time a user joins a
  channel on startup
* cert: Make default type of cert mod to be network.
* watch: Don't handle multiple matching patterns for each target
* route_replies: Add some WHOIS numerics
* block_motd: Allow block_motd to be loaded per-network and globally
* notify_connect: Fixed syntax on attach/detach messages to be more consistent
* cyrusauth: Fix user creation

controlpanel
------------
* Support network module manipulation
* Increases general verbosity of command results.
* Fix bug for "Disconnect" help
* Standardize error wordings

webadmin
--------

* Allow loading webadmin as user module.
* Show instructions on how to use networks in Add Network too
* clarify that + is SSL
* Show example timezone in webadmin
* Enable embedding network modules.
* Enable embedding modules to network pages.
* Change save network to show the network and not redirect user

sasl
----

* Implement DH-AES encrypted password scheme.
* Add missing length check
* Description line for DH-BLOWFISH
* Fixing unaligned accesses

awaystore
---------

* Fix loading old configs which refered to "away" module
* Fix displaying IPv6 addresses

crypt
-----

* Add time stamp to buffered messages
* Use ASCII for nick prefix and make it configurable

nickserv
--------

* Make NickServ nickname configurable.
* Add support for NickServ on wenet.ru and Azzurra
* nickserv: don't confuse people so much

log
---

* Add -sanitize option to log module.
* Convert / and \ character to - in nicks for filenames.
* Create files with the same permissions as the whole log directory.

charset
-------

* Don't try to build charset module if iconv is not found
* Fix: Converted raw string include NULL character in charset module

modperl
-------

* A bit more debug output on modperl
* Fix perl modules being shown incorrectly in the webadmin

partyline
---------

* Fix PartyLine so that forced channels may not be left at all - users will be
rejoined at once.
* Fix partyline rejoin on user deletion

Internal
========

* Require SWIG 2.0.8 for modperl/modpython (removes hacks to make older SWIG
  work)
* Web interface now supports gzip compression
* Update server-time to new specs with ISO 8601
* Add a generic threads abstraction
* Add CString::StripControls to strip controls (Colors, C0) from strings
* Change PutModule to handle multiple lines
* Debug output: Only print queued lines if they are really just queued
* Add initial unit tests, runnable by "make test"
* Add nick comparison function CNick::NickEquals
* Force including zncconfig.h at the beginning of every .cpp
* Add OnAddNetwork, OnDeleteNetwork module hooks