Fixed bad silc_free from WHOIS command reply.
[silc.git] / CHANGES
diff --git a/CHANGES b/CHANGES
index ad3606087f1675ffa56acb3ba3dd3e74d7fa29d3..1c7562421c194fd214b69fda42028034e32939a7 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,506 @@
+Wed Apr  6 16:56:53 EEST 2005  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added some better error messages.  Affected file
+         silcd/command_reply.c and packet_receive.c.
+
+       * Handle error in WATCH command propely on backup router.
+         Affected file silcd/command.c.
+
+       * Fixed freeing of unfreeable variable in WHOIS command reply.
+         Affected file silcd/command_reply.c.
+
+Wed Apr  6 09:10:31 CEST 2005  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added pkg-config .pc file creation for silc core library
+         and silcclient library.  A patch by c0ffee.
+
+       * Removed the need for GNU Libidn.  Added the simple stringprep
+         from libidn into lib/contrib/.  It is now used also on Windows
+         build.
+
+Mon Apr  4 15:15:46 EEST 2005  Pekka Riikonen <priikone@silcnet.org>
+
+       * Simplified the invite and ban string handling in the
+         server.  Check for valid invite and ban arguments also.
+         Affected file silcd/server_util.c.
+
+Sun Apr  3 14:58:53 EEST 2005  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added WATCH list announcing in backup router protocol.
+         Affected files are silcd/command.c, server.c, server_backup.c.
+
+       * Do not change users mode to founder on normal server/backup
+         if the founder mode is set, and user is first one to join.
+         Affected file silcd/pcaket_receive.c.
+
+       * Do not send CUMODE_CHANGE notify back to sender.  Affected
+         file silcd/packet_receive.c.
+
+       * Added getrusage() to take noise in SILC RNG.  A patch by
+         Mika Boström.  Affected files are configure.in.pre,
+         includes/silcincludes.h.in, lib/silccrypt/silcrng.c.
+
+Sat Apr  2 18:09:30 EEST 2005  Pekka Riikonen <priikone@silcnet.org>
+
+       * Splitted the SILC libraries configuration into a configure
+         fragment into lib/configure.ad.  It is now possible, once
+         this feature is added, to specify whether to compile or not
+         compile included SILC libraries.  Affected files are
+         configure.in.pre, lib/silcmath/mpi/configure.ad,
+         lib/configure.ad, Makefile.defines.pre and
+         Makefile.defines_int.pre.
+
+       * Added --with-silc-includes and --with-silc-libs to configure.
+         If specified the included libs are not compiled, but the
+         specified libs are used.  Pkg-config is not yet supported.
+         Affected file configure.in.pre.
+
+       * Fixed WATCH command handling on backup router.  Router does not
+         send the watch command any more to backup if it originates from
+         backup.  Affected file silcd/command.c.
+
+Fri Apr  1 18:52:47 EEST 2005  Pekka Riikonen <priikone@silcnet.org>
+
+       * Changed announcing to not announce unregistered clients.
+         Affected file silcd/server.c.
+
+       * Fixed username handling in command reply.  Affected file
+         silcd/command_reply.c.
+
+       * Log files are now 0600.  Affected file lib/silcutil/silclog.c.
+
+Thu Mar 31 22:34:22 CEST 2005  Patrik Weiskircher <pat@icore.at>
+
+       * Added new define SILC_MACOSX, if __APPLE__ and __MACH__ is defined.
+          Affected file: includes/silcincludes.h.in
+
+       * bool is defined as _Bool on Mac OS X now.
+          Affected file: lib/silcutil/silctypes.h
+
+Thu Mar 31 08:52:06 EEST 2005  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added support for UTF-8 nicknames, channel names and
+         server names in client library.  Affected files in
+         lib/silcclient/.
+
+       * Added __SILC_HAVE_PTHREAD, __SILC_HAVE_SIM, __SILC_HAVE_LIBIDN,
+         and __SILC_ENABLE_DEBUG to include/silcclient.h for third-party
+         software to check how Toolkit has been compiled.
+
+Wed Mar 30 22:16:35 EEST 2005  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added silc_utf8_str[n]casecmp into lib/silcutil/silcutf8.[ch].
+
+       * Use silc_utf8_str[n]casecmp instead of strcmp routines
+         in library and in SILC Client when dealing with nicknames
+         and other identifier strings.  Affected file in client lib
+         and irssi.
+
+       * Convert nickname to UTF-8 in /msg and /smsg.  Affected file
+         irssi/src/silc/core/silc-servers.c.
+
+Wed Mar 30 10:50:02 EEST 2005  Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed idcache to work with the new identifier strings.
+         Affected file lib/silccore/silcidcache.c.
+
+       * Added UTF-8 hash and compare function for SilcHashTable.
+         Affected file lib/silcutil/silcutil.[ch].
+
+       * Added casefolding stringprep, SILC_CASEFOLD_PREP.
+         Affected file lib/silcutil/silcstringprep.[ch].
+
+       * Changed the identifier string handling to include the original
+         format in client, server, channel entries and normalized
+         format in cache.  Affected files in silcd/.
+
+Tue Mar 29 16:51:35 EEST 2005  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added support for the new identifier strings and their
+         validity checking.  Nicknames, channel names and usernames
+         can now include practically any kind of letters and various
+         other characters.  Affected files in silcd/ and in libraries.
+
+         NOTE: comparing these strings should now be done with memcmp()
+         to check binary compatibility.  All these strings are normalized
+         and casing is irrelevant.
+
+       * Added silc_identifier_check to lib/silcutil/silcstrutil.[ch]
+         as easy function for applications to check whether identifier
+         strings are valid.
+
+Tue Mar 29 00:45:11 EEST 2005  Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed SILC_STRING_LDAP_DN encoding and decoding.  Affected
+         file lib/silcutil/silcutf8.c.
+
+       * Added SILC_STRING_UTF8_ESCAPE to lib/silcutil/silcstrutil.h.
+
+Mon Mar 28 22:46:23 CEST 2005  Jochen Eisinger <jochen@penguin-breeder.org>
+
+       * Make public key in getkey reply mandatory.  Affected file
+         lib/silcclient/command_reply.c
+
+Sun Mar 27 19:03:31 CEST 2005  Patrik Weiskircher <pat@icore.at>
+
+       * Added Parameter dont_register_crypto_library to
+         SilcClientParam. If set to TRUE, silcclient library will
+         not initalize the Crypto Libraries and application
+         will need to do it. Affected file lib/silcclient/silcclient.h,
+          lib/silcclient/client.c.
+
+Sun Mar 27 19:02:48 EEST 2005  Pekka Riikonen <priikone@silcnet.org>
+
+       * Imported new silc_utf8_[encode|decode] routines from
+         my internal SILC 1.1 source tree.  New encodings added:
+         SILC_STRING_LOCALE (SILC_STRING_LANGUAGE is deprecated),
+         SILC_STRING_UTF8, SILC_STRING_PRINTABLE, SILC_STRING_VISIBLE,
+         SILC_STRING_TELETEX, SILC_STRING_NUMERICAL and
+         SILC_STRING_LDAP_DN.
+
+       * Splitted UTF-8 routines into lib/silcutil/silcutf8.[ch].
+
+       * Implemented stringprep (RFC 3454) API.  Internally we use
+         GNU Libidn's stringprep, for now, so it is required now to
+         compile SILC sources.  Added lib/silcutil/silcstringprep.[ch].
+
+       * Added checking for GNU Libidn and --with-libidn to configure.
+
+Wed Mar 23 11:20:33 CET 2005  Jochen Eisinger <jochen@penguin-breeder.org>
+
+       * If the passphrases entered do not match while generating a new key,
+         completly start over instead of going into an infinite loop asking
+         the user to re-enter the passphrase correctly.  Affected file
+         lib/silcutil/silcapputil.c
+
+Sun Jan  9 14:28:51 CET 2005  Pekka Riikonen <priikone@silcnet.org>
+
+       * Make sure server is removed from backup list when it is
+         deleted.  Affected files silcd/command.c, server.c,
+         server_util.c.
+
+       * Close socket when connecting to router fails.  Affected
+         file silcd/server.c.
+
+Tue Jan  4 13:06:26 CET 2005  Jochen Eisinger <jochen@penguin-breeder.org>
+
+       * Adopt configuration toolchain to current auto-tools.
+         Affected files prepare, irssi/configure.in
+       * Revert most of the UTF-8 fixes to SILC Client 1.0.1.  Will
+         redo that.  Affected files irssi/src/silc/core/client_ops.c,
+         irssi/src/fe-common/silc/fe-silc-channels.c
+       * Take over command line options into silcclient data structure.
+         Affected file irssi/src/silc/core/silc-core.c
+
+Wed Dec  8 16:15:11 CET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Do not try to initiate backup resuming protocol forever.
+         Affected file silcd/server_backup.c.
+
+Wed Nov 24 18:24:05 CET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * ID change in resuming has to be done before changing
+         detached client's modes, since the ID change may fail and
+         leave ghosts on the network.  Affected file is
+         silcd/packet_receive.c.
+
+Tue Nov 23 16:54:35 CET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed Win32 scheduler to not stuck anymore.  A patch from
+         Juha Räsänen.  Affected file is
+         lib/silcutil/win32/silcwin32schedule.c.
+
+       * Fixed QoS parsing for connection blocks in server.  Affected
+         file is silcd/serverconfig.c.
+
+       * Fixed server statistics increasing in server.  Affected file
+         is silcd/server.c.
+
+       * The CLOSE command now marks backup router as self disconnected
+         to avoid resuming problems.  Affected file silcd/command.c.
+
+Wed Sep 22 19:46:32 CEST 2004  Patrik Weiskircher <pat@icore.at>
+
+       * When using silc_net_create_connection[_async], and your system can
+         create IPv6 sockets, it will try to connect to the IPv6 host.
+         Now it tries to connect to an IPv4 host if IPv6 fails. Affected
+         file lib/silcutil/unix/silcunixnet.c
+
+Fri Jun 18 19:26:58 CEST 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Check for valid route when receiving packet from router and
+         when routing it to local server in the cell.  A patch from
+         Matt Miller.  Affected files silcd/router.c and server.c.
+
+Sat May  1 13:55:54 CEST 2004  Patrik Weiskircher <pat@icore.at>
+
+       * Couldn't detach and reattach twice, because of the previous
+         commit. Affected file silcd/packet_receive.c
+
+Fri Apr 30 19:40:28 CEST 2004  Patrik Weiskircher <pat@icore.at>
+
+       * Added check to ignore Port value if Initiator is FALSE.
+         Remote router coudln't connect if Port was set. Affected file
+         silcd/serverconfig.c
+
+       * If some client tries to resume more than once at the same time,
+         server crashed. Router didn't crash, but showed odd behaviour
+         (didn't allow clients to join anymore, ..). Affected files
+         silcd/packet_receive.c silcd/idlist.h
+
+Mon Mar 15 21:10:08 EET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Destroy the file transfer session in silc_client_file_close
+         with timeout.  Affected file lib/silcclient/client_ftp.c.
+
+       * Call SFTP server monitor in READ and WRITE after the actual
+         operations.  Affected file lib/silcsftp/sftp_server.c.
+
+Wed Mar 10 21:30:02 EET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Create one configure script from configure fragments
+         (configure.ad).  This is a first step towards new distribution
+         system.  Affected files prepare, configure.in.pre,
+         lib/silcmath/mpi/configure.ad.
+
+Wed Mar 10 18:35:24 CET 2004  Jochen Eisinger <jochen@penguin-breeder.org>
+
+       * Removed expiring of client key pair.  Affected file is
+         irssi/src/silc/core/clientutil.c
+
+Tue Mar  9 17:11:58 EET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Check the number of connections from real number of
+         connections instead of socket number, when deciding if
+         server is full.  Affected files are silcd/server.c,
+         server_internal.h and silcd.c.
+
+       * Clarified the connections_max meaning in General section
+         in doc/example_silcd.conf.in.
+
+       * The reconnect_keep_trying default value set to TRUE
+         if it is not defined in the config file.  Affected file
+         silcd/serverconfig.c.
+
+Wed Mar  3 15:13:49 CET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed crashbug in connection closing, after a protocol
+         completion callback, which might have closed it already.
+         Affected file silcd/server.c.
+
+       * Fixed rekey with PFS in backup router.  It did not allow
+         rekeys with PFS, and when the rekey protocol timedout
+         it crashed the backup router without the above fix.  Affected
+         file silcd/packet_send.c and server.c.
+
+Sat Feb 28 16:25:09 EET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * The silc_client_add_channel_private_key now returns the
+         private key context if pointer is given as argument.
+         Affected files are lib/silcclient/silcclient.h and
+         client_channel.c.
+
+       * Added support for using channel private keys in SILC
+         Client Library even if the private key mode is not set
+         on the channel.  Affected file lib/silcclient/client_channel.c.
+
+       * The channel private key used to decrypt message is now
+         delivered to the application in the 'channel_messageÃ' client
+         operation.  Affected files are lib/silcclient/silcclient.h
+         and client_channel.c.
+
+       * Fixed wrong arg type for user limit in CMODE command reply.
+         Affected file silcd/command.c.
+
+       * The user limit is now taken and saved to SilcClientEntry in
+         JOIN and CMODE command replies and in CMODE_CHANGE notify.
+         Affected files lib/silcclient/silcclient.h, command_reply.c
+         and client_notify.c.
+
+       * Added support to the new private message key indicator
+         packet.  Added a new function to the client library:
+         silc_client_send_private_message_key_request.  The sender
+         indicates to be initiator, and receiver is responder.
+         Added the indicator to the SilcClientEntry as 'prv_resp'
+         boolean.  Affected files are lib/silcclient/silcclient.h
+         client.[ch], and client_prvmsg.c.
+
+Fri Feb 27 11:25:26 CET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed the JOIN command calling when called with both
+        -auth and -founder.  Affected file is lib/silcclien/command.c.
+
+Wed Feb 25 23:12:11 EET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Check watcher list for resumed clients as well.  Affected
+         file is silcd/packet_receive.c.
+
+Tue Feb 24 16:49:10 EET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Implemented the user limit to the CMODE_CHANGE notify,
+         CMODE command reply and JOIN command reply in server.
+         Affected files are silcd/server.c, command.c, command_reply.c,
+         packet_send.c and packet_receive.c.
+
+Mon Feb 23 23:31:15 EET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Defined SILC_STRFMT_END that must be used now with
+         silc_buffer_strformat, instead of SILC_STR_END.  Fixes
+         crashes on AMD64.  Affected files are lib/silcutil/silcbuffmt.h,
+         lib/silcclient/silcvcard.c, silcd/server_util.c.
+
+       * Fixed the adding of public key to the WATCH list in server.
+         Fixed the WATCH notify sending to client.  Affected files
+         are silcd/packet_send.[ch], command.c, server_util.c.
+
+       * Implemented the watching by public key in the SILC Client
+         Library and SILC Client.  Affected files are
+         lib/silcclient/command.c and client_notify.c.
+
+Mon Feb 23 09:30:30 CET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added support for public key watching in server.  Affected
+         files are silcd/server.c, server_internal.h, command.c,
+         server_util.c.
+
+Sun Feb 22 19:03:59 EET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added public key to the SIlcClientEntry.  Affected files
+         are lib/silcclient/silcclient.h, command_reply.c, idlist.c
+
+       * Fixed the get_clients_whois reply processing to return
+         exactly same entries server returned.  Makes it possible
+         to search using attributes.  Affected file is
+         lib/silcclient/idlist.c.
+
+Sat Feb 21 19:21:57 EET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Save founder key to SilcChannelEntry.  Affected files are
+         lib/silcclient/silcclient.h, command_reply.c, idlist.c.
+
+Fri Feb 20 20:37:38 EET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Call the monitor callback with _CLOSED status from the
+         silc_client_file_close.  Affected files are
+         lib/silcclient/client_fpt.c, silcclient.h
+
+       * Added silc_client_get_clients_whois which resolves using
+         WHOIS, and supports requested attributes as well.
+         Affected files are lib/silcclient/silcclient.h, idlist.c.
+
+Fri Feb 19 21:09:22 EET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added support for asking the destination filename where
+         the downloaded file is saved in the file transfer.  Affected
+         files are lib/silccilent/silcclient.h, client_ftp.c.
+
+Wed Feb 18 02:46:17 EET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed error handling in resuming data processing.  Affected
+         files are lib/silcclient/client_resume.c and client.c.
+
+Tue Feb 17 19:34:30 EET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed silc_client_send_private_message to return TRUE correctly.
+         Affected file lib/silcclient/client_prvmsg.c.
+
+       * Added topic to the SilcChannelEntry.  Affected files are
+         lib/silcclient/silcclient.h, command_reply.c, client_notify.c.
+
+Fri Feb 13 14:19:14 CET 2004  Jochen Eisinger <jochen@penguin-breeder.org>
+
+       * Use conn->cmd_ident for all silc_client_command_call()s.  Affected
+         file lib/silcclient/command.c
+
+Fri Feb 13 13:53:45 CET 2004  Jochen Eisinger <jochen@penguin-breeder.org>
+
+       * Convert all commands to UTF-8 before passing them to the
+         client library.  Still need to convert replies from UTF-8 to
+         the locale encoding.  Affected file
+         irssi/src/silc/core/silc-cmdqueue.c
+
+Fri Feb 13 13:13:07 CET 2004  Jochen Eisinger <jochen@penguin-breeder.org>
+
+       * redirect all silc_client_command_calls through a queueing framework.
+         This fixes /CYCLE and the annoying "nick change after auto-joining
+         a channel".  Furthermore it defines one central point where
+         command parameters can be UTF-8-ified.  Affected files
+         irssi/src/silc/core/Makefile, client_ops.c, silc-channels.c,
+         silc-servers.[ch], silc-core.c, silc-cmdqueue.[ch], silc-lag.c
+
+Fri Feb 13 12:04:41 CET 2004  Jochen Eisinger <jochen@penguin-breeder.org>
+
+       * use asynchronous connect() to establish router connections.
+         Fixes problem when the primary router goes down.  Affected files
+         silcd/server.c, silcd/server_backup.c
+
+Thu Feb 12 20:09:59 EET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added SILC_[32|64]_TO_PTR and SILC_PTR_TO_[32|64] macros.
+         Fixed various compilation warnings when type casting ints
+         to pointers or vice versa, of different size.  Updates around
+         the source free.
+
+Tue Feb  3 23:25:17 EET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Surrogates not allowed in UTF-8 strings, updated decoder.
+         Affected file lib/silcutil/silcstrutil.c.  Added UTF-8
+         testers in lib/silcutil/tests/ directory.
+
+Wed Jan 14 18:42:44 EET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added SILC_CLIENT_CONN_ERROR_KE, ERROR_AUTH, ERROR_RESUME and
+         ERROR_TIMEOUT SilcClientConnectionStatus errors.  Affected
+         files are lib/silcclient/silcclient.h, client.c.
+
+Mon Jan 12 13:01:10 CET 2004  Jochen Eisinger <jochen@penguin-breeder.org>
+
+       * When resuming a session fails, notify the user that the session
+         file needs to be removed eventually.  Affected files
+         irssi/src/fe-common/silc/module-formats.[ch],
+         irssi/src/silc/core/client_ops.c.
+
+Tue Jan 04 12:16:04 CET 2004  Jochen Eisinger <jochen@penguin-breeder.org>
+
+       * Added DIST_SUBDIRS symbols to include all subdirs in distributions.
+         Affected files lib/silcutil/Makefile.am, lib/silcmath/Makefile.am
+
+       * Typofix in Irssi::Silc module.  Affected file
+         irssi/src/perl/silc/Silc.xs.
+
+Tue Jan 04 02:43:44 CET 2004  Jochen Eisinger <jochen@penguin-breeder.org>
+
+       * Changed the way NOTICE flagged messages are treated. Added support
+         for notices in queries and signing notices.  Affected files
+         irssi/default.theme; irssi/docs/help/in/notice.in;
+         irssi/src/fe-common/silc/module-formats.[ch], fe-silc-messages.c;
+         irssi/src/silc/core/client_ops.c, silc-channels.c, silc-servers.c
+
+       * Fixed typo in /ACTION help.  Affected file
+         irssi/docs/help/in/action.in
+
+Mon Jan 03 23:26:38 CET 2004  Jochen Eisinger <jochen@penguin-breeder.org>
+
+       * Fixed typo in perl module.  Affected file
+         irssi/src/perl/silc/Server.xs
+
+       * Changed the way ACTION flagged messages are treated. Added support
+         for actions in queries and signing actions.  Affected files
+         irssi/default.theme; irssi/docs/help/in/action.in;
+         irssi/src/fe-common/silc/module-formats.[ch], fe-silc-messages.c,
+         fe-silc-queries.c; irssi/src/silc/core/client_ops.c, silc-channels.c,
+         silc-servers.[ch]
+
+Mon Jan 03 16:04:29 CET 2004  Jochen Eisinger <jochen@penguin-breeder.org>
+
+       * Incorrectly reported error when client had to be resolved from
+         server in /SMSG.  Affected file irssi/src/silc/core/silc-servers.c
+
+Sat Jan  3 16:37:15 EET 2004  Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed whois public key hash table deleting and adding in
+         detached client case.  Affected file silcd/packet_receive.c.
+
 Sat Jan 03 12:15:38 CET 2004  Jochen Eisinger <jochen@penguin-breeder.org>
 
        * Changed filenames of silc/fe module not to collide with filenames