Otherwise indicated differently, all changes made by Jelmer Vernooij. Ctrlproxy 3.0.5 UNRELEASED IMPROVEMENTS * Integrate auto-away module into the core. * New settings ``autosave'', ``replication'' Ctrlproxy 3.0.4 UNRELEASED IMPROVEMENTS * Add ctrlproxy-admin command for command-line access to the admin network. * Send message to the client when ctrlproxy connects to the network. * Announce number of clients/channels during client login. (#162) * Add "set" command in the administration interface, including initial settings "log_level", "motd-file" and "report-time". (#6) * Add "default-network" setting. BUG FIXES * Don't allow disconnect of admin network. (#164) * Clearer error messages during disconnect. * Handle ping timeouts from server. (#158) * Don't crash when network of listener goes away. (#168) * Don't abort when sending colon to listener. (#167) * Handle 263 response correctly. * Properly send non-data lines when using repl_lastdisconnect. (#146) * No longer "skip" users on reconnect. (#146) * Check for empty argument to /CTRLPROXY BACKLOG (#132) * Integrate some more standard replication backends. * Allow specifying a network in the password, separated by a colon (:). (#11) * Integrate listeners into the core. * Reconcile log_custom and log_irssi. (#114) * Integrate socks support into listener code. Socks connections can now be accepted at the same port as other connections. * Allow configuring a single listener in ~/.ctrlproxy/config. * Several simplifications of the configuration file. * Recognize NS as command for NickServ (#145) * Start checking plugin versions. * Open log file if stdout goes away. * Make /AWAY with empty argument mark as unaway. (Adeodato Simó) * Automatically mark as unaway when a client connects and auto-away/no_client=true. (#150) * Add support for handling additional 005 parameters: HCN. * Compress /NAMES lines (#123). * Bail out when invalid arguments are specified on the command-line (Emanuele Giaquinta ) * Make connect to networks non-blocking. (#133) * Support IRCD 005 parameter. (#160) * Redirect DCC messages to clients. (#163) NEW FEATURES * New configuration option for auto-away: "client_limit". If set, the connection will never be changed to away if there are more than client_limit clients connected. Supersedes "only_noclient"; to achieve the effect of only_noclient=true, set client_limit=0. (Adeodato Simó) LICENSING * CtrlProxy is now licensed under the GNU GPLv3. INTERNALS * Moved some common logging code to the core. Ctrlproxy 3.0.3 2007-07-22 BUG FIXES * Handle 470 response correctly. * Recognize supported channel / user modes correctly. * Properly store topic_set_time and topic_set_by in the linestack. (#108) * Reset idle time when AWAY is used in auto-away (#121) * Fix crash when using /CTRLPROXY without arguments * Don't update config when we're disconnecting during shutdown. (#113) * Handle 354 response correctly. (#134) * Handle responses after forced joins correctly. (#125) * Handle 250 response correctly. (#138) * Handle 263 response correctly. (#135) * Handle 330 response correclty. (#137) * Handle 403 response correctly when sent in response to a MODE query. (#139) * Fall back to user name if real name is empty. * Handle 479 responses correctly. (#142) * Only send PRIVMSG and NOTICE lines during the BACKLOG command. (#143) * Support SILENCE without arguments. INTERNALS * Use GIOChannels for reading the motd. (patch by Emanuele Giaquinta ) PORTABILITY * Include netinet/in.h in src/utils.c and src/network.c. Required for building on FreeBSD. Reported by underlig. Ctrlproxy 3.0.2 2007-04-15 BUG FIXES * Support redirecting 396, 318, 437 and 330 replies. (#84) * Fixed redirect warnings for 251, 252, 253, 254, 265 and 266. * Don't abort when trying to send auto-AWAY while network is disconnected. * Handle CTRLPROXY command without any arguments. (#92) * Fixed crash when using SSL support. (#83) * Add support for storing topic set time and topic set by nick (#97). * Fixed CTCP source reply URL. (#86) * Hide assertion in g_key_file_free in free_config when a network has no associated file (patch by exg) * Fix coredump with --init when the default config cannot be opened (patch by exg) * Fix crash when CHARSET command fails (#89, #96) * Fall back to default charset if client charset can't be set (patch by Emanuele Giaquinta ) * Fix use of %S segfault in log_custom. (#111) * 005-lines are now forwarded to the end-client in a more structural manner. (#94) * Properly expand target in log_irssi if it is a comma-separated list (#9) (based on patch by Korbinian Rosenegger) * Properly expand target in log_custom if it is a comma-separated list (#9) (patch by Emanuele Giaquinta and Korbinian Rosenegger) * Don't append extra colon before RPL_TOPICWHOTIME (Korbinian Rosenegger) * Adding timed backlog in BACKLOG command without a channel (Korbinian Rosenegger) * Handle disconnects of clients properly (#108) * Fix handling of non-UTF8 characters in linestack_file. * Don't use CHARSETs by default (#117). * Never send origin to the server (#122). * Added support for 307 responses. FEATURES * More advanced help support * Add LOG_LEVEL command (#101) * Add 'make uninstall' (#95) * Do some more config checking (#102) * Show disconnect reason in admin network (#100) * Add support for handling additional 005 parameters: MAXCHANNELS, NICKLEN, MAXBANS, MODES, NICKLEN, MAXBANS, TOPICLEN, KICKLEN, AWAYLEN, MAXTARGETS, WALLCHOPS, WALLVOICES, RFC2812, PENALTY, FNC, SAFELIST, USERIP, CNOTICE, KNOCK, VCHANNELS, WHOX, CALLERID, ACCEPT, KEYLEN, USERLEN, HOSTLEN, MAXCHANNELLEN, MAXNICKLEN, DEAF, ELIST, MAXPARA, NAMESX, SECURELIST, WATCH REMOVE, MAP, OVERRIDE, VBANLIST and SILENCE * Print actual address that a listener bound to. INTERNALS * Remove is_private from line struct (#12). (patch by Emanuele Giaquinta ) * Implement ISON, USERHOST, WHO, WHOIS, JOIN, PART, AWAY for admin networks. (#99) PORTABILITY * Looks for check using pkg-config now. * Fix handling of addresses when listening on FreeBSD. (#87) DOCUMENTATION * Added more documentation to the help system. (#106) Ctrlproxy 3.0.1 2007-01-04 BUG FIXES * Logging for network state information has been simplified and been made less verbose. * 324 and 329 replies are now cached. * 352 and 315 replies are now (optionally) cached. The "max_who_age" setting can be set to the number of seconds that results should be cached. This prevents "Excess Flood" errors when connecting using several xchat clients at once. Can be disabled by setting max_who_age=0 (the default). * Fixed bug in administration command (reported by Daniel Poelzleithner) * Fix invalid assert in auto-away (reported by Daniel Poelzleithner) * Fix rejoining parted channels on restart (#78) * Fix erroneus toggling of "report-time" setting (#77) * Fix endless loop in logging system when debug level is set to 5 (reported by _static_). * listener configuration is no longer truncated at exit. * Fix channel information not being replicated for the administration network. * Allow ports different than 6680 in ctrlproxy --init. (#85) PORTABILITY * Added replacement functions for g_file_{set,get}_contents, for those with GLib < 2.8 DOCUMENTATION UPDATES * Updated command documentation (thanks, Korbinian Rosenegger) * Updated requirements MINOR CHANGES * Fixed several compiler warnings Ctrlproxy 3.0 2006-12-08 This list is not complete. Several subsystems in ctrlproxy have been rewritten. BUG FIXES * NetBSD portability fixes. (Adrian Portelli) * Properly support strict-rfc1459 comparisons. * No longer depend on specific order of USER and NICK commands. * Fixed 100% CPU usage bug. * Fix large number of memory leaks. * Fix crash bug in log_custom (Korbinian Rosenegger) * Support 'true' RFC1459 string comparison. * Respect CASEMAPPING sent by server. * Support different NICK sent by client in replication. * Make repl_* work when NICK sent by client differs from current NICK. * Support mIRC and ksirc. * Fix bug with setting PRIVATE too often. * Fix issue with NickServ IDENTIFY'ing when connecting to server. * Fix problems with incorrectly added colons. INTERNALS * Reduce number of files generated by configure. * Moved source control system to Bazaar (http://www.bazaar-vcs.org/) * Use separate include files rather than one large one. * Get rid of complicated filter class system. * Several modules have been integrated into the ControlProxy binary to avoid (engineering) overhead. * There now is a testsuite that tests some of the internal functions. * Add 'debug' module for easier debugging. NEW FEATURES * Removed dependency on popt and libxml. * Enhance custom_log (Alexander Wild). * Add support for %B, %e and %Y in log_custom (Korbinian Rosenegger) * Support CONNECT proxy command as used by irssi and other clients. * Use new CtrlProxy-specific logging system. Logs go to ~/.ctrlproxy/log by default now when in daemon mode. * nickserv is now "self-learning". * Add socks module to allow connecting using SOCKS. * Install default configuration that is used when the user does not have a local configuration. * Support autogenerating a configuration using `ctrlproxy --init'. * Uses GNUTLS now rather than OpenSSL. * Remove linestack_memory and make linestack_file the default. * Admin module can now also work as a seperate ('virtual') network. * Make reconnect_timeout changeable (Alexander Wild) * Add inetd-style client support. * Support non-blocking connects. (Daniel Poelzleithner) * Parse 005 line sent by server for PREFIX, CHANTYPES, NETWORK. * Add ability to change NICK when away. * Add help support in admin module (Daniel Poelzleithner). * Allows connecting to networks on ~/.ctrlproxy/socket using unix domain sockets. * Write out PID file. * lots of other small improvements