]> jfr.im git - irc/rizon/znc.git/tag
znc-0.064
object 25d172037f6b7c0828297d7382f22e7b103a2754
authorUli Schlachter <redacted>
Mon, 16 Feb 2009 15:46:10 +0000 (16:46 +0100)
Changes since ZNC-0.062:

New stuff:
* schat now prints a message if a client connects and there are still some active schats.
* awaynick: Set awaynick on connect, not after some time.
* Allow adding new servers through /msg *status addserver even if a server with the same name but e.g. a different port is already added.
* Show the current server in /msg *status listservers with a star.
* /msg *status listmods now displays the module's arguments instead of its description. Use listavailmods for the description.
* ZNC now updates the channel buffers for detached channels and thus gives a buffer replay when you reattach.
* watch now adds timestamps to messages it adds to the playback buffers.
* ZNC should now work on cygwin out of the box (use --disable-ipv6).
* Webadmin will handle all HTTP requests on the irc ports. Use -noircport to disable this.

Fixes:
* Handle read errors in CFile::Copy() instead of going into an endless loop.
* Make schat work properly again and clean it up a little.
* Removed all calls to getcwd(). We now no longer depend on PATH_MAX.
* stickychan: Don't try to join channels if we are not connected to IRC.
* watch now saves its settings.
* Don't forward PONG replies that we requested to the user.
* awaynick evaluated the awaynick multiple times and thus didn't set the nick back.
* znc-config --version said '@VERSION@' instead of the actual version number.
* Handle JOIN redirects due to +L.
* Remove the length restrictions on webadmin's password fields which led to silent password truncation.
* Webadmin now reloads global modules if you change their arguments.
* The main binary is no longer built with position independent code.
* ZNC failed to bounce DCCs if its own ip started with a value above 127.
* Savebuff no longer reloads old channel buffers if you do '/msg *status clearbuffer'.
* Some work has been done to make ZNC work with mingw (It doesn't work out of the box yet).
* modperl used huge amounts of memory after some time. This is now fixed.
* shell now generates error messages if e.g. fork() fails.
* If the allowed buffer size is lowered, the buffer is now automatically shrunk.
* Webadmin now refuses to transfer files bigger than 16 MiB, because it would block ZNC.

Minor stuff:
* Only reply to /mode requests if we actually know the answer.
* Lowered some timeouts.
* Memory usage optimizations.
* Allow custom compiler flags in znc-buildmod via the $CXXFLAGS and $LIBS environment flags.
* Show the client's IP in debug output if no username is available yet.
* Allow /msg *status setbuffer for channels we are currently not on.
* Updated the README.
* Use @includedir@ instead of @prefix@/include in the Makefile.
* Use RTLD_NOW for loading modules instead of RTLD_LAZY which could take down the bouncer.
* Use stat() instead of lstat() if the latter one isn't available.
* CExecSock now generates an error message if execvp() fails.
* Improved some error messages.

Internal stuff:
* Add traffic tracking support to CSocket. Every module that uses CSocket now automatically gets the traffic it causes tracked.
* Add VERSION_MINOR and VERSION_MAJOR defines.
* Rework CZNC::Get*Path() a little.
* Remove the IPv6 stuff from CServer. It wasn't used at all.
* Make email use CSocket instead of Csock.
* Cleaned up and improved CFile::ReadLine() and CChan::AddNicks() a little.
* Replaced most calls to strtoul() and atoi() with calls to the appropriate CString members.
* Moved the SetArgs() call before the OnLoad() call so that modules can overwrite their arguments in OnLoad().
* Let 'CZNC::AddUser()' check if the user name is still free.
* API stuff:
** Added CModule::IsGlobal().
** Added CModule::BeginTimers(), EndTimers(), BeginSockets() and EndSockets().
** Added CModule::ClearNV().
** Removed ReadFile(), WriteFile(), ReadLine() (Use CFile instead), Lower(), Upper() (Use CString::AsUpper(), ::ToUpper(), ::*Lower() instead) and added CFile::ReadFile()
** Added CModules::OnUnknownUserRaw().
** Added CUtils::SaltedHash() for computing the salted MD5 hashes ZNC uses.
** Removed CLockFile and made CFile take over its job.
** Change the return type of CUtils::GetPass() to CString.
** Added a DEBUG(f) define that expands to DEBUG_ONLY(cout << f << endl).
** Removed some unused functions and definitions.