-
-
-
znc-1.6.4ed71ad1e · ·
ZNC 1.6.4 Changes since ZNC 1.6.3 Fixes ===== * Fixed build with OpenSSL 1.1. * Fixed build on Cygwin. * Fixed a segfault after cloning a user. The bug was introduced in ZNC 1.6.0. * Fixed a segfault when deleting a user or network which is waiting for DNS during connection. The bug was introduced in ZNC 1.0. * Fixed a segfault which could be triggered using alias module. * Fixed an error in controlpanel module when setting the bindhost of another user. * Fixed route_replies to not cause client to disconnect by timeout. * Fixed compatibility with the Gitter IRC bridge. Internal ======== * Fixed `OnInvite` for modpython and modperl. * Fixed external location of GoogleTest for `make test`.
-
-
-
-
znc-1.6.390d03a48 · ·
ZNC 1.6.3 Changes since ZNC 1.6.2 Core ==== * New character encoding is now applied immediately, without reconnect. * Fixed build with LibreSSL. * Fixed error 404 when accessing the web UI with the configured URI prefix, but without the `/` in the end. * `znc-buildmod` now exits with non-zero exit code when the .cpp file is not found. * Fixed `znc-buildmod` on Cygwin. * ExpandString got expanded. It now expands `%znc%` to `ZNC <version> - http://znc.in`, honoring the global "Hide version" setting. * Default quit message is switched from `ZNC <version> - http://znc.in` to `%znc%`, which is the same, but "automatically" changes the shown version when ZNC gets upgraded. Before, the old version was recorded in the user's quit message, and stayed the same regardless of the current version of ZNC. Modules ======= * modperl: * Fixed a memory leak. * sasl: * Added an option to show which mechanisms failed or succeeded. * webadmin: * Fixed an error message on invalid user settings to say what exactly was invalid. * No more autocomplete password in user settings. It led to an error when ZNC thought the user is going to change a password, but the passwords didn't match.
-
-
-
znc-1.6.255b5c242 · ·
ZNC 1.6.2 Changes since ZNC 1.6.1 Fixes ===== * Fixed a use-after-delete in webadmin. It was already partially fixed in ZNC 1.4; since 1.4 it has been still possible to trigger, but much harder. * Fixed a startup failure when awaynick and simple_away were both loaded, and simple_away had arguments. * Fixed a build failure when using an ancient OpenSSL version. * Fixed a build failure when using OpenSSL which was built without SSLv3 support. * Bindhost was sometimes used as ident. * `CAP :END` wasn't parsed correctly, causing timeout during login for some clients. * Fixed channel keys if client joined several channels in single command. * Fixed memory leak when reading an invalid config. Modules ======= * autovoice: * Check for autovoices when we are opped. * controlpanel: * Fixed `DelCTCPReply` case-insensitivity. * dcc: * Add missing return statement. It was harmless. * modpython: * Fixed a memory leak. * modules_online: * Wrong ident was used before. * stickychan: * Fixed to unstick inaccessible channels to avoid infinite join loops. Internal ======== * Fixed the nick passed to `CModule::OnChanMsg()` so it has channel permissions set. * Fixed noisy `-Winconsistent-missing-override` compilation warnings. * Initialized some fields in constructors of modules before `OnLoad()`. Cosmetic ======== * Various modules had commands with empty descriptions. * perform: * Say "number" instead of "nr". * route_replies: * Make the timeout error message more clear.
-
-
znc-1.6.1aa6e7e74 · ·
ZNC 1.6.1 Changes since ZNC 1.6.0 Fixes ===== * Fixed the problem that channels were no longer removed from the config despite of chansaver being loaded. * Fixed query buffer size for users who have the default channel buffer size set to 0. * Fixed a startup failure when simple_away was loaded after awaynick. * Fixed channel matching commands, such as DETACH, to be case insensitive. * Specified the required compiler versions in the configure script. * Fixed a rare conflict of HTTP-Basic auth and cookies. * Hid local IP address from the 404 page. * Fixed a build failure for users who have `-Werror=missing-declarations` in their `CXXFLAGS`. * Fixed `CXXFLAGS=-DVERSION_EXTRA="foo"` which is used by some distros to package ZNC. * Fixed `znc-buildmod` on Cygwin. Modules ======= * chansaver: * Fixed random loading behavior due to an uninitialized member variable. * modpython: * Fixed access to `CUser::GetUserClients()` and `CUser::GetAllClients()`. * sasl: * Improved help texts for the SET and REQUIREAUTH commands. * savebuff: * Fixed periodical writes on the disk when the module is loaded after startup. * webadmin: * Fixed module checkboxes not to claim that all networks/users have loaded a module when there are no networks/users. * Added an explanation that ZNC was built without ICU support, when encoding settings are disabled for that reason. * Improved the breadcrumbs. * Mentioned ExpandString in CTCP replies. * Added an explanation how to delete port which is used to access webadmin. Internal ======== * Fixed `CThreadPool` destructor to handle spurious wakeups. * Fixed `make distclean` to remove `zncconfig.h`. * Improved the error message about `--datadir`. * Fixed a compilation warning when `HAVE_LIBSSL` is not defined. * Fixed 'comparision' typos in CString documentation. * Added a non-minified version of the jQuery source code to make Linux distributions (Debian) happy, even though the jQuery license does not require this.
-
-
znc-1.6.0f47e8465 · ·
ZNC 1.6.0 Changes since ZNC 1.4 New === * Switch versioning scheme to <major>.<minor>.<patch>. * Add settings for which SSL/TLS protocols to use (SSLProtocols), which ciphers to enable (SSLCiphers). By default TLSv1+ are enabled, SSLv2/3 are disabled. Default ciphers are what Mozilla advices: https://wiki.mozilla.org/Security/Server_Side_TLS#Intermediate_compatibility_.28default.29 * Validate SSL certificates. * Allow clients to specify an ID as part of username (user[@identifier][/network]). Currently not used, but modules can use it. * Add alias module for ZNC-side command interception and processing. * Support character encodings with separate settings for networks, and for clients. It replaces older charset module, which didn't work well with webadmin, log and other modules. * Support X-Forwarded-For HTTP header, used with new TrustedProxy setting. * Add URIPrefix option for HTTP listeners, used with reverse proxy. * Store query buffers per query the same way it's done for channels, add new option AutoClearQueryBuffer. * Add DisableChan command to *status, it was available only in webadmin before. * Allow wildcards in arguments of Help commands of *status and various modules. * Support IRCv3.2 batches, used for buffer playbacks. * Support IRCv3.2 self-message. * Remove awaynick module. It's considered bad etiquette. * Add JoinDelay setting, which allows a delay between connection to server, and joining first channel. By default it joins immediately after connect. * Make Detach, EnableChan and DisableChan commands of *status accept multiple channels. * znc-buildmod: Build output to the current working directory. * Wrap long lines in tables (e.g. in Help or ListAvailMods commands). * Support ECDHE if available in OpenSSL. * Report ZNC version more consistently, add HideVersion setting, which hides ZNC version from public. * Bump compiler requirements to support C++11. This means GCC 4.7+, Clang 3.2+, SWIG 3.0.0+. Fixes ===== * Disable TLS compression. * Disallow setting ConnectDelay to zero, don't hammer server with our failed connects. * Simplify --makeconf. * Fix logic to find an available nick when connecting to server. * Fix handling of CTCP flood. * Allow network specific quit messages. * Make various text labels gender-neutral. * Fix finding SWIG 3 on FreeBSD. * Handle multi-receiver NOTICE and PRIVMSG. * Make channels follow user-level settings when appropriate. * Write disabled status to config for disabled channels. * Fix double output in messages from modules. * Fix memory leak in gzip compression in HTTP server. * Use random DNS result instead of choosing the same one every time. * Fix HTTP basic auth. * Mention network in message shown if client didn't send PASS. Modules ======= * autoattach: ** Make it also a network module. * autoreply: ** Use NOTICE instead of PRIVMSG. * autoop: ** Add support for multiple hostmasks per user. * awaystore: ** Store CTCP ACTIONs too. ** Reset timer and return from away when a client does a CTCP ACTION. ** Allows use of strftime formatting in away messages. * bouncedcc: ** Fix quotes in file names. ** Fix check for "Connected" state. * buffextras: ** Make it also a network module. * chansaver: ** Fix saving channel keys. ** Add support for loading as a global module. * controlpanel: ** Add AddChan, DelChan commands, useful for admins to edit other users' channels, was available only in webadmin before. ** Check if adding a new channel succeeded. ** Revise Help output. ** Allow wildcards for GetChan and SetChan. * flooddetach: ** Show current value in Lines and Secs commands. ** Add Silent [yes|no] command, similar to route_replies. * listsockets: ** Show traffic stats. * log: ** Use only lower case characters in log filenames. ** Use directories and YYYY-MM-DD filename by default. ** Add support for logging rules. E.g. /msg *log setrules #znc !#* * modperl: ** Fix some int_t types. * modpython: ** Fix calling overloaded methods with parameter CString&. ** Support CZNC::GetUserMap(). ** Set has_args and args_help_text from module. ** Release python/swig ownership when adding object created in python to ZNC container. ** Fix some int_t types. ** Enable default arguments feature of SWIG 3.0.4. No functionality change, it just makes generated code a bit more beautiful. * nickserv: ** Support tddirc.net. ** Remove commands Ghost, Recover, Release, Group. The same functionality is available via new alias module. * q: ** Add JoinOnInvite, JoinAfterCloaked options. ** Don't cloak host on first module load if already connected to IRC. ** Add web configuration. ** Use HMAC-SHA-256 instead of HMAC-MD5. * route_replies: ** Handle numerics 307 and 379 in /whois reply. Handle IRCv3.2 METADATA numerics. * sample: ** Make it a network module, which are easier to write. * sasl: ** Remove DH-BLOWFISH and DH-AES. See http://nullroute.eu.org/~grawity/irc-sasl-dh.html and http://kaniini.dereferenced.org/2014/12/26/do-not-use-DH-AES-or-DH-BLOWFISH.html for details. * savebuff: ** Do not skip channels with AutoClearChanBuffer=true. ** Handle empty password in SetPass the same way as during startup. * simple_away: ** Apply auto-away on load if no user is connected. * stickychan: ** Don't join channels when not connected. * watch: ** Add support for detached-only clients, and detached-only channels. * webadmin: ** Combine "List Users" and "Add User". ** Module argument autocomplete="off", for nickserv module, which contains password in argument before first save. ** For every module show in which other levels that module is loaded (global/user/network). ** Open links to wiki pages about modules in separate window/tab. ** Support renaming a network (it was already possible outside of webadmin, via /znc MoveNetwork). However, it doesn't support moving networks between users yet, for that use /znc command. ** Add missing page title on Traffic page. ** Improve navigation: "Save and continue". ** Clarify that timestamp format is useless with server-time. Internal ======== * Move Csocket to git submodule. * Unit tests, via GTest. * Allow lambdas for module command callbacks. * New modules hooks: OnSendToClient, OnSendToIRC, OnJoining, OnMode2, OnChanBufferPlayLine2, OnPrivBufferPlayLine2. * Add methods to CString: StartsWith, EndsWith, Join, Find, Contains, and Convert. * Add limited support for using threads in modules: CModuleJob class. * Inherit CClient and CIRCSock from a common class CIRCSocket. * Add CZNC::CreateInstance to make porting ZNC to MSVC a bit easier. * Add CUtils::Get/SetMessageTags(). * Add CIRCNetwork::FindChans(). * Add CChan::SendBuffer(client, buffer) overload. * Add CIRCNetwork::LoadModule() helper. * Add CClient::IsPlaybackActive(). * Web: Discard sessions in LRU order. * Introduce CaseSensitivity enum class. * Fix CNick::Parse(). * Remove redundant CWebSocket::GetModule(). * Switch from CSmartPtr to std::shared_ptr. * Fix GetClients() const correctness. * Make self-signed cert with SHA-256, provide DH parameters in --makepem. * Use override keyword. * Show username of every http request in -D output. * Split CUserTimer into CIRCNetworkPingTimer and CIRCNetworkJoinTimer. * Give a reason for disabled features during ./configure, where it makes sense. * Use make-tarball.sh for nightlies too. * Revise CChan::JoinUser() & AttachUser(). * Modules: use public API. * Modules: use AddCommand(). * Add ChangeLog.md.
-
znc-1.45ea2c367 · ·
ZNC 1.4 Changes since ZNC 1.2 This release is done to fix a denial of service attack through webadmin. After authentication, users can crash ZNC through a use-after-delete. Additionally, a number of fixes and nice, low-risk additions from our development branch is included. In detail, these are: New === * Reduce users' confusion during --makeconf. * Warn people that making ZNC listen on port 6667 might cause problems with some web browsers. * Always generate a SSL certificate during --makeconf. * Stop asking for a bind host / listen host in --makeconf. People who don't want wildcard binds can configure this later. * Don't create ~/.znc/modules if it doesn't exist yet. Fixes ===== * Fix a use-after-delete in webadmin. * Honor the BindHost whitelist when configuring BindHosts in controlpanel module. * Ignore trailing whitespace in <code>/znc jump</code> arguments. * Change formatting of startup messages so that we never overwrite part of a message when printing the result of an action. * Fix configure on non-bash shells. * Send the correct error for invalid CAP subcommands. * Make sure znc-buildmod includes zncconfig.h at the beginning of module code. Modules ======= * Make awaystore automatically call the Ping command when the Back command is used. * Add SSL information and port number to servers in network list in webadmin. * Disable password autocompletion when editing users in webadmin. * Make nickserv module work on StarChat.net and ircline.org. * Remove accidental timeout for run commands in shell module. * certauth now uses a case insensitive comparison on hexadecimal fingerprints. controlpanel ------------ * Correct double output. * Add support for the MaxNetworks global setting. * Add support for the BindHost per-network setting. modperl and modpython --------------------- * Make <code>OnAddNetwork</code> and <code>OnDeleteNetwork</code> module hooks work. * Don't create .pyc files during compilation. * Fix modperl on MacOS X. Twice. * Require at least SWIG 2.0.12 on MacOS X. Internal ======== * Don't redefine _FORTIFY_SOURCE if compiler already defines it. * Cache list of available timezones instead of re-reading it whenever it is needed. * Improve const-correctness. * Fix various low-priority compiler warnings. * Change in-memory storage format for ServerThrottle. * Use native API on Win32 to replace a file with another file. * Add src/version.cpp to .gitignore.
-
znc-1.249cf40b1 · ·
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
-
znc-1.073b2daf2 · ·
ZNC 1.0 Changes since ZNC 0.206 The Big News ============ Multiple networks per user -------------------------- Think about new users as "user groups", while new networks are similar to old users. To login to ZNC, use user/network:password as password, or user/network as username. Also, you can switch between different networks on the fly using the /znc JumpNetwork command. When you first run ZNC 1.0, it will automatically convert your config and create a network called "default" for each user. Settings from each user are moved into these "default" networks. When you log into ZNC without setting a network, the "default" network will automatically be chosen for you. Users can create new networks up to an admin-configurable limit. By default, this limit is one network per user. Existing user-per-network setups can be migrated to the new multinetwork setup using the /znc MoveNetwork command. You can see a list of networks via /znc ListNetworks and /znc ListAllUserNetworks Timezones --------- Timezone can now be configured by name, e.g. "GMT-9", or "Europe/Madrid". Old TimezoneOffset setting (which was the number of hours between the server's timezone and the user's timezone) is deprecated and should not be used anymore. Its old value is lost. The reason for this change is that the old TimezoneOffset was not trivial to count and often broke during switches to/from daylight savings time. So if you previously used the TimezoneOffset option, you now have to configure your timezone again (via the webadmin or controlpanel module). No more ZNC-Extra ----------------- Most modules from ZNC-Extra are now enabled in the usual installation. It was pointless to have them shipped in the tarball, but requiring user to add some weird flags to ./configure. Antiidle, fakeonline and motdfile modules are dropped. Away module is renamed to awaystore to better explain its meaning. Detailed Changelog ================== Fixes ----- * Don't try IPv6 servers when IPv6 isn't available. Use threads for non-blocking DNS instead of c-ares. * Fix debug output of identfile. * Don't forward WHO replies with multi-prefix to clients which don't support multi-prefix * Send nick changes to clients before we call the OnNick module hook * Don't connect to SSLed IRC servers when ZNC is compiled without SSL support * Fix check for visibility support in the compiler * Fix compilation on cygwin again, including modperl and modpython * Support parting several channels at once * Fix a crash in admin (now controlpanel) module * Fix webadmin to deny setting a bindhost that is not on the global list of allowed bindhosts. * Fix using empty value for defaults in user page in webadmin. Minor Stuff ----------- * Rename admin module to controlpanel to make it clearer that it's not the same as admin flag of a user. * Add protection from flood. If you send multiple lines at once, they will be slowed down, so that the server will not disconnect ZNC due to flood. It can be configured and can be completely turned off. Default settings are: 1 line per second, first 4 lines are sent at once. * Modules can support several types now: a module can be loaded as a user module, as a network module *and* as a global module, if the module supports these types. * Rename (non-)KeepBuffer to AutoClearChanBuffer * Process starttls numeric * Improvements to modperl, modpython, modtcl. * Add timestamps to znc --debug * Listeners editor in webadmin * Add sasl module which uses SASL to authenticate to NickServ. * Rename saslauth to cyrusauth, to make it clearer that it's not needed to do SASL authentication to NickServ. * Modules get a way to describe their arguments. * webadmin: allow editing of the bindhost without global list. * Don't send our password required notice until after CAP negotiation * Rewrite the JOIN channel logic, dropping MaxJoins * Support messages directed to specific user prefixes (like /msg @#channel Hello) * Show link to http://znc.in/ from web as a link. It was plain text before. * Webadmin: use HTML5 numeric inputs for numbers. * Add SSL/IPv6/DNS info to znc --version * Clarify that only admins can load the shell module. * cyrusauth: Allow creating new users on first login * Clear channel buffers when keep buffer is disabled if we're online * send_raw: Add a command to send a line to the current client * webadmin: Implement clone user * autoreply: Honor RFC 2812. * Add 381 to the buffer ("You are now an IRC Operator") * identfile: Pause the connection queue while we have a locked file * Add ShowBindHost command * autoop: Check for autoops when we get op status * Improvements and fixes to the partyline module * partyline: Drop support for fixed channels * Check that there're modules available on startup. Check if ZNC is installed or not. * Modified description field for bouncedcc module to explain what the module actually does. * nickserv: add support for nickserv requests on wenet.ru and rusnet. * send 422 event if MOTD buffer is empty * route_replies: Handle much more replies * Clear text colors before appending timestamps to buffer lines, add space before AppendTimestamp for colorless lines. * Don't replace our motd with a different servers motd * webadmin: Add a "Disabled" checkbox for channels * Send a 464 ERR_PASSWDMISMATCH to clients that did not supply a password * Separate compilation and linking for modules. * Trim spaces from end of commands to autoattach. * nickserv: add ghost, recover and release * Warn if config was saved in a newer ZNC version. * Backup znc.conf when upgrading ZNC. Internal Stuff -------------- * #include <znc/...h> instead of #include "...h" * Add string formatting function with named params. * Python, perl: support global, user, network modules. * Csock: able use non-int number of secs for timer. * CString("off").ToBool() shouldn't be true * Python: Override __eq__ to allow comparison of strings * python: Allow iterating over CModules * Add methods to CModule to get the web path * Rework modperl to better integrate with perl. * Store all 005 values in a map. * Python: Use znc.Socket if no socket class is specified in CreateSocket() * CZNC::WriteConfig(): Better --debug output * Slight refactor of CBuffer & CBufLine. * Implemented an OnInvite hook * Allow a client to become "away" * Create a connection queue * Set default TrimPrefix to ":" * Add a config writer * Wrap MODULECALL macros in a do-while * Don't require CTimer's label to be unique if its empty * Allow loading python modules with modpython (ex. modname/__init__.py) * bNoChange in On{,De}{Op,Voice} wast incorrect * Drop znc-config, change znc-buildmod so it doesn't need znc-config
-
znc-0.206192e6b02 · ·
ZNC 0.206 Changes since ZNC 0.204 Fixes: * Identfile: don't crash when ZNC is shutting down. * CTCPReplies setting with empty value now blocks those CTCP requests to the client. * Show more sane error messages instead of "Error: Success". * Imapauth: Follow RFC more closely. * "No" is a false value too. Minor stuff: * Add Show command to identfile, which should help you to understand what's going on, if identfile is blocking every connection attempt for some reason. * Make TLS certs valid for 10 years. * Ask for port > 1024 in --makeconf. * Reset JoinTries counter when we enable a channel.
-
znc-0.20426638290 · ·
ZNC 0.204 Changes since ZNC 0.202 This release fixes CVE-2012-0033. Fixes: * Fix a crash in bouncedcc module with DCC RESUME. * Fix modperl compilation. * Don't use mkdir during install. * Fix compilation failures, which happened sometimes when an older ZNC was already installed. * Check for the swig2.0 binary too, instead of only swig. Minor stuff: * Unload modules in reverse order. * Don't send server redirects (numeric 010) to clients. * Make it possible to filter the result of the help command. * Drop @DEFS@ from the build system so that we don't force HAVE_CONFIG_H upon others. * Move autocycle to extra. * Handle raw 482 in route_replies. * Improve identfile's debug messages. * Send a MODE request when JOINing. * Block raw 301 in antiidle.