+Sat Dec 30 22:54:21 EET 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * New SILC PKCS API enabling support for other public keys
+ and certificates, lib/silccrypt/silcpkcs.[ch], silcpk.[ch].
+
+ * Separated SILC Public Key Payload routines from the PKCS API
+ to lib/silccore/silcpubkey.[ch].
+
+Wed Dec 28 13:55:22 EET 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added SILC Key Repository library, lib/silcskr.
+
+ * Added SILC Server library, lib/silcserver.
+
+Mon Dec 19 18:04:24 EET 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * MIME objects in attributes now use SilcMime. Affected files
+ are lib/silccore/silcattrs.[ch].
+
+Sat Dec 17 20:13:31 EET 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Synchronize semaphore posting for real threads in FSM.
+ Affected files are lib/silcutil/silcfsm.c, silcfsm_i.h.
+
+Mon Nov 28 17:06:54 EET 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added silc_file_set_nonblock. Affected file is
+ lib/silcutil/silcfileutil.h.
+
+ * Added silc_fd_stream_file to lib/silcutil/silcfdstream.[ch].
+
+Sat Nov 26 16:13:40 EET 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * FSM based implementation of SILC SKE. Simpler interface also.
+ Affected files are in lib/silcske/.
+
+ * Added SilcBool type. Affected file lib/silcutil/silctypes.h.
+
+Sat Nov 19 17:34:51 EET 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added SilcMime API to lib/silcutil/silcmime.[ch]. The old
+ silc_mime_parse is available but deprecated.
+
+ * Check that packet is valid when processing key exchange,
+ authentication and rekey protocols. Fixes a crashbug.
+ Affected files are apps/silcd/protocol.c and
+ lib/silcclient/protocol.c.
+
+ * Added SILC_HASH_MAXLEN to lib/silccrypt/silchash.h, and changed
+ all hash buffers to use that instead of fixed values.
+
+Wed Nov 16 15:47:12 EET 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added SHA-256 to crypto library. The SHA-256 takes now
+ precedence over SHA-1.
+
+Thu May 26 20:31:06 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Check for valid return value from regcomp. Affected file
+ lib/silcutil/unix/silcunixutil.c.
+
+Tue May 10 23:11:17 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed silc_hash_uint to work with integers. Affected
+ file lib/silcutil/silcutil.c.
+
+Tue May 10 15:11:53 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Rewritten SILC Log API. Affected files lib/silcutil/silclog.[ch].
+
+Mon May 9 12:00:08 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed channel public key list saving on JOIN command reply
+ on backup router. Affected file apps/silcd/command_reply.c.
+
+Mon May 2 10:42:49 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added default limit how many channels client can join,
+ default is 50. Added 'channel_join_limit' configuration
+ option to server too. Affected files are apps/silcd/command.c
+ and serverconfig.[ch].
+
+Sun May 1 17:42:55 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * --without-silc -> --with-silc, --without-irssi -> --with-irssi.
+ On Toolkit the server and client are not compiled by default.
+ Affected file configure.ad.
+
+Thu Apr 28 15:57:37 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added lib/contrib/getopt.[ch] for platforms that don't
+ have it (it is not GPL implementation).
+
+ * Fixed compilation when pkg-config is used.
+
+Wed Apr 27 11:49:41 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * A comma in invite/ban string is invalid, check for it.
+ Affected file apps/silcd/server_util.c.
+
+ * Added SERVICE command to the server. It parses the command
+ request but SILC Server does not support services for the
+ time being. Affected file apps/silcd/command.[ch].
+
+ * Added SERVICE command and command reply to client library.
+ It is however incomplete. Updated Toolkit documentation.
+ Affected files are lib/silcclient/command[_reply].[ch].
+
+ * Fixed IDENTIFY/WHOWAS command reply to send the username
+ correctly (uninitialized buffer). Affected file is
+ apps/silcd/server_query.c.
+
+Mon Apr 25 14:25:24 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Moved silcer/, silc/, silcd/ and irssi/ to apps/. This
+ finalizes the major restructuring of the CVS tree.
+
+Mon Apr 25 00:39:30 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Send empty MOTD reply if MOTD file cannot be read.
+ Affected file silcd/command.c.
+
+Sun Apr 24 12:01:37 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Optimized primer number generator to use simpler conversion
+ routines. Also assure that the prime number will have the
+ highest bit set after modifying it. Affected file is
+ lib/silcmath/silcprimegen.c.
+
+ * Added LibTomMath to SILC Math library (SILC_DIST_TMA).
+
+ * Added FastTomMath to SILC Math Library (SILC_DIST_TFM),
+ for now only for testing purposes, it will not be delivered
+ in any distribution for now.
+
+ * Removed NSS MPI from the source tree. Due to upcoming
+ license change for the SILC Toolkit, we cannot deliver the
+ NSS MPI anymore. I decided to replace it in all distributions
+ with public domain library.
+
+ * Removed GNU regex from lib/contrib and introduced free
+ GNU compatible regex, lib/contrib/regexpr.[ch]. Added
+ GNU regex compatible API to it (only partial).
+
+ * Removed getopt routines from lib/contrib.
+
+Fri Apr 22 12:21:44 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Use silc_server_send_command_reply to send replies instead
+ of encoding packet itself. Affected file silcd/command.c.
+
+ * Added command sending and receiving statistics to server.
+ Affected files in silcd/.
+
+ * GCC 4 warning fixes. -Wno-pointer-sign option is now used
+ with GCC, for it not to warn about pointer signedness.
+
+Tue Apr 19 11:57:35 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added context to the SilcIDCache destructor. Affected
+ files are lib/silccore/silcidcache.[ch],
+ lib/silcclient/client.c and silcd/server.c.
+
+Mon Apr 18 09:53:28 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added pkg-config check to configure.
+
+ * The PublicKeyDir must not be used with Admin block in server
+ config. Affected file silcd/serverconfig.c.
+
+Sat Apr 16 20:23:48 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added Autodist.
+
+Thu Apr 14 20:25:08 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Handle empty LIST command reply correcttly in server. Affected
+ file silcd/command_reply.c.
+
+ * Handle empty LIST command reply correctly in client library.
+ The application will now receive one LIST command reply with
+ all arguments set to NULL if there are no channels. Updated
+ Client Library documentation accordingly. Affected file
+ lib/silcclient/command_reply.c.
+
+Tue Apr 12 00:02:09 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added channel name string stringprep profile to the protocol
+ and implementation to allow a little free'er channel name
+ strings. Affected files are lib/silcutil/silcstringprep.[ch].
+
+ * Added silc_channel_name_[check|verify] to check and verify
+ channel name strings. Affected files are
+ lib/silcutil/silcstrutil.[ch].
+
+ * Added support for the new channel name preparation in client
+ library and server. Affected files in lib/silcclient and
+ silcd/.
+
+Mon Apr 11 13:40:27 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added the Autodist into the source tree. It replaces the
+ old ./prepare. It can be used to create distributions as
+ previously. See README.CVS and README.DIST. See
+ distributions in distdir/.
+
+Sun Apr 10 11:30:56 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Make sure query sends at least an error back if nothing
+ more is sent. Affected file silcd/server_query.c.
+
+Thu Apr 7 14:50:01 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * During query, check if the original command caller goes
+ away. If it does, stop the query. Affected file
+ silcd/server_query.c.
+
+ * Check for valid channel creation in JOIN command reply.
+ Affected file lib/silcclient/command_reply.c.
+
+ * Handle the resolver counter in silc_client_get_users_by_channel
+ callback correctly. Fixed auto-join bug in Gaim. Affected
+ file lib/silcclient/idlist.c.
+
+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
+ from core/fe. Also seperated public messages printing from
+ query messages printing. Affected files are all in
+ irssi/src/fe-common/silc.
+
+Sat Jan 3 12:18:07 EET 2004 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed the invite process handling during joining to use
+ correct server name for the client that is matched against
+ the invite string for the channel. Wrong server name caused
+ inability to join the channel. Affected file is
+ silcd/command.c.
+
+Fri Jan 2 23:34:17 EET 2004 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed the CUMODE channel founder authentication on normal
+ server to not remove the founder rights on existing founder
+ before checking that router accepts the mode change. Affected
+ files are silcd/command.c and silcd/packet_receive.c.
+
+ * Remove the server entry correctly when rekey timeouts and
+ remote router connection on normal server is closed. Fixes
+ a crash where server uses the freed server entry. Affected
+ file silcd/server.c.
+
+Fri Jan 02 10:28:15 CET 2004 Jochen Eisinger <jochen@penguin-breeder.org>
+
+ * Add /SILCNET [ADD|REMOVE|LIST] command to manage different SILC
+ networks. This is the first step in solving the bug about
+ /SERVER ADD -silcnet <silcnet>. Affected files
+ irssi/docs/in/silcnet.in; irssi/src/fe-common/silc/Makefile.am,
+ fe-silcnet.c, fe-common-silc.c, module-formats.[ch];
+ irssi/src/silc/core/silc-chatnets.[ch], silc-core.c, Makefile.am
+
+Thu Jan 01 20:11:32 CET 2004 Jochen Eisinger <jochen@penguin-breeder.org>
+
+ * /SMSG and /MMSG now correctly create new queries. Affected files
+ irssi/src/fe-common/silc/fe-messages.c, irssi/scripts/silc-mime.pl
+
+ * Add basic support for SILC protocol specific variables in perl.
+ Affected files irssi/src/perl/silc/*, irssi/configure.in,
+ irssi/src/perl/Makefile.am
+
+Wed Dec 31 17:06:55 CET 2003 Jochen Eisinger <jochen@penguin-breeder.org>
+
+ * Don't use silc_get_input, it's obviously not reliable. Fixes
+ issue when the current key expires. Affect file
+ irssi/src/silc/core/clientutils.c
+
+ * Make the session data filename configurable. This makes it
+ possible to have different session files for different
+ SILC networks. Affected files irssi/src/silc/core/silc-core.c,
+ client_ops.[ch], silc-servers.c,
+ irssi/src/silc/fe-common/silc/module-formats.[ch]
+
+ * Use the same set of libtool files for the MPI lib as for the
+ rest of the toolkit. Affected files lib/silcmath/mpi/config.guess,
+ config.sub, configure.in, install-sh, missing, mkinstalldirs
+
+Sun Dec 28 21:57:39 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed server statistics decrementing error to not go to
+ negative. Affected file silcd/packet_receive.c.
+
+Sat Dec 20 14:42:36 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Use silc_server_query_add_error to add error in public key
+ search error. Added support in send_reply to send errors
+ without specific argument. Affected file silcd/server_query.c.
+
+ * Fixed the WHOIS, IDENTIFY and WHOWAS error handling in SILC
+ Client for NO_SUCH_NICK. It was against the protocol specs.
+ Affected file irssi/src/silc/core/client_ops.c.
+
+ * Added backwards support for the wrong NO_SUCH_NICK error sending
+ in server. To be removed in SILC Server 1.0. Both old clients
+ and clients with fixed error handling now works. Affected file
+ silcd/server_query.c.
+
+Sat Dec 20 00:44:47 CET 2003 Patrik Weiskircher <pat@icore.at>
+
+ * fixed a bug in the whois using attributes function where no
+ error was sent if no nickname and client id but the attributes were
+ given to whois. Affected file silcd/server_query.c
+
+Tue Dec 16 21:34:59 CET 2003 Patrik Weiskircher <pat@icore.at>
+
+ * remove public key from public key hashtable on detach. Affected
+ file silcd/packet_receive.c
+
+ * free public key hashtable before removing clients on server
+ shutdown. Affected file silcd/server.c
+
+ * remove public key prior deleting client-data on killing a client.
+ Affected file silcd/server_util.c
+
+Sat Dec 06 21:35:14 CET 2003 Patrik Weiskircher <pat@icore.at>
+
+ * Getting the MOTD from other servers works now. Affected
+ files are silcd/command.c and silcd/command_reply.c
+
+Thu Dec 04 11:33:46 CET 2003 Jochen Eisinger <jochen@penguin-breeder.org>
+
+ * Initialize the variable idletag, since it is tested in
+ silc_core_deinit for its default value. Affected file
+ irssi/src/silc/core/silc-core.c
+
+Sun Nov 30 19:47:02 CET 2003 Patrik Weiskircher <pat@icore.at>
+
+ * Fixed signed channel messages across cells. Affected file
+ silcd/packet_send.c
+
+Fri Nov 28 19:13:21 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Changed the SILC_LOG_* macros to not be empty if SILC_DEBUG
+ is not defined. They can now be safely used in if-statements
+ without braces. Affected file lib/silcutil/silclog.h.
+
+ * Added the checks for backup closing connection due to error
+ (local or remote) and thus not allow the resuming to occur
+ in reconnect. Affected files are silcd/packet_send.c
+ and server.c.
+
+Tue Nov 25 15:20:59 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Help file updates. Affected files in irssi/src/docs/help/in/.
+
+Wed Nov 23 20:51:21 CET 2003 Patrik Weiskircher <pat@icore.at>
+
+ * Fixed channel messages across cells. Affected file
+ silcd/packet_send.c
+
+Wed Nov 12 11:34:56 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed file transmission accepting in client library to not
+ start the negotiation if user hasn't accepted the transfer,
+ instead create new session for resent transfer. Affected
+ file lib/silcclient/client_ftp.c.
+
+ * Show the session ID in the file transmision list. Remove
+ session from list that failed to transfer. Switch the current
+ session automatically after transmission, and in errors, to new
+ session if other sessions exists in the transfer list. Affected
+ files are irssi/src/silc/core/silc-servers.c,
+ irssi/src/fe-common/silc/modfule-formats.c.
+
+Mon Nov 10 14:41:40 CET 2003 Jochen Eisinger <jochen@penguin-breeder.org>
+
+ * Fixed MIME header parsing for the hopefully last time. Affected
+ file lib/silcutil/silcstrutil.c
+
+Mon Nov 10 13:03:46 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Rewrote the PKCS#1 routines. Added lib/silccrypt/silcpkcs1.[ch].
+
+ * The SILC RNG is now gauranteed to return non-zero random
+ values. Affected files are lib/silccrypt/silcrng.[ch].
+
+Sun Nov 9 20:44:56 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed nickname formatting when changing only case of the
+ nickname. Affected file lib/silcclient/idlist.c.
+
+Sun Nov 9 19:33:59 CET 2003 Jochen Eisinger <jochen@penguin-breeder.org>
+
+ * Fixed a memory leak and incorrect printing of the "appears as"
+ message. Affected file irssi/src/silc/core/client_ops.c
+
+Sun Nov 9 17:45:11 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added CRT (Chinese Remainder Theorem) supported RSA
+ private keys and private key operations. This significantly
+ increases private key operation efficiency. No compatibility
+ issues with new or old private keys. Affected files are
+ lib/silccrypt/rsa.[ch], rsa_internal.h and pkcs1.c.
+
+Sat Nov 8 13:08:53 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed GCC-3.3.2 related compilation warnings from the
+ source tree.
+
+Fri Nov 7 23:01:47 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Removed RC6 from distributions.
+
+Fri Nov 7 19:38:42 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added some better comments to lib/silccrypt/silcpkcs.h,
+ optimized some routines in lib/silccrypt/silcpkcs.c.
+ Added test_silcpkcs into lib/silccrypt/tests/.
+
+ * Fixed silc_rng_global_init to actually init the global RNG
+ if RNG wasn't provided for it. Affected file is
+ lib/silccrypt/silrng.c.
+
+Thu Nov 6 21:08:28 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added silc_hash_table_find_by_context_ext. Affected files
+ lib/silcutil/silchashtable.[ch].
+
+ * Save the public key on normal server in WHOIS command reply
+ from attributes, if present, and add it to public key hash
+ table. Fixes WHOIS resolving by public key on normal server.
+
+ Optimized the attributes resolving on normal server to not
+ resolve if we resolved them already from router.
+
+ Affected files are silcd/server_query.c, command_reply.c.
+
+Wed Nov 5 19:36:30 CET 2003 Patrik Weiskircher <pat@icore.at>
+
+ * Added support for whois using attributes.
+ Affected files silcd/command_reply.c, silcd/packet_receive.c,
+ silcd/server.c, silcd/server_internal.h, silcd/server_query.c,
+ silcd/server_util.c
+
+ * Added support for whois using public key attribute to /WHOIS i
+ client command. Affected files irssi/docs/help/in/whois.in,
+ irssi/src/silc/core/silc-servers.c, lib/silcclient/command.c
+
+Wed Nov 5 23:37:36 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed UMODE setting in server when the client has anonymous
+ mode set. The mode setting was not working. Affected file
+ silcd/command.c.
+
+Mon Nov 2 11:36:08 CET 2003 Jochen Eisinger <jochen@penguin-breeder.org>
+
+ * Fixed some bugs and typos related to sending split messages.
+ Print notification when sending messages with /MMSG. Affected
+ files irssi/scripts/silc-mime.pl, irssi/src/silc/core/client_ops.c
+
+Fri Oct 31 12:33:59 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Optimized the socket referencing in packet routines, client
+ library and server. Affected files are lib/silccore/silcpacket.c,
+ lib/silcclient/client.c and silcd/server.c.
+
+ * If silc_socket_set_qos is given with NULL arguments the QoS is
+ reset from the socket. Affected files are
+ lib/silcutil/silcsockconn.[ch].
+
+Thu Oct 30 21:23:24 CET 2003 Jochen Eisinger <jochen@penguin-breeder.org>
+
+ * Add a /LISTKEYS command which lists the locally cached
+ client and server keys. Affected files
+ irssi/src/fe-common/module-formats.[ch],
+ irssi/src/silc/core/silc-{channels,servers}.c
+ irssi/docs/help/in/listkeys.in
+
+Thu Oct 30 20:23:40 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Check that packet queue purging was successful. Affected
+ files lib/silcclient/client.c and silcd/packet_send.c. Related
+ to MAC failed errors.
+
+ * Do not clear the inbuf even if it is empty if QoS was applied
+ to it. Otherwise the QoS data is cleared and MAC failed error
+ will occur. Affected file lib/silccore/silcpacket.c.
+
+ * Use the rekey period time as rekey protocol timeout value.
+ If the rekey does not succeed during the rekey period there's
+ something very wrong, and we most likely end up with wrong keys,
+ do graceful reconnect then. Affected file silcd/server.c.
+
+ * Take reference of the socket in the parser context, as it's
+ possible to have the parsers in queue after the socket is
+ disconnected and this may cause crash. Affected files are
+ lib/silccore/silcpacket.c, lib/silcclient/client.c and
+ silcd/server.c.
+
+Thu Oct 30 17:01:01 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed KICK command reply sending, it sent to replies.
+ Affected file silcd/command.c.
+
+Wed Oct 30 14:06:52 CET 2003 Jochen Eisinger <jochen@penguin-breeder.org>
+
+ * Finish the silc-mime.pl script. It now supports MIME type
+ guessing using magic files, signing data messages, executing
+ MIME handlers in background. Affected files
+ irssi/scripts/silc-mime.pl and irssi/docs/help/in/mmsg.in
+
+ * Changed MIME signal handler to make things easier for the perl
+ script. Affected files irssi/src/silc/core/client_ops.c,
+ silc-servers.c, and irssi/docs/signals.txt
+
+ * Cleaned up the silc_mime_parse function and fixed detection
+ of wrapped header lines. Affected file lib/silcutil/silcstrutil.c
+
+Sun Oct 26 21:19:02 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Resolve the IP for file transfer listener from the connection
+ socket. Affected file lib/silcclient/client_ftp.c.
+
+ * Accept NULL hostname parameter in the functions
+ silc_net_check_[local|remote]_by_socket. Do not reverse lookup
+ if hostname is not wanted.
+
+Fri Oct 24 21:24:12 CEST 2003 Jochen Eisinger <jochen@penguin-breeder.org>
+
+ * Fixed race condition between silc_client_init and
+ my_silc_scheduler. Affected file irssi/src/silc/core/silc-core.c
+
+Fri Oct 24 16:43:40 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed file transfer connection closing when SIGNOFF for
+ the client is received from server. Affected file is
+ lib/silcclient/client_ftp.c.
+
+Tue Oct 21 13:35:57 CEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Check for disconnected socket in QUIT callback. Affected
+ file silcd/command.c.
+
+Thu Oct 21 09:43:17 CEST 2003 Jochen Eisinger <jochen@penguin-breeder.org>
+
+ * Modified the MIME parsing to allow \n and \r\n as delimiters.
+ Affected files lib/silcutil/silcstrutil.c
+
+ * Cleaned up the escape/unescape functions for correctness and
+ speed. Affected file irssi/src/silc/core/client_ops.c
+
+ * Removed handling for data messages with Content-Type: text/*,
+ moved parsing of MIME headers to the signal handler, added
+ support for signing and verifying data messages. Affected
+ files are irssi/docs/signals.txt, irssi/src/silc/core/client_ops.c,
+ irssi/src/silc/core/silc-{servers,channels}.c
+
+ * Added a perl script for handling data messages based on
+ information read from Mailcap files. New file
+ irssi/scripts/silc-mime.pl
+
+Mon Oct 20 16:08:22 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added new SILC_MESSAGE_FLAG_ACK that can be used to
+ acknowledge recepetion of a message to the sender. Updated
+ protocol specs.
+
+Sat Oct 18 11:55:33 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Unregister channel key saving callback when deleting channel.
+ Affected file lib/silcclient/idlist.c.
+
+ * Do not remove the client from channels in NOTIFY_TYPE_SIGNOFF
+ before calling notify client operation. Affected file is
+ lib/silcclient/client_notify.c.
+
+ * Unregister QoS tasks when deleting the socket connection.
+ Affected files lib/silcutil/silcsockconn.[ch],
+ unix/silcunixsockconn.c.
+
+ * Implemented latest presence-attrs draft changes. Affected
+ files lib/silccore/silcattrs.h and
+ irssi/src/silc/core/silc-queries.c.
+
+Tue Oct 14 18:24:53 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Save old channel keys in list to allow more rapid change
+ of channel keys if server for some reason does that. This
+ avoids loosing so many channel messages due to not having
+ key to decrypt. Affected file lib/silcclient/silcclient.h,
+ idlist.c and client_channel.c.
+
+Mon Oct 13 21:37:47 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Continued backup router tests and fixes. Affected files
+ silcd/server_backup, server_util.c, server.c. See TODO.
+
+Sun Oct 12 19:58:18 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed SERVER_SIGNOFF handling in servers. The client
+ was removed from wrong list thus not removing the client
+ at all. Affected file silcd/packet_receive.c.
+
+ * Do not execute rekey protocol for disabled connections as
+ it would never go through. Affected file silcd/server.c.
+
+ * Added timeout for rekey protocol to catch if the protocol
+ never executes successfully. Affected files silcd/server.c
+ and protocol.h.
+
+Sat Oct 11 15:39:22 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Abandon packet processing for disconnected sockets. Check
+ this always after calling packet processing callback.
+ Affected file lib/silccore/silcpacket.c.
+
+ * Fixed double registration disconnection code in server.
+ Closed wrong connection. Affected file silcd/packet_receive.c.
+
+Fri Oct 10 16:27:12 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * On normal server reconnect to primary during resuming 4
+ times, then give up. Affected file silcd/server_backup.c.
+
+ * If during reconnecting to routers we notice we have router
+ connection but no primary router set, the server is in desync.
+ Reconnect to primary to restore network. Affected file
+ silcd/server.c.
+
+ * Assure that only one protocol is exeucting at the same time.
+ Added checks for all protocols. Affected files are
+ silcd/server.c and server_backup.c.
+
+Thu Oct 9 20:24:09 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Check that a string is not already part on invite/ban
+ string when processing it. Affected file silcd/server_util.c.
+
+Thu Oct 9 12:06:40 CEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed the CUMODE_CHANGE for founder mode changes to comply
+ with 1.2 version of the protocol. Affected file is
+ silcd/packet_receive.c.
+
+Wed Oct 8 19:41:15 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * ERR_BAD_PASSWORD now returns the Channel ID of the channel
+ where the passphrase was given. Affected file is
+ silcd/command.c.
+
+Wed Oct 8 09:32:12 CEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * INVITE and BAN notifys are now delivered from routers to
+ servers (but not clients) on the channel. Updated specs and
+ code. Affected files silcd/packet_[send|receive].[ch],
+ command.c, server.c and server_util.c.
+
+ * Implemented INVITE and BAN announcing. Affected files are
+ silcd/server.[ch], server_util.c.
+
+ * Implemented SilcStatus error type argument returning in
+ command reply error in server. Affected file silcd/command.c.
+
+ * Implemented SilcStatus argument returning in comand reply
+ in client library. The command_reply client operation now
+ returns error specific arguments as well. Affected files
+ are lib/silcclient/command_reply.[ch], client_resume.c,
+ lib/silccore/silcstatus.[ch].
+
+Sun Oct 5 20:22:08 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Backup router protocol version 1.2 implemented. Testing still
+ required. Affected files in silcd/server_backup.[ch], server.c,
+ packet_receive.c and server_internal.h.
+
+Sun Oct 5 12:36:37 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * silc_client_send_[channel|private]_message now return TRUE
+ or FALSE. Affected file lib/silcclien/client_channel.c and
+ client_prvmsg.c.
+
+Thu Oct 2 17:03:09 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Check for explicit nickname in INVITE and BAN processing
+ during join as well (and don't expect only wildcards in
+ invite/ban strings). Affected file silcd/command.c.
+
+ * Fixed the INVITE and BAN by public key. The public key saved
+ is the PK payload (as specified) not the raw data. Affected
+ file silcd/server_util.c.
+
+Wed Oct 1 20:29:06 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * UTF-8 text message support for actions and notices in SILC
+ Client. Affected file irssi/src/silc/core/client_ops.c.
+
+ * silc_get_username and silc_get_real_name now returns sensible
+ data on Win32. Patch by Toni Willberg. Affected file is
+ lib/silcutil/win32/silcwin32util.c.
+
+Sun Aug 24 23:35:19 CEST 2003 Jochen Eisinger <c0ffee@penguin-breeder.org>
+
+ * Provide a signal handler to send MIME encoded messages and emit
+ a signal when a MIME encoded message is received. Also document
+ the signals for usage with the perl interface.
+
+ A sample perl script will be supplied at a later point.
+
+ Affected files are irssi/docs/signals.txt,
+ irssi/src/silc/core/client_ops.[ch],
+ irssi/src/silc/core/silc-{channels,servers}.c
+
+Sun Aug 24 12:58:30 CEST 2003 Jochen Eisinger <c0ffee@penguin-breeder.org>
+
+ * Use SILC_COMMAND_PING to estimate the round-trip time to the
+ server. Use this time to display a lag and disconnect when it
+ exceeds a specified limit.
+
+ Affected files are irssi/src/silc/core/silc-{lag,core}.c.
+
+Mon Aug 11 17:14:17 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Remove the channel auth list in normal server if router
+ encofrces its list during connecting. Send notify to channel
+ to remove the mode to remove the list. Affected files are
+ silcd/server_util.c and silcd/packet_receive.c.
+
+Wed Aug 6 14:52:04 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added support for channel public keys. Updated protocol specs
+ and implemented it. Affected files are
+ silcd/command.c, command_reply.c, lib/silcclient/command.c,
+ lib/silcclient/command_reply.c.
+
+Wed Jul 23 12:17:01 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Ignore SIGXFSZ and SIGXCPU signals in server. They can
+ terminate the process on Linux. Affected file silcd/silcd.c.
+
+Mon Jun 2 19:13:27 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Check for NULL buffer in silc_buffer_clear. Affected file
+ is lib/silcutil/silcbuffer.h.
+
+ * Simplified the backup router protocol by removing the _GLOBAL
+ types. Updated protocol specs and the code. Affected files
+ are silcd/server_backup.[ch].
+
+Thu Apr 24 19:50:25 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Deny '@' and '!' from nicknames since they are reserved
+ by the SILC_COMMAND_INVITE and SILC_COMMAND_BAN commands.
+ Updated protocol specs and the code.
+
+ Affected files are silcd/server_util.[ch].
+
+Wed Apr 9 18:51:59 EEST 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed stack overflow in Irssi SILC client. Affected
+ file irssi/src/silc/core/client_ops.c.
+
+ * Check that Host is set in ServerConnection and RouterConnection
+ in silcd.conf. Affected file silcd/serverconfig.c.
+
+ * Fixed crash in server with protocol completion callbacks,
+ namely rekey and backup resuming protocols. Affected files
+ are silcd/server_backup.c and silcd/server.c.
+
+ * Fixed rekey protocol to not restart if it is started already.
+ Affected files are lib/silcclient/client.c and
+ silcd/server.c.c
+
+Mon Mar 17 18:35:24 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Rewrote SilcList, affected file lib/silcutil/silc*list.h.
+
+ * Fixed EOF handling in SILC Config, affected file
+ lib/silcutil/silcconfig.c.
+
+ * Fixed buffer overflows in lib/silcutil/silcstrutil.c.
+
+ * Fixed RESOLVING flag handling in JOIN notify and other
+ notifys to handle the resolvings correctly in client library.
+ Affected file lib/silcclient/client_notify.c.
+
+ * Do not send full INVITE and BAN lists in INVITE and BAN
+ notifys, only the changed information. Affected file
+ silcd/command.c.
+
+ * Fixed INVITE notify sending in INVITE command, send it
+ only when needed. Affected file silcd/command.c.
+
+ * Handle the founder key change properly in CMODE_CHANGE
+ notify. Bug #122. Affected file silcd/packet_receive.c.
+
+Sun Mar 9 16:29:20 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Remove the mark for output (mark it only for input) after
+ purging outgoing queue. Prevents the "Error in select()"
+ floods. Affected file silcd/packet_send.c.
+
+ * Fixed incorrect connection deletion from client library
+ after calling "connect" client operation. Could cause
+ crashes for example during reconnect timeouts. Affected
+ files are lib/silcclient/client.c and
+ irssi/src/silc/core/client_ops.c.
+
+ * Check server private key file permissions before starting
+ the server. Affected file silcd/serverconfig.c.
+
+Tue Feb 4 22:53:26 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * NULL terminate allocated string in silc_buffer_strformat.
+ Affected file lib/silcutil/silcbuffmt.c.
+
+ * Rewrote the invite/ban list string handling in server to
+ use SilcBuffer instead. Affected files are silcd/command.c
+ and silcd/server_util.c.
+
+Mon Feb 3 14:43:52 CET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed double free in CMODE command when setting new HMAC
+ for channel. Affected file silcd/command.c.
+
+ * Added couple of missing memset's to zero sensitive memory.
+ Affected files silcd/command.c, lib/silcclient/command.c.
+
+Sun Jan 26 12:20:30 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed a double free in INVITE command error handling in
+ server. Affected file silcd/command.c.
+
+ * Added macros SILC_SWAB_[16|32] to swab byte order of
+ 16-bit and 32-bit unsigned integers. Affected file
+ lib/silcutil/silctypes.h.
+
+ * Use the SILC_SWAB_16 instead of htons() in server when
+ handling ports since the ports in structures are always
+ in little-endian order (regardless of platform). Affected
+ file silcd/serverid.c and silcd/server_backup.c.
+
+Tue Jan 21 17:18:04 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Send DISCONNECT in close admin command in server. Affected
+ file silcd/command.c.
+
+ * Check whether we are already connecting to a remote router
+ (in addition of checking whether we are already connected)
+ before creating new connection. Affected file silcd/server.c.
+
+Thu Jan 16 18:47:00 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added better compiler and compiler flags checking in
+ configure.
+
+ * Check that socket is valid after QoS is applied to data.
+ Affected file lib/silcutil/unix/silcunixsockconn.c.
+
+ * Make sure the socket connecetion is not closed to early
+ when closing connection in server. Also make sure the
+ connection is always closed after error in a protocol.
+ Affected file silcd/server.c.
+
+Wed Jan 15 11:03:36 CET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Removed --session and --dummy options from Irssi SILC Client.
+ -d option is available only if --enable-debug was given.
+ Affected files are irssi/src/silc/core/silc-core,
+ irssi/src/core/session.c and irssi/src/fe-text/silc.c.
+
+Tue Jan 14 12:25:09 CET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added silc_buffer_steal to steal the data from the buffer.
+ Affected file lib/silcutil/silcbuffer.h.
+
+Sat Jan 11 18:16:29 CET 2003 Giovanni Giacobbi <giovanni@giacobbi.net>
+
+ * Fixed server crash with double Primary block in config file.
+
+ Fixed also various memory leaks around the config file
+ parser. Affected files lib/silcutil/silcconfig.c,
+ silcd/serverconfig.c.
+
+ * Changed my nickname (Johnny Mnemonic) to my real name, this
+ means that bugs introduced by him were actually introduced
+ by me!
+
+Tue Jan 7 21:58:53 CET 2003 Jochen Eisinger <c0ffee@penguin-breeder.org>
+
+ * Don't display "foo appears as foo\nYou're now known as foo"
+ messages. Affected file irssi/src/silc/core/client_ops.c
+
+Tue Jan 7 20:08:15 EET 2003 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed error handling of invalid client entry when calling
+ commands in server. Fixes a crash. Affected file
+ silcd/command.c.
+
+Thu Dec 26 14:19:29 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added some sanity checks in server for correctness of the
+ server configuration. Affected file silcd/serverconfig.c.
+
+Fri Dec 20 10:47:59 CET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Prevent endless resolving of user informations in USERS
+ command by checking the command reply status correctly.
+ Affected file lib/silcclient/command_reply.c.
+
+Tue Dec 17 10:05:00 CET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed file writing on WIN32 to use O_BINARY flag. Affected
+ file is lib/silcutil/silcfileutil.c. A patch by Matthew
+ Aldous <Matthew@Aldous.com>.
+
+ * Added better implementation using CriticalSection of
+ SilcMutex on WIN32. A patch by Mikko Lähteenmäki
+ <mikko.lahteenmaki@pikabaana.net>.
+
+ * Added some Winsock WIN32 compatiblity defines into
+ includes/silcwin32.h.
+
+Mon Dec 16 19:33:05 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed double free in async host lookup code. Affected file
+ lib/silcutil/silcsockconn.c.
+
+ * On backup router handle now the SERVER_SIGNOFF from router
+ for local connected servers too, and close the connections.
+
+ Do not process them as normally signing off servers when they
+ really signoff by sending EOF fe, but always assume that
+ router sends the SERVER_SIGNOFF.
+
+ Affected files silcd/server.c and silcd/packet_receive.c.
+
+ * Fixed socket unsetting when closing connections. Affected
+ files silcd/server.c and silcd/packet_send.c.
+
+ * Do not print the nickname in SERVER_SIGNOFF if we do not
+ have it. Prevents asserts in Irssi core. It is possible we
+ don't have the nick if it was just being resolved when server
+ signoff. Affected file irssi/src/silc/core/client_ops.c.
+
+Thu Dec 12 23:22:50 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed autonick crashbug in client library. Affected file
+ lib/silcclient/client.c.
+
+ * Fixed Unix implementation of SilcMutex to really assert if
+ the mutex is locked/unlcoked already. Affected file
+ lib/silcutil/unix/silcunixmutex.c.
+
+ * Fixed locking in silc_schedule_uninit. It didn't lock
+ when dispatching timeout tasks. Affected file is
+ lib/silcutil/silcschedule.c.
+
+ * Changed Win32 implementation of SilcThread to use modern
+ Win32 interface. Affected file is
+ lib/silcutil/win32/silcwin32thread.c A patch by Mikko L.
+
+Thu Dec 12 12:06:59 CET 2002 Jochen Eisinger <c0ffee@penguin-breeder.org>
+
+ * Don't print signed messages when sending failed. Affected files
+ irssi/src/silc/core/silc-[servers.c/commands.h]
+
+ * Send adquate signal when founding a channel by joing it. Affect
+ file irssi/src/silc/core/client_ops.c
+
+Wed Dec 11 21:46:19 CET 2002 Jochen Eisinger <c0ffee@penguin-breeder.org>
+
+ * Fix theme abstracts parsing. Affected files irssi/default.theme,
+ irssi/src/fe-common/core/themes.c
+
+Wed Dec 11 20:20:07 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed close command to use the port correctly when closing
+ server connections. Affected file silcd/idlist.c.
+
+ * Check for NULL outbuf in silc_socket_write. It is possible
+ that it is NULL is some odd case. Affected files are
+ lib/silcutil/[unix/win32]/silc[unix/win32]sockconn.c.
+
+ * Do not call final protocol callback for backup router
+ resuming protocol when closing connection. It is closed
+ by timeout in case of error. Affected file silcd/server.c.
+
+ * Backup reconnect to router if backup resuming protocol
+ failed. Affected file silcd/server_backup.c.
+
+Wed Dec 11 10:01:26 CET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed double free in SKE library error hadling when signature
+ error occurred. Affected file lib/silcske/silcske.c.
+
+ * Save the fingerprint to new SilcClientEntry after changing
+ nickname. Affected file lib/silcclient/client_notify.c.
+
+ * Print SIGNOFF in Irssi SILC client only if the nickname is
+ known. Prevents asserts in Irssi core. It is possible we
+ don't have the nick if it was just being resolved when it
+ quit. Affected file irssi/src/silc/core/client_ops.c.
+
+Tue Dec 10 21:47:56 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed double free in invite list adding code when adding
+ invite strings. Affected file silcd/server_util.c.
+
+Fri Dec 6 17:40:24 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * More log printing during backup router protocol. Affected
+ file silcd/server_backup.c.
+
+ * Removed backwards support for old private key file format.
+ Affected file lib/silccrypt/silcpkcs.c.
+
+ * Removed backwards support for not-so-strict decryption length
+ check, it's strict now. Affected lib/silccrypt/silccipher.c.
+
+ * GETKEY to update the client entrys fingerprint too.
+ Affected file lib/silcclient/command_reply.c.
+
+ * Added --without-libtoolfix for package builders using weird
+ wrappers around libtool (BSD at least).
+
+Thu Dec 5 22:29:46 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed backup router bugs: When backup resumes router and
+ receives a CHANNEL_MESSAGE packet the backup must not act
+ as router since the packet header decryption would be
+ different. Also, when relaying packets to channel, do
+ not re-encrypt packets on backup that came from the primary
+ since the connection isn't really router-router connection.
+ Affected files silcd/server.c, silcd/packet_send.c.
+
+ * Added checks in encryption/decryption that encryption/decryption
+ length sent as argument really is multiple by block size. Helps
+ catching really weird bugs like the above backup router bugs
+ when packets are being decrypted in wrong way. Affected files
+ lib/silccore/silcpacket.c, and lib/silccrypt/silccipher.c.
+
+ * Fixed padding generation in private key file encryption.
+ Affected file lib/silccrypt/silcpkcs.c.
+
+Thu Dec 5 16:35:23 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added ignore_message_signatures setting which can be used
+ to ignore signatures in messages. Affected files are
+ irssi/src/silc/core/client_ops.c, silc-core.c.
+
+ * Fixed the libtoolfix to use command line options instead of
+ environment variables. They didn't work as expected. Now,
+ the libtool is fully run-time configurable.
+
+Wed Dec 4 21:08:52 CET 2002 Jochen Eisinger <c0ffee@penguin-breeder.org>
+
+ * Verify signature payload for signed messages. Affected files
+ irssi/src/silc/core/client_ops.h, irssi/src/silc/core/silc-servers.c,
+ irssi/src/silc/core/silc-core.h
+
+ * Display signature verification result in public and private
+ messages using theme abstracts. See irssi/default.theme for
+ examples on their usage. Affected files
+ irssi/default.theme, irssi/src/fe-common/silc/fe-messages.h,
+ irssi/src/fe-common/silc/module-formats.[ch],
+ irssi/src/fe-common/silc/fe-common-silc.c,
+ irssi/src/fe-common/silc/Makefile.am
+ irssi/src/fe-common/core/fe-messages.[ch]
+
+ * Fixed bugs in Irssi's theme parsing. Affected files
+ irssi/src/fe-common/core/themes.c
+
+Wed Dec 4 18:29:13 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Calculate the correct length for signed messages before
+ encrypting, it must be multiple by block size. Affected
+ file lib/silccore/silcmessage.c.
+
+ * silc_message_signed_get_public_key returns now both
+ decoded and encoded public key. Affected files are
+ lib/silccore/silcmessage.[ch].
+
+ * Added libtoolfix script that makes the libtool more generic
+ and configurable in run-time. Now we can specify in run-time
+ if what kind of libraries we want to create, regardless of
+ configuration. SIMs are now creates even if --disable-shared
+ was explicitly given.
+
+Tue Dec 3 23:26:55 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed founder key sending in CMODE command in client.
+ Affected file lib/silcclient/command.c.
+
+ * Fixed CUMODE founder authentication in server to not check
+ for client's public key since it's not supposed to do that.
+ Affected file silcd/command.c.
+
+Tue Dec 3 12:02:41 CET 2002 Jochen Eisinger <c0ffee@penguin-breeder.org>
+
+ * Set realname and hostname in NICK_REC records. Affected file
+ irssi/src/silc/core/silc-nicklist.c
+
+Mon Dec 2 20:50:20 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Remove 1.0 protocol backwards compat code from client
+ library.
+
+ * Added more reliable check for whether nickname did change
+ or not, or whether only Client ID changed in NICK_CHANGE
+ notify. Affected file lib/silcclient/client_notify.c.
+ Fixes bug in '@' character handling in a nickname.
+
+ * Added support for automatically parsing signature from
+ the message payload. Added new function
+ silc_message_get_signature to return the payload to
+ application. Affected files lib/silccore/silcmessage.[ch].
+
+ * Changed the private_message and channel_message client
+ operations to deliver the SilcMessagePayload to the
+ application too. Application can use it fe. to get the
+ signature from the message for verification. Affected
+ file lib/silcclient/silcclient.h, client_channel.c and
+ client_prvmsg.c.
+
+ * Redefined the signed payload for message payloads.
+ Updated protocol specs and implemented.
+
+Mon Dec 2 16:28:29 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed wrong invite and ban list handling in server command
+ reply. Affected files are silcd/command_reply.c,
+ silcd/server_util.[ch].
+
+Sun Dec 1 20:48:17 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed CMODE setting in server when founder mode was set.
+ Affected file silcd/command.c. Bug #95.
+
+ * Added support to setting specific public key in CMODE in
+ Irssi SILC client. Affected file lib/silcclient/command.c.
+
+ * Added support to use specific public key in CUMODE in
+ Irssi SILC Client. Affected file lib/silcclient/command.c.
+
+ * Added support for inviting and banning by public key in
+ Irssi SILC client. Affected file lib/silcclient/command.c.
+
+ * Fixed fingerprint/babbleprint showing in invite and ban
+ list command replys. Affected file is
+ irssi/src/silc/core/client_ops.c.
+
+Sun Dec 1 16:32:03 CET 2002 Jochen Eisinger <c0ffee@penguin-breeder.org>
+
+ * Format CMODE +c and +h to display both the mode and the argument
+
+Sun Dec 1 18:17:22 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added test vectors and test programs for SHA-1, MD5,
+ HMAC-SHA1 and HMAC-MD5. New tests are located in
+ lib/silccrypt/tests/. Fixed also argument decoding bug in
+ MD5 implementation. Affected file lib/silccrypt/md5.c.
+
+ * Changed the channel private key and private message key
+ generation (with static keys) to use SHA1 instead of MD5,
+ as SHA1 is the mandatory hash function in SILC. Affected
+ file lib/silcclient/client_[channel/prvmsg].c.
+
+ * Changed the private key file encryption to use SHA1 instead
+ of MD5. Added support for the old generation and added
+ automatic change of the key (to be removed later). Affected
+ files lib/silccrypt/silcpkcs.c.
+
+Sat Nov 30 19:07:52 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Load only files with .pub suffix in PublicKeyDir. Affected
+ file silcd/serverconfig.c.
+
+Sat Nov 30 14:29:34 CET 2002 Johnny Mnemonic <johnny@themnemonic.org>
+
+ * Extended the SILC_SERVER_LOG_ERROR macro to all available logging
+ channels. Affected files silcd/silcd.c, silcd/server.h.
+
+ * Added the config directive PublicKeyDir for the client block.
+ Affected files doc/exampe_silcd.conf.in, silcd/serverconfig.[ch].
+
+Sat Nov 30 09:30:55 CET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Merged Toni's irssi/silc.conf patch.
+
+ * ROBODoc cleanup patch to lib/silccrypt/silcpkcs.h by johnny.
+
+ * Max alloc tests in allocation routines. Affected file
+ lib/silcutil/silcmemory.c.
+
+Fri Nov 29 23:44:29 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed a typo in resuming code that fixed detach/resume code
+ in server. Bug #93. Affected file silcd/packet_receive.c.
+
+Thu Nov 28 17:17:11 CET 2002 Jochen Eisinger <c0ffee@penguin-breeder.org>
+
+ * Do reverse lookups for server when /connecting. Affected files
+ irssi/silc.conf, irssi/src/core/servers.c, irssi/src/core/network.c,
+ irssi/src/core/net-nonblock.*
+
+Thu Nov 28 16:19:18 CET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added library versioning for shared libraries. Affected
+ files configure.in.pre and lib/Makefile.am.pre.
+
+Wed Nov 27 21:51:52 CET 2002 Jochen Eisinger <c0ffee@penguin-breeder.org>
+
+ * Display INVITE and BAN lists as specified by SILC 1.2
+
+Wed Nov 27 16:01:11 CET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Do not send invite list back unless asked (when sending
+ no arguments) or when list was modified. Affected file
+ silcd/command.c.
+
+ * Remove client from invite list in KILLED notify and in
+ KILL command. Affected file silcd/command.c and
+ silcd/server.[ch].
+
+ * Fixed bugs in invite list handling in INVITE command.
+ Affected files silcd/command.c and silcd/server_util.c.
+
+ * Merged with Irssi 0.8.6.
+
+ * Fixed UTF-8 in Irssi SILC Client, setlocale was missing.
+ Affected file irssi/src/fe-text/silc.c.
+
+Mon Nov 25 18:21:43 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * The silc_argument_get_[first/next] now return the argument
+ type to caller. Added silc_argument_payload_encode_one.
+
+ Affected files are lib/silccore/silcargument.[ch].
+
+ * Added support for the SILC 1.2 INVITE command and new
+ invite lists to server. Affected files are silcd/command.c,
+ silcd/server_util.[ch] and silcd/packet_[receive/send].[ch].
+
+ * Added support for the SILC 1.2 BAN command and new
+ ban lists to server. Affected files are silcd/command.c,
+ silcd/server_util.[ch] and silcd/packet_[receive/send].[ch].
+
+ * Added support to client sending new INVITE command. Affected
+ file is lib/silcclient/command.c.
+
+ * Added support to client sending new BAN command. Affected
+ file is lib/silcclient/command.c.
+
+ * Added support for removing client from invite list when kicked
+ from channel, as SILC 1.2 dictates. Affected files are
+ silcd/packet_receive.c and silcd/command.c.
+
+Sun Nov 24 18:26:42 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * If iv argument to silc_cipher_[encrypt/decrypt] is NULL, use
+ automatically the cipher's internal IV. Affected files
+ lib/silccrypt/silccipher.[ch].
+
+ * Assure the RESUME_CLIENT packet is not sent to twice to
+ backup router if the detached client was originated from
+ the backup. Affected file silcd/server.c. Bug #76.
+
+ * Changed silc_sim_symname to not allocate memory. Affected
+ file lib/silcsim/silcsimutil.c.
+
+ * Fixed memory leaks with SIMs in server. Affected files
+ silcd/serverconfig.c, silcd/server.c.
+
+ * Fixed channel key distribution after resuming detached
+ client. Affected files silcd/packet_receive.c.
+
+ * Fixed channel's global_user boolean checking after detaching.
+ Check it after changing the owner of the client not before.
+ Affected file silcd/packet_receive.c.
+
+ * Fixed few double frees from client library. Fixes at least
+ Bug #81, possibly others too.
+
+ * UTF-8 decode topics also in JOIN command reply and TOPIC_SET
+ notifys in Irssi SILC Client. Affected file is
+ irssi/src/silc/core/client_ops.c. Bug #82.
+
+ * Applied Ville Räsänen's manual page and --mandir bugfix
+ patch. Affected files are configure.in.pre and Makefile.am.pre.
+ Bug #88.
+
+Fri Nov 22 18:34:20 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added support to backup router protocol for backup to tell
+ normal server that it cannot use the backup router as primary
+ because the primary isn't really down. Updated protocol
+ specs.
+
+ * Added support for primary router to tell backup router that
+ resuming is not possible because the backup really isn't primary
+ in the cell. For example if backup disconnected itself the
+ resuming is not allowed since the primary really did not
+ go down. Updated protocol specs.
+
+ * Removed MARS from crypto library.
+
+ * Defined the CTR mode and Randomized CBC mode in SILC. The
+ CTR mode is RECOMMENDED now in specification. Defined also
+ Serpent cipher as optional cipher. Updated the protocol specs.
+
+Thu Nov 21 12:43:28 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added support for inviting/banning by IP/MASK, public key,
+ and explicit Client ID. Redefined the command and notify
+ types to allow easier forwards support for other methods
+ of inviting/banning. Updated protocol specs.
+
+ * Remove the client from channel's invite lists if the client
+ is kicked or killed. Updated protocol specs.
+
+ * Unified the Channel Message Payload and Private Message
+ into one Message Payload. Updated protocol specs and
+ implemented.
+
+Tue Nov 19 22:30:56 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Don't wait for EOF after socket error has occurred, but
+ close the connection. Affected file is silcd/server.c.
+
+Mon Nov 18 18:58:26 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added support for setting FOUNDER mode on channel with
+ specific public key which can be set with CMODE command.
+ Updated protocol specs and implemented in client and server.
+
+ * Fixed the Irssi SILC client to correctly shutdown the client
+ library to avoid memory leaks. Affected files are
+ irssi/src/silc/core/silc-core.c and silc-servers.c.
+
+ * Deprecated the No Reply flag in SKE protocol and introduced
+ "IV Included" flag which can be used to indicate that the IV
+ is included in the ciphertext. This makes it possible to use
+ SILC on unreliable transport, such as UDP which may cause
+ packet reordering and losses. Updated protocol specs, did
+ not implement yet.
+
+Sun Nov 17 15:50:57 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed the MPI implementation of silc_mp_sizeinbase to return
+ < 32 bit values in correct size. Affected file is
+ lib/silcmath/mp_mpi.c.
+
+Sat Nov 16 13:14:45 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed the KE Start Payload parsing to check that mandatory
+ fields are present. Affected file lib/silcske/payload.c.
+
+ * Fixed compilation warnigs in Irssi SILC Client. Affected
+ files are irssi/src/silc/core/silc-query.c. client_ops.c.
+
+Thu Nov 14 19:33:28 CET 2002 Jochen Eisinger <c0ffee@penguin-breeder.org>
+
+ * Print "nick now appears as newnick" and update Irssi's nicklist
+ when you change your nick to "nick". Closes #62
+
+ * Never format your own nick. Closes #63
+
+Thu Nov 14 09:44:54 CET 2002 Jochen Eisinger <c0ffee@penguin-breeder.org>
+
+ * SILC_UMODE_GONE changes are now propagated correctly to the
+ Irssi client. Closes #54
+
+Tue Nov 12 19:42:18 CET 2002 Jochen Eisinger <c0ffee@penguin-breeder.org>
+
+ * Fixed example in /HELP KEY
+
+ * Added expando $j which expands to current SILC Client version
+
+Tue Nov 12 19:46:39 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed public key decoding in crypto library.
+
+ * Added better error printing to SKE library.
+
+Tue Nov 12 08:50:12 CET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed NICK command to not crash if nickname was not sent.
+
+Mon Nov 11 19:32:00 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added Encrypt-Then-MAC order to SILC packet MAC generation.
+ Deprecated the old Encrypt-And-MAC order. Updated protocol
+ specs and implemented.
+
+ * Added Encrypt-Then-MAC order to Channel Message Payload MAC
+ generation. Updated specs and implemented.
+
+Sun Nov 10 12:20:56 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added support for rekey before 2^32 sequence number wraps.
+ Affected files in server and client library.
+
+ * Padding must be at least 8 bytes now. Implemented and updated
+ protocol specs.
+
+ * Compute maximum padding for authentication packets to make
+ passphrase approximation attacks impossible. Affected files
+ in client library and in server.
+
+ * Fixed PING command sending in client library and handling in
+ server. The server ID must be ID Payload, not raw ID data.
+ Affected files in server and client library.
+
+ * Defined that all public keys sent in commands and notify
+ payloads are actually Public Key Payloads not raw public key
+ data. Updated protocol specs and implemented.
+
+ * Updated protocol version to 1.2. Updated specs and code.
+
+ * Added ERR_UNSUPPORTED_PUBLIC_KEY and ERR_OPERATION_ALLOWED
+ status types. Updated specs and the code.
+
+ * Added support for normal client to kill its own entries from
+ the network. Updated protocol specs and the code.
+
+ * Defined the SILC_MESSAGE_FLAG_SIGNED. Updated protocol specs
+ and added initial implementation.
+
+ * Added MAC field to the Private Message Payload to protect
+ against chosen ciphertext attacks. Updated the protocol specs
+ and implemented.
+
+ * Added idle and signon fields to the ATTRIBUTE_SERVICE
+ attribute to indicate the user's current idle and signon time
+ of a service. Updated protocol specs and implemented.
+
+Thu Nov 7 19:21:10 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added "do_not_bind" argument to silc_client_file_send what
+ can be used to not bind locally but assume the file receiver
+ provides the point of connect. Usefull when sender is behind
+ NAT device. Affected file lib/silcclient/silcclient.h and
+ client_ftp.c.
+
+ * Added -no-listener option to FILE SEND command in Irssi SILC
+ client. Affected file irssi/src/silc/core/silc-servers.c.
+ Renamed FILE RECEIVE to FILE ACCEPT.
+
+ * Confirm passphrase for private key encryption in
+ silc_create_key_pair and silc_change_private_key_passphrase.
+ Affected files are lib/silcutil/silcapputil.c.
+
+Thu Nov 7 10:05:28 CET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Move silc_client_packet_send back to internal, added
+ silc_client_send_packet, a bit simpler function for application.
+ Affected files lib/silcclient/silcclient.h, client.c and
+ client_internal.h.
+
+ * Moved the SilcClientEntry, SilcChannelEntry and
+ SilcServerEntry to silcclient.h to be public and documented
+ them for application. Affected files are
+ lib/silcclient/silcclient.h and idlist.h.
+
+Wed Nov 6 17:18:13 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed manual page installation patch by Ville Räsänen.
+ USERS help page fix patch by Ville Räsänen
+
+ * Changed the silc_client_command_call interface to make
+ the command call simpler for the application. The library
+ now handles the command line parsing, command finding and
+ execution. Application only needs to call the function
+ with the command line. Affected files are
+ lib/silcclient/silcclient.h, command.[ch].
+
+ * Fixed silc_get_input to NULL-terminate the returned input.
+ Affected file lib/silcutil/silcutil.c.
+
+ * Resolve the client's public key in JOIN command if the
+ founder auth data is being requested but we don't know the
+ client's public key. Affected file silcd/command.c.
+ Bug #53.
+
+Mon Nov 4 16:02:59 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Print notify for server opers when backup router comes
+ online. Affected file silcd/server.c.
+
+ * Fixed the INVITE command to send the invite list in
+ command reply. Affected file silcd/command_reply.c.
+
+ * Fixed MOTD command reply sending. Affected file
+ silcd/command.c.
+
+ * UTF-8 decode the topic in TOPIC command reply and LIST
+ command reply in Irssi SILC client. Affected file is
+ irssi/src/silc/core/client_ops.c.
+
+Sun Nov 3 17:59:15 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed the INVITE command to not crash Irssi SILC client
+ when given without nickname argument. AFfected file
+ irssi/src/silc/core/client_ops.c.
+
+ * Fixed double free in WHOIS query on normal server when
+ forwarding query to router. Affected file is
+ silcd/server_query.c.
+
+ * Fixed WATCH command reply handling on normal server which
+ was missing altogether. Affected file silcd/command_reply.c.
+ Bug #44.
+
+Sun Nov 3 00:42:05 EET 2002 Mika Boström <bostik@lut.fi>
+
+ * Added man-pages for silc(1), silcd(8) and silcd.conf(5).
+ Included yodl sources for each of these. Also modified
+ Makefile.am prototype to install these files to proper
+ locations. Updated CREDITS. Affected file Makefile.am.pre,
+ new files doc/*.yo, doc/silc.1, doc/silcd.conf.5,
+ doc/silcd.8.
+
+Sat Nov 2 21:26:56 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added support for encrypted private key files. Now
+ passphrase must be provided when new key pair is created
+ (can be empty though), and prompted when loading the
+ private key. Added support for loading the old-style
+ non-encrypted private keys as well. Affected files
+ lib/silccrypt/silcpkcs.[ch], Irssi SILC client and
+ SILC Server.
+
+ * Fixed silc_get_input to accept input on all terminals.
+ Affected file lib/silcutil/silcutil.c.
+
+ * Moved the Irssi SILC client key loading and other stuff
+ to be called after the arguments and UI is initialized.
+ Affected file irssi/src/silc/core/silc-core.c. Bug #31.
+
+ * Added -P option to Irssi SILC client which can be used
+ to change the passphrase of the private key. Affected
+ file irssi/src/silc/core/silc-core.c.
+
+ * Added silc_change_private_key_passphrase apputil routine
+ to lib/silcutil/silcapputil.[ch].
+
+Sat Nov 2 12:53:09 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Fixed connection closing in client library to not crash.
+ Moved the connection freeing totally to function
+ silc_clinet_del_connection. Affected file
+ lib/silcclinet/client.c.
+
+Fri Nov 1 18:57:02 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Changed includes/silcincludes.h to silcincludes.h.in to
+ include configuration specific information. The silcdefs.h
+ is not included in to installation anymore (it's only
+ compilation time header).
+
Fri Nov 1 10:30:26 CET 2002 Pekka Riikonen <priikone@silcnet.org>
* Moved the SilcClient and SilcClientConnection from client.h
usage. Affected files lib/silcclient/client_internal.h
lib/silcclient/silcclient.h.
- * Fixed a bug in query resolving in server. Used wrong
+ * Fixed a bug in query resolving in server. Used wrong
variable in a for loop and crashed. Affected file is
silcd/server_query.c.
over. Affected file silcd/packet_receive.c. Bug #37.
* Resolve incomplete client entrys in CUMODE_CHANGE and
- CMODE_CHANGE notifys. Affected file is
+ CMODE_CHANGE notifys. Affected file is
lib/silcclient/client_notify.c. Bug #42.
Thu Oct 24 12:22:35 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
* Fixed attribute encoding and decoding bugs. Affected
files lib/silccore/silcattrs.[ch].
- * Added ATTR command to Irssi SILC Client which is used to
+ * Added ATTR command to Irssi SILC Client which is used to
manage user's Requested Attributes sending and values for
WHOIS command. Affected files around Irssi SILC client.
Affected files lib/silcske/silcske.c, silcske_status.h and
payload.c.
- * Save the PKCS key length even if only private key is set to
+ * Save the PKCS key length even if only private key is set to
SilcPKCS. Affected file lib/silccrypt/silcpkcs.[ch] and rsa.c.
* Fixed the usage of silc_pkcs_get_key_len since it returns the
silcd/packet_receive.c.
* From now on distribution versions are used as protocol versions
- instead of by default using the Toolkit base version as protocol
+ instead of by default using the Toolkit base version as protocol
version. Affected file prepare.
* Do not set the locally resolved hostname for local client
* Fixed pending command deletion in server and client library
to check the whole list instead of breaking after first found.
- The affected files are silcd/command.[ch] and
+ The affected files are silcd/command.[ch] and
lib/silcclient/command.[ch].
Sat Jun 29 17:40:12 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
It expected it to always be only client and ignored the
notify. Affected file silcd/packet_recieve.c.
- * Removed some (unnecessary) debug printing from
+ * Removed some (unnecessary) debug printing from
lib/silccore/silcid.c and lib/silccore/silcargument.c.
* Do not force CMODE_CHANGE when server is announcing new
fixes some problems too. Affected file silcd/packet_receive.c.
* Fixed SERVER_SIGNOFF sending to local clients. It was
- totally broken and sent the notify to all local clients,
+ totally broken and sent the notify to all local clients,
instead of only to those that was on same channel as the
signing off clients. Affected file silcd/server_util.c.
when that mode is set. Protocol TODO #17. Affected
files are silcd/server.[ch], server_util.[ch],
silcd/command.c, silcd/packet_receive.c and
- lib/silcclient/command.c.
+ lib/silcclient/command.c.
Fri May 3 18:36:51 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
silcd/command.c and silcd/command_reply.c.
* Fixed client info resolving on LEAVE command in client
- library to not crash. Affected file is
+ library to not crash. Affected file is
lib/silcclient/client_notify.c.
Thu May 2 08:45:11 CEST 2002 Pekka Riikonen <priikone@silcnet.org>
Moved the silc_client_command_status_messages table to the
lib/silcutil/silcutil.c and added new funtion
silc_get_status_message, which deprecates function
- silc_client_status_message. Affected files are
+ silc_client_status_message. Affected files are
lib/silccore/silcstatus.h, lib/silcclient/command_reply.[ch],
lib/silcutil/silcutil.[ch].
* Defined the use of extra WHOIS attributes in WHOIS command.
The <Requested Attributes> (defined in a separate document)
- can be used to request additional information about user
+ can be used to request additional information about user
not returned by standard WHOIS command. Defined that server
can send WHOIS command directly to client. Client provides
the requested attributes to the server. Updated the protocol
specs. Protocol TODO #4. Implementation is not done yet
(Protocol TODO #24).
- * Renamed function silc_client_command_status_message to
+ * Renamed function silc_client_command_status_message to
silc_client_status_message. Affected files are
lib/silcclient/command_reply.[ch].
Fri Apr 12 20:09:08 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
* Added resolve_cmd_ident field to the SilcClientEntry structure
- too so that if the entry is for example being resolved so
+ too so that if the entry is for example being resolved so
another command may attach to the same pending command reply
without requiring to resolve the same entry again. Added
support for adding multiple pending commands for one
Private Message Key flag is set (using private keys to protect
private messages). Updated protocol specs and code in client
and server and core library. Protocol TODO #23. Affected
- files are lib/silccore/silcmode.h, silcd/server.[ch],
+ files are lib/silccore/silcmode.h, silcd/server.[ch],
irssi/src/silc/core/client_ops.c, silcd/packet_receive.c,
irssi/docs/help/in/umode.in, lib/silcclient/command.c.
* Added more IM-like features by introducing new user modes
for setting various presence information. Added new modes:
INDISPOSED, BUSY, PAGE, HYPER and ROBOT. Updated protocol
- specs and code. Protocol TODO #19. Affected files are
+ specs and code. Protocol TODO #19. Affected files are
lib/silccore/silcmode.h, irssi/src/silc/core/client_ops.c,
irssi/docs/help/in/umode.in and lib/silcclient/command.c.
* Added STATS command to the protocol after all, to return
various statistical information about the network. It can
be used by clients to retrieve statistical information, and
- servers may use it to to fetch cell and network wide
+ servers may use it to to fetch cell and network wide
statistics from router. Updated the protocol specs and
implemented it to the server. Protocol TODO #16.
Affected files are lib/silccore/silccommand, silcd/command.[ch],
Sat Apr 6 17:08:58 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
* The LIST command reply in client libary now adds new channel
- entry if the returned channel doesn't exist yet in cache,
+ entry if the returned channel doesn't exist yet in cache,
and returns the channel entry to the application in the
command_reply client operation. Affected file is
lib/silcclient/command_reply.c.
* Defined that the security property fields in SKE SHOULD be
UTF-8 encoded, defined that version string MUST be US-ASCII
- encoded, defined that passphrases sent in connection
+ encoded, defined that passphrases sent in connection
authentication protocol MUST be UTF-8 encoded. Implemented
these to the client and server. Defined also that other
passphrases sent in the protocol MUST be UTF-8 encoded.
- Affected files are lib/silcske/silcske.c,
- lib/silcclient/protocol.c, silcd/protocol.c,
+ Affected files are lib/silcske/silcske.c,
+ lib/silcclient/protocol.c, silcd/protocol.c,
silcd/serverconfig.c, and lib/silccore/silcauth.c.
* Changed the silc_client_close_connection interface to not
* Added the killer's client ID to the KILLED notify and added
it to protocol specs and implemented it to client and server.
Protocol TODO #13. Affected files are silcd/command.c,
- silcd/packet_receive.c, packet_send.[ch],
+ silcd/packet_receive.c, packet_send.[ch],
lib/silcclient/client_notify.c, irssi/src/silc/core/client_ops.c.
The killer's client entry is now returned to application in
the `notify' client operation.
Changed the client library to return the message length
to application as well in the channel_message and private_message
- client operations. Affected files are
+ client operations. Affected files are
lib/silcclient/client_prvmsg, lib/silcclient/client_channel.c,
lib/silcclient/silcclient.h, irssi/src/silc/core/client_ops.c,
and lib/silcclient/client_ops_example.c.
* Deprecated all administrative commands from SILC protocol
since they are highly implementation specific commands.
- Updated protocol specs. Moved the old commands in
+ Updated protocol specs. Moved the old commands in
implementations to private range of command types. Affected
files are silcd/command.c, lib/silcclient/command.c and
lib/silcclient/command_reply.c. Protocol TODO #8.
Wed Apr 3 09:57:47 CEST 2002 Pekka Riikonen <priikone@silcnet.org>
* Added SILC_PROTOCOLVERSION macro to check protocol version
- of a socket connection. The affected file is
+ of a socket connection. The affected file is
lib/silcutil/silcsockconn.h.
* Added better error logging in rekey protocol. Affected file
Tue Apr 2 14:55:06 CEST 2002 Pekka Riikonen <priikone@silcnet.org>
* Some client implementations quit network by doing first LEAVE
- and then immediately SIGNOFF (like Bombyx). We now do check
- after a short time after LEAVE notify and check whether the
- client is still valid after LEAVE, and if not we remove it from
+ and then immediately SIGNOFF (like Bombyx). We now do check
+ after a short time after LEAVE notify and check whether the
+ client is still valid after LEAVE, and if not we remove it from
cache. Affected file is lib/silcclient/client_notify.c.
Tue Apr 2 13:39:04 CEST 2002 Johnny Mnemonic <johnny@themnemonic.org>
* Fixed the silc_log_quick handling in the logging routines.
It didn't log quickly when it was TRUE. Affected file is
lib/silcutil/silclog.c. Also the flush delay was set even
- if it was 0 in config file. Affected file is
+ if it was 0 in config file. Affected file is
silcd/serverconfig.c.
* Added support for changing key pair of the server in rehash.
called the application does not call silc_packet_send_prepare
because the library will call it automatically. These
interfaces now also return a reference to the outgoing buffer
- which includes the assembled packet, which the application can
+ which includes the assembled packet, which the application can
use to encrypt the packet.
Affected files are lib/silccore/silcpacket.[ch],
Mon Mar 18 21:00:41 EET 2002 Pekka Riikonen <priikone@silcnet.org>
* Added macro SILC_PACKET_DATALEN which can be used during
- packet assembling to check whether the data to be added to
+ packet assembling to check whether the data to be added to
the packet will fit to SILC_PACKET_MAX_LEN. If not the data
len is truncated until it fits it.
* Added the deleting of server's own ID cache entry to the
silc_server_free function. Free also everything else that
- has been allocated in silc_server_init. The affected file
+ has been allocated in silc_server_init. The affected file
is silcd/server.c.
Sun Mar 17 15:44:56 EET 2002 Pekka Riikonen <priikone@silcnet.org>
* Added new configuration params: version_protocol, version_software
and version_software_vendor to specify what version the remote
host must at least be to be able to connect to server. The vendor
- string can be regex matched too. Added new function
+ string can be regex matched too. Added new function
silc_server_connection_allowed to check maximum number of allowed
connections, and allowed versions for incoming connections.
Affected files are silcd/server.c, server_util.[ch] and
Renamed silc_schedule_wakeup_init and silc_schedule_wakeup_uninit
to silc_schedule_internal_init and silc_schedule_internal_uninit.
Added new platform specific routines
- silc_schedule_internal_signals_[un]block and
+ silc_schedule_internal_signals_[un]block and
silc_schedule_internal_signal_[un]register.
Added new functions to SILC Schedule API:
it was mistakenly updated to SILC Protocol 1.0 even though it
is to be included in 1.1. Since it is not in 1.0 it is not
mandatory, and this fix now handles it only if it is provided,
- and it is not error if it is not provided. Affected file
+ and it is not error if it is not provided. Affected file
lib/silcclient/client_notify.c.
Sat Mar 16 09:07:27 EET 2002 Pekka Riikonen <priikone@silcnet.org>
* Fixed the server to check correctly the amount of connections
from single host, by checking also the type of the connection.
Fixed also the comparison of number of connections and number
- of allowed connections. Affected files are silcd/server.c,
+ of allowed connections. Affected files are silcd/server.c,
server_util.[ch].
Fri Mar 8 17:16:41 EET 2002 Pekka Riikonen <priikone@silcnet.org>
reconnect_interval_max, reconnect_keep_trying and
require_reverser_lookup. Added ConnectionParam block, and
implemented the connection parameters when connecting as
- initiator and when accepting connections as responder.
+ initiator and when accepting connections as responder.
Added CONFIG_IS_DOUBLE macro in config file parsing, to check
whether given configuration value has been given already.
* Removed doc/example_silc.conf.in since it is redundant.
The make install will now install irssi/silc.conf file.
- * Added new Passphrase and Publickey authentication methods to
+ * Added new Passphrase and Publickey authentication methods to
config file, allowing both public key and passphrase based
authentication to be set at the same time.
* Fixed the file transfer's key agreement payload to include
zero port also if the hostname is NULL because it could not
- be bound.
+ be bound.
Call file transfer monitor callback now also if error occurs
during key agreement protocol.
Thu Jan 31 19:06:22 EET 2002 Pekka Riikonen <priikone@silcnet.org>
- * Added function silc_client_add_channel,
+ * Added function silc_client_add_channel,
silc_client_replace_channel_id, and removed functions
silc_client_new_channel_id and silc_idlist_get_channel_by_id
from client library.
- * Added cross reference of the joined channels to the
+ * Added cross reference of the joined channels to the
SilcClientEntry, and changed the SilcChannelEntry's
users list to SilcHashTable. The affected files are
lib/silcclient/idlist.[ch].
* Changed all hash table traversing to call the new
silc_hash_table_list_reset in server and in client library.
- * Added function silc_client_on_channel to return the
+ * Added function silc_client_on_channel to return the
SilcChannelUser entry if the specified client entry is joined
on the specified channel. This is exported to application as
well. Affected files lib/silcclient/client_channel.c, silcapi.h.
* Fixed the CHANNEL_CHANGE notify to re-announce the channel
which ID was changed. This way the router will send the
- user list for the channel again, and server won't be in
+ user list for the channel again, and server won't be in
desync in some rare circumstances. Affected file is
silcd/packet_receive.c.
* Added silc_client_start_key_exchange_cb and lookup the
remote hostname and IP address before starting the key
- exchange with server. The affected file is
+ exchange with server. The affected file is
lib/silcclient/client.c.
* The server's public key is now saved using the IP address
context. When error occurs during socket operation (read
or write) the error is saved. Added also new function
silc_socket_get_error to return human readable socket error
- message. Affected files are lib/silcutil/silcsockconn.[ch],
+ message. Affected files are lib/silcutil/silcsockconn.[ch],
lib/silcutil/unix/silcunixsockconn.c, and
lib/silcutil/win32/silcwin32sockconn.c.
* Fixed the `created' channel information sending from router
to server in JOIN command. Checks now whether the channel
- really was created or not and set it according that.
+ really was created or not and set it according that.
Fixed the JOIN command to use the client entry's current
ID during the joining procedure instead of the one it sent
in the command (it is checked though), since it can change
- between the packet processing and command processing, and
+ between the packet processing and command processing, and
would just case unnecessary pain in the client end. Affected
file silcd/command.c.
The server now checks that if unauthenticated connection
sends data and its processing fails the server will close
- the connection since it could be a malicious flooder.
+ the connection since it could be a malicious flooder.
Affected files lib/silccore/silcpacket.[ch], silcd/server.c.
too much useless log). Affected file lib/silcutil/silclog.c.
Wed Dec 19 18:21:51 CET 2001 Johnny Mnemonic <johnny@themnemonic.org>
-
+
* Made the silc_server_daemonise() function more readable.
Affected file silcd/server.c.
-
+
* Pid file is now optional, the user may comment it out from
the config file. Removed define SILC_SERVER_PID_FILE, we
don't need a default any longer. Affected file
configure.in.pre, lib/Makefile.am.pre.
-
+
* Make some use of the pid file. The server now dies at startup
if it detects a valid pid file on his path. The server would
die anyway in this circumstance, because of the bind() failure.
Affected file silcd/silcd.c.
-
+
* No longer compiling lib/dotconf.
Mon Dec 17 18:24:27 EET 2001 Pekka Riikonen <priikone@silcnet.org>
* Fied the NICK_CHANGE notify to add the new client entry
even it is resolved. This removes an <[unknown]> nick
- thingy bug in the client. Affected file is
+ thingy bug in the client. Affected file is
lib/silcclient/client_notify.c.
* Do not try to allocate 0 bytes (efence does not like it)
in WHOIS or IDENTIFY from router, and it is global client,
we'll check whether it is on some channel. If it is not
then we cannot be sure about its validity and will resolve it
- from router. Fixes a bug in WHOIS and IDENTIFY. Affected
+ from router. Fixes a bug in WHOIS and IDENTIFY. Affected
file silcd/command.c.
* Search channel by name (if possible) rather than by ID
* Implemented the <founder auth> payload handling in the JOIN
command. If provided all conditions for channel joining
- except requirement to provide correct passphrase can be
+ except requirement to provide correct passphrase can be
overrided by the channel founder. Updated the protocol specs.
Affected file silcd/command.c.
IP/hostname. Affected file lib/silcutil/silcnet.c.
* Defined <founder auth> argument to the SILC_COMMAND_JOIN
- command. It can be used to gain founder privileges at
+ command. It can be used to gain founder privileges at
the same time when joining the channel.
- Defined that the SILC_NOTIFY_TYPE_KICKED send the
+ Defined that the SILC_NOTIFY_TYPE_KICKED send the
kicker's client ID as well. Updated protocol specs.
Defined that the server must send SILC_COMMAND_IDENTIFY
Fri Nov 23 23:30:59 EET 2001 Pekka Riikonen <priikone@silcnet.org>
* Pid file configuration, and server's config file fixes
- patch by toma. Updated CREDITS file.
+ patch by toma. Updated CREDITS file.
Sun Nov 18 01:34:41 EET 2001 Pekka Riikonen <priikone@silcnet.org>
Should fix /NAMES bit more. The affected file is
irssi/src/silc/core/silc-channels.c.
- * Added `fingerprint' field to the SilcIDListData in the
+ * Added `fingerprint' field to the SilcIDListData in the
silcd/idlist.h to hold the fingerprint of the client's
public key.
Sat Nov 3 17:48:55 EET 2001 Pekka Riikonen <priikone@silcnet.org>
- * Added silc_pkcs_public_key_compare to compare two
+ * Added silc_pkcs_public_key_compare to compare two
public keys. Affected file lib/silccrypt/silcpkcs.[ch].
* Check that the client who set the founder mode on the
client library. Affected file lib/silcclient/client.c.
* Fixed the silc_client_packet_parse to not to increase
- the packet sequence number if the conn->sock and the
+ the packet sequence number if the conn->sock and the
current socket connection is not same. This can happen
for example during key agreement when the conn includes
multiple socket connections (listeners). Affected file
corresponding private key is verified by the server).
Updated to the protocol specification.
- * Added support of receiving the client's public key's
+ * Added support of receiving the client's public key's
fingerprint in command reply in client library. Affected
file is lib/silcclient/command_reply.c, and
lib/silcclient/idlist.[ch].
the provided table of client entries. Affected file
silcd/packet_send.[ch].
- * Fixed a crash in client resolving in client_prvmsg.c in
+ * Fixed a crash in client resolving in client_prvmsg.c in
client library. Affected file lib/silcclient/client_prvmsg.c.
* Do not actually remove the client directly from ID cache
silcd/packet_receive.c.
* Check for partial packet in data queue after every packet that
- was found from the queue. Return and wait for more data if
+ was found from the queue. Return and wait for more data if
there is partial data in queue. Affected file is
lib/silccore/silcpacket.c.
lib/silcclient/client.c.
* SilcPacketParserCallback now returns TRUE or FALSE to indicate
- whether library should continue processing the packet.
+ whether library should continue processing the packet.
Affected file lib/silccore/silcpacket.h.
* Added SilcSFTPMonitor callback, SilcSFTPMonitors and
* Added new local command FILE to the Irssi SILC Client.
It is used to perform the file transfer. It has subcommands
SEND, RECEIVE, SHOW and CLOSE. Affected files
- irssi/src/silc/core/client_ops.c,
+ irssi/src/silc/core/client_ops.c,
irssi/src/silc/core/silc-server.[ch].
Mon Oct 22 12:50:08 EDT 2001 Pekka Riikonen <priikone@silcnet.org>
* Renamed silc_file_read and silc_file_write to functions
silc_file_readfile and silc_file_writefile. Added function
- silc_file_open and silc_file_close. Affected files
+ silc_file_open and silc_file_close. Affected files
lib/silcutil/silcutil.[ch].
Thu Oct 18 20:58:13 EDT 2001 Pekka Riikonen <priikone@silcnet.org>
(SSH File Transfer Protocol). Affected file in addition
of the internet draft is lib/silccore/silcpacket.h.
- * Deprecated the SILC_PACKET_CELL_ROUTERS and defined new
+ * Deprecated the SILC_PACKET_CELL_ROUTERS and defined new
packet SILC_PACKET_RESUME_ROUTER instead. The new packet
is used as part of backup router protocol when the primary
router of the cell is back online and wishes to resume
change causes incompatibilities in the protocol.
* Redefined also the MAC computation from the packet.
- An packet sequence number is now added to the MAC
+ An packet sequence number is now added to the MAC
computation. This prevents possible replay attacks against
the protocol. This change too causes incompatibilities
in the protocol.
case all found clients are already disconnected (WHOWAS would
found them) in the server. Affected file silcd/command.c.
- * Update the last_receive (time of last data received) to be
+ * Update the last_receive (time of last data received) to be
updated only when received private or channel message so that
the idle time showed in WHOIS makes more sense.
* Removed channel key rekey task deleting from the function
silc_server_save_channel_key. Affected file silcd/server.c.
- Added explicit timeout task context instead that is used to
+ Added explicit timeout task context instead that is used to
delete the task if we are registering a new task before the
new task has elapsed.
as well. This replaced the old boolean registered field as well.
Added resolve_cmd_ident field to the SilcClientEntry structure
- too so that if the entry is for example being resolved so
+ too so that if the entry is for example being resolved so
another command may attach to the same pending command reply
without requiring to resolve the same entry again. This concept
should optimize the WHOIS and the IDENTIFY resolving under
* Changed the silc_client_get_clients_local to accept the formatted
nickname as argument. It accepts the real nickname too but the
- formatted nickname can be used to find the true entry from
+ formatted nickname can be used to find the true entry from
multiple entries. Affected file lib/silcclient/silcapi.h and
lib/silcclient/idlist.c.
provided then the library will use the string as is. The
affected file is lib/silcclient/silcapi.h.
- * All the nickname strings passed to the client library in
+ * All the nickname strings passed to the client library in
commands are now expected to be formatted nickname strings.
If the command does not support the formatted nickname string
it will assume that the sent string is the actual nickname.
application can call this function if it does not know the
current authentication method.
- Affected files are lib/silcclient/client.c and
+ Affected files are lib/silcclient/client.c and
lib/silcclient/silcapi.h.
* The Irssi SILC client now automatically resolves the authentication
* Changed the silc_id_create_client_id to be collision
resistant. It is now assured that there cannot be created
- two same client ID's. I suspect that some weird bugs in
+ two same client ID's. I suspect that some weird bugs in
the server were actually caused by duplicate Client IDs.
Affected file silcd/serverid.[ch]. A router receiving
new ID now also assures and informs the sending server
if client could not be added to ID cache. Affected files
silcd/packet_receive.c and silcd/server.c.
- * When client's sock->user_data is freed, NULL also the
+ * When client's sock->user_data is freed, NULL also the
client->router and client->connection pointers. Added check
for these pointers being NULL to various places around the
code. Affected file silcd/server.c.
are not handled when it is not allowed. Affected file
silcd/server.c.
- * Added `bool registered' fields to all
+ * Added `bool registered' fields to all
silc_idlist_[server|client]_get_* routines to indicate whether
the fetched client needs to be registered or not. Affected
file silcd/idlist.[ch].
Wed Jul 18 18:34:01 EEST 2001 Pekka Riikonen <priikone@silcnet.org>
- * Call silc_schedule_task_del_by_context in the
+ * Call silc_schedule_task_del_by_context in the
silc_protocol_cancel instead of silc_schedule_task_del_by_callback.
Affected file lib/silccore/silcprotocol.c.
updated the protocol specs.
* Completed the GETKEY command in client. It can be now used
- to fetch also servers public key not only some clients.
+ to fetch also servers public key not only some clients.
Affected files lib/silcclient/command[_reply].c.
* Added silc_client_get_server to return server entry by the
The INFO command now allocates the SilcServerEntry context
and saves the server info there. The COMMAND_REPLY in
- the INFO now returns the parameters to application in
+ the INFO now returns the parameters to application in
same order as defined in the protocol specification.
The entries are cached in the client->server_cache.
* Fixed a channel joining bug in router. The router must also
check the channel modes, invite and ban lists etc. when serving
the JOIN command sent by normal server. Affected file is
- silcd/command.c. The router now resolves the client's
+ silcd/command.c. The router now resolves the client's
information from the server who sent the JOIN command if it
does not know it, and processes the JOIN command only after
that.
* Added SILC_MUTEX_DEFINE to define the mutex on environments
that may or may not compile the mutex support in.
-
+
Changed the silc_mutex_alloc interface. It allocates the
mutex now to the sent pointer and returns TRUE or FALSE.
* Fixed the KICK notify handling in the Irssi SILC client to
update the channel records so that the kicked client does not
- appear to be on the channel. The affected file is
+ appear to be on the channel. The affected file is
irssi/src/silc/core/silc-channels.c.
* Always update the conn->current_channel when executing command
* Fixed KILL notify handling, client does not crash anymore.
Affected file irssi/src/silc/core/silc-channels.c.
- * Reduced the default packet buffer size from 2048 to 1024 in
+ * Reduced the default packet buffer size from 2048 to 1024 in
lib/silccore/silcpacket.c.
* Added SILC_SKE_STATUS_FREED SKE status type and a reference
counter to the SKE context that is incresed when the SKE library
performs async operation outside the library. If the outside
- process frees the SKE context and FREED status will be set
+ process frees the SKE context and FREED status will be set
and the library will detect after the sync operation that the
libary is freed. The affected files are
lib/silcske/silcske[_status].[ch].
passed as client entry to the application. */
* Fixed the task timeout calculation to assure that there is
- never negative timeouts. The affected file is
+ never negative timeouts. The affected file is
lib/silcutil/silcschedule.c.
* Fixed the channel user mode notification sending in server.
* Fixed a possible crash in silc_packet_send_prepare. It now
assures always that there is enough space in the buffer and
- at the tail area of the buffer (for MAC).
+ at the tail area of the buffer (for MAC).
Fixed the inbound buffer reallocation in silc_packet_read.
It was old code and did not handle the reallocation correctly.
Irssi SILC client's message modules formats.
Added the handing of the KILL notify to the Irssi SILC client
- as it was missing. Added the kill message module formats
+ as it was missing. Added the kill message module formats
as well.
The affected file is irssi/src/silc/core/silc-channels.c.
Thu Jun 7 08:57:16 CEST 2001 Pekka Riikonen <priikone@poseidon.pspt.fi>
- * Close log file after open. Affected file
+ * Close log file after open. Affected file
lib/silcutil/silclog.c.
* Check whether sock == NULL in silc_client_send_packet and return
Tue Jun 5 08:08:21 CEST 2001 Pekka Riikonen <priikone@poseidon.pspt.fi>
- * Merged a splitted window bugfix from Irssi CVS tree. The
+ * Merged a splitted window bugfix from Irssi CVS tree. The
affected file is irssi/src/fe-text/textbuffer-view.c.
* Fixed the ME, ACTION and NOTICE printing in Irssi Client.
silcd/serverconfig.[h] and silcd/server.c.
* Changed the layout of the header files of the public interfaces
- in the SILC libraries. The new layout supports ROBODoc
+ in the SILC libraries. The new layout supports ROBODoc
documentation tool (and some others) so that it is easy to create
a library reference manual. All the other headers and source
code must still follow the CodingStyle document. Also source
error message printing to module formats in the Irssi SILC client.
* Added new silc_client_set_away_message to set the away message
- that is back to the person who sent private message. The
+ that is back to the person who sent private message. The
affected file lib/silcclient/silcapi.h and the
lib/silcclient/client_prvmsg.c.
Sat May 26 12:13:37 EEST 2001 Pekka Riikonen <priikone@poseidon.pspt.fi>
* Changed the ask_passphrase client operation to be ascynchronous.
- It has now a completion callback and a context that the
+ It has now a completion callback and a context that the
application must call after it has got the passphrase from
the user. Affected files lib/silcclient/silcapi.h,
lib/silcclient/protocol.c, lib/silcclient/command.c and
as well. Defined SilcVerifyPublicKey callback that is used to
indicate the success of the public key verification process.
- Changed the server and client to use the new async client
+ Changed the server and client to use the new async client
operations.
* Changed the Irssi SILC client's internal scheduler to be called
* Replaced the client entry's `channel' list and channel entry's
`user_list' list to hash tables for optimized lookup. Changed
- the code to use the hash table interface around the code.
+ the code to use the hash table interface around the code.
Affected file lib/silcd/idlist.[ch].
* Added `auto_rehash' boolean argument to the function
with Client ID but with the hash of the ID (which is a hash of
the nickname) as well without any difference in performance.
- Added also silc_idcache_find_by_id_one_ext to do one on one
+ Added also silc_idcache_find_by_id_one_ext to do one on one
searching when we have the actual ID. Added also function
silc_hash_client_id_compare. The affected files are
lib/silccore/idcache.[ch] and lib/silcutil/silcutil.[ch].
case sensitive.
* Fixed a bug in server with channel message sending. It put
- wrong ID type as destination ID. The affected file
+ wrong ID type as destination ID. The affected file
silcd/packet_send.c.
* silc_idcache_del_by_context now deletes from all hash tables
The affected files are lib/silccore/id.[ch] and other files
around the tree using these routines.
- * Removed the ID length arguments in server from various
- silc_server_send_notify_* routines -> they are not needed
+ * Removed the ID length arguments in server from various
+ silc_server_send_notify_* routines -> they are not needed
anymore.
Sat May 5 13:56:33 EEST 2001 Pekka Riikonen <priikone@poseidon.pspt.fi>
Tue May 1 14:18:13 EEST 2001 Pekka Riikonen <priikone@poseidon.pspt.fi>
* Fixed the silc_verify_public_key client operation function to
- save the public keys differently. The fingerprint is now
+ save the public keys differently. The fingerprint is now
used as filename and not the hostname. This way also the
client keys are saved uniquely and not with hostnames. The
affected file is silc/client_ops.c.
incoming connection before executing any KE or authentication
protocols.
- * The connection configuration is now saved to the KE and
- connection auth protocol contexts and not fetched anymore in
+ * The connection configuration is now saved to the KE and
+ connection auth protocol contexts and not fetched anymore in
the protocol. Affected files silcd/server.c, silcd/protocol.[ch].
* The local hosts listenning address and port is also resolved
* Added function silc_server_config_is_primary_route to check
whether primary router connection has been configured (a router
- configuration that we are initiating). If there is not, we
+ configuration that we are initiating). If there is not, we
will assume that there is only two routers in the SILC network
and we will use the incoming router connection as our primary
route. Affected files silcd/serverconfig.[ch], silcd/server.c.
* Removed the client's failure_callback handling with timeout
and handle it immediately when received.
- * The SKE library returned wrong type in SUCCESS and FAILURE
+ * The SKE library returned wrong type in SUCCESS and FAILURE
packets. They must be 32 bit MSB not 16 bit MSB.
Fri Apr 13 00:09:08 EEST 2001 Pekka Riikonen <priikone@poseidon.pspt.fi>
function is silc_[server/client]_packet_send_real to check
the situation.
- * Replaced the SIM paths from example config files to
+ * Replaced the SIM paths from example config files to
/usr/local/modules. Also, make install creates now
/usr/local/silc/logs directory to hold all the SILC server
logs.
Wed Apr 4 16:32:31 EEST 2001 Pekka Riikonen <priikone@poseidon.pspt.fi>
* Do not ask whether user wants to use the negotiated private key
- for private messages, just use it. Affected file is
+ for private messages, just use it. Affected file is
silc/local_command.c.
- * Added `send_enc_key' and `enc_key_len' fields to the
+ * Added `send_enc_key' and `enc_key_len' fields to the
SilcIDListData structure since they are needed in the re-key
phase. Affected file is silcd/idlist.[ch].
int64 of at least the xintXX size. If void * is less that 4
bytes uint32 * will be used. Defined bool as boolean.
- * Changed _ALL_ unsigned long and unsigned int to uint32,
+ * Changed _ALL_ unsigned long and unsigned int to uint32,
unsgined short to uint16 in the source tree.
* Fixed a fatal bug in silc_server_remove_clients_by_server. Do
This fixes some bugs with WHOIS, WHOWAS and IDENTIFY commands
and command replies.
- * All command reply functions in the server now calls the
+ * All command reply functions in the server now calls the
pending command callback even if error occured. This way the
error will be delivered to the client as well. Affected files
silcd/command.c and silcd/command_reply.c.
code and the protocol specs.
* A little fix to IDENTIFY command in the server. Search the
- client first by hash not nickname. Affected file is
+ client first by hash not nickname. Affected file is
silcd/command.c.
* Fixed the silc_client_close_connection to support closing
server's CMODE command. Affected file silcd/command.c.
* Added the following new functions into lib/silccore/silcauth.[ch]:
- silc_auth_get_method and silc_auth_get_data.
+ silc_auth_get_method and silc_auth_get_data.
* The server now saves the remote hosts public key to the
SilcIDListData pointer. Affected file silcd/protocol.c.
* The normal server now does not remove the channel entry from
the cache if the founder authentication data is set. It used
- to remove it if the founder was the last one on the channel on
+ to remove it if the founder was the last one on the channel on
the server and left the channel. The auth data is saved and
if the channel is re-joined later the old entry is used with
the old auth data. Affected files silcd/command_reply.c and
message to a channel with SILC_MESSAGE_FLAG_ACTION to indicate
some action. Affected file silc/local_command.[ch].
- * Changed channel_message and private_message client operations
+ * Changed channel_message and private_message client operations
to deliver the message flags to the application. Added also
the `flags' arguments to the silc_client_send_channel_message
and silc_client_send_private_message functions. Affected file
* Added `sockets' and `sockets_count' fields to the SilcClient
object. They hold the sockets of the listenning sockets in
- the client. Listenning sockets may be for example the key
+ the client. Listenning sockets may be for example the key
agreement server. Affected file lib/silcclient/client.[ch].
Added functions the silc_client_add_socket and the
silc_client_del_socket. They are exported to the application
* Added <cipher> and <hmac> argument to the CMODE_CHANGE notify
type to indicate the change of the current cipher and hmac
on the channel. Client can safely ignore the <cipher> argument
- (if it chooses to do so) since the CHANNEL_KEY packet will
+ (if it chooses to do so) since the CHANNEL_KEY packet will
force the channel key change anyway. The <hmac> argument is
important since the client is responsible of setting the new
HMAC and the hmac key into use.
client must be removed from all channels when receiving the
KILLED notify.
- Also, do not remove the client entry when giving the KILL
+ Also, do not remove the client entry when giving the KILL
command but when the KILLED notify is received.
* Removed silc_idlist_find_client_by_nickname from the server.
* Added silc_server_send_notify_ban to send the BAN notify
type between routers.
- * Chaned the silc_notify_payload_encode to support that if
+ * Chaned the silc_notify_payload_encode to support that if
argument is NULL it ignores and checks the next argument.
Affected file lib/silccore/silcnotify.c.
* Added new command SILC_COMMAND_BAN that can be used to manage
the ban list of the channel. Updated the protocol specs.
- * Removed the channel modes: the SILC_CMODE_BAN and the
+ * Removed the channel modes: the SILC_CMODE_BAN and the
SILC_CMODE_INVITE_LIST as they were a bit kludge to be included
in the CMODE command. The equivalent features are now available
using INVITE and BAN commands. Updated the protocol specs.
in the network about change in the current ban list. The notify
type is not used by the client.
- * Redefined parts of the SILC_NOTIFY_TYPE_INVITE command to
+ * Redefined parts of the SILC_NOTIFY_TYPE_INVITE command to
support the invite lists.
Thu Mar 22 22:52:23 EET 2001 Pekka Riikonen <priikone@poseidon.pspt.fi>
* Fixed various bugs in WHOIS and IDENTIFY command handling as
they were buggy because of the WHOWAS information.
- * Fixed local command MSG to handle the async resolving of
+ * Fixed local command MSG to handle the async resolving of
the remote client properly. It used to fail the first MSG.
Affected file silc/local_command.c.
about the changed user mode.
Implemented the notify handling in the server. Affected file is
- silcd/packet_receive.c. Added the function
+ silcd/packet_receive.c. Added the function
silc_server_send_notify_umode to the silcd/packet_send.[ch].
* Added new generic Channel Payload and deprecated the New Channel
like _send_private_message_key, _relay_notify etc. Affected
file is silcd/packet_send.[ch].
- Removed silc_server_send_key_agreement,
+ Removed silc_server_send_key_agreement,
silc_server_send_private_message_key and
silc_server_packet_relay_notify functions from the file
silcd/packet_send.[ch].
library in the file lib/silcclient/command.c.
* Changed the silc_server_send_notify_on_channels's `sender'
- argument from SilcSocketConnection to SilcClientEntry to
+ argument from SilcSocketConnection to SilcClientEntry to
check the sender as entry and not as connection object and not
to send to the client provided as argument. The affected file
is silcd/packet_send.[ch].
it to the client. Affected file silcd/packet_send.[ch].
Added also silc_server_packet_process_relay_notify to check
- whereto relay the notify. Affected file is
+ whereto relay the notify. Affected file is
silcd/packet_receive.[ch].
* Implemented the KILL command to the server.
Tue Mar 13 13:26:18 EET 2001 Pekka Riikonen <priikone@poseidon.pspt.fi>
* Added support to the server to enforce that commands are not
- executed more than once in 2 seconds. If server receives
+ executed more than once in 2 seconds. If server receives
commands from client more frequently, timeout is registered
to process the commands. Affected file silcd/command.c.
Added new function silc_server_command_process_timeout.
* Removed error printing from the WHOIS and IDENTIFY commands.
If error occurs then it is ignored silently in the client library.
- The application, however, may map the received error to
+ The application, however, may map the received error to
human readable error string. The application currently maps
the NO_SUCH_NICKNAME error to string.
* Made the command status message public to the application. Moved
- them from lib/silcclient/command_reply.c to
+ them from lib/silcclient/command_reply.c to
lib/silcclient/command_reply.h. The application can map the
received command status to the string with the
silc_client_command_status_message function.
* Added SilcChannelPrivateKey argument to the function
silc_client_send_channel_message so that application can choose
to use specific private ke if it wants to. If it is not provided,
- the normal channel key is used, unless private keys are set.
- In this case the first (key that was added first) is used
+ the normal channel key is used, unless private keys are set.
+ In this case the first (key that was added first) is used
as the encryption key.
* Implemented the support for channel private key handling.
* Removed the statement that server (or router) must send USERS
command reply when joining to the channel so that the client
- knows who are on the channel. Instead, the client list and
+ knows who are on the channel. Instead, the client list and
client's mode list is now sent in the JOIN command reply to the
client who joined channel. This is better solution.
lib/silccore/silcchannel.[ch].
* Moved the channel message etc, check from silc_packet_decrypt
- to applications. The library calls now a generic
+ to applications. The library calls now a generic
SilcPacketCheckDecrypt callback which is to return TRUE or FALSE
when the packet is either normal or special. This was done to
allow more wide range of checking that was not allowed when
file: lib/silcutil/silcbuffmt.c.
* Changed to auto-reconnect to check whether the remote host is
- router and register the re-connect timeout if it is. It used
+ router and register the re-connect timeout if it is. It used
to check that whether we are normal server, but router must do
auto-reconnect with another router as well. Affected file
silcd/server.c.
* Redefined the mandatory HMAC algorithms and added new algorithms.
Added hmac-sha1-96 and hmac-md5-96 which are normal hmac-sha1
- and hmac-md5 truncated to 96 bits. The mandatory is now
+ and hmac-md5 truncated to 96 bits. The mandatory is now
hmac-sha1-96. Rest are optional (including the one that used
to be mandatory). Rationale for this is that the truncated HMAC
length is sufficient from security point of view and can actually
another remote client. The key material is passed to the
application after the protocol is over.
- * Created client_keyagr.c to include all the key agreement
+ * Created client_keyagr.c to include all the key agreement
routines.
* Added macro SILC_TASK_CALLBACK_GLOBAL which is equal to the
files: lib/silccrypt/silccipher.[ch].
* Implemented silc silc_client_add_private_message_key,
- silc_client_add_private_message_key_ske,
+ silc_client_add_private_message_key_ske,
silc_client_del_private_message_key,
silc_client_list_private_message_keys and
silc_client_free_private_message_keys functions in the
code accordingly. The default key length is now 256 bits.
* Fixed SKE key distribution function silc_ske_process_key_material
- when the key length is more than 128 bits. The default key
+ when the key length is more than 128 bits. The default key
length in SILC is now 256 bits.
* Added new command status type: SILC_STATUS_ERR_UNKOWN_ALGORITHM
* Also deprecated the following packet types: REPLACE_ID,
NEW_CHANNEL_USER and REMOVE_CHANNEL_USER packet types.
-
+
* Added list support for Notify packet in server.
* Added silc_server_send_notify_channel_change to send the
* Added silc_server_send_notify_leave to send LEAVE notify type.
Deprecates the function silc_server_send_remove_channel_user.
- * Added silc_server_send_notify_cmode and
+ * Added silc_server_send_notify_cmode and
silc_server_send_notify_cumode to send CMODE and CUMODE notify
types. Deprecates the silc_server_send_set_mode function.
* Added SERVER_SIGNOFF notify type to indicate that server has
- quit. This means that all clients on the channel from that
+ quit. This means that all clients on the channel from that
server will drop. This can be also used when netsplit happens.
Deprecated REMOVE_ID packet type since it is not needed anymore
SIGNOFF notify type.
* Employed the PKCS #1. It is the mandatory way to do RSA in the
- SILC protocol from this day on. Changed the protocol
+ SILC protocol from this day on. Changed the protocol
specification as well.
* Added silc_server_send_notify_topic_set to send TOPIC_SET
* The JOIN notify type now takes one extra argument <Channel ID>.
The packet used to be destined to the channel but now the
- JOIN type may be sent as list thus it is impossible to
+ JOIN type may be sent as list thus it is impossible to
destine it to any specific channel. By adding this argument
it is again possible.
* Created Global RNG API which is global RNG that application can
initialize. After initializing, any routine anywhere in the
code (including library) can use RNG without allocating a new
- RNG object. This was done to allow this sort of use of the
+ RNG object. This was done to allow this sort of use of the
RNG in code that has no chance to allocate RNG object. All
applications currently allocate this and many routines in the
library use this. Affected file lib/silccrypt/silcrng.[ch].
* Added silc_pkcs_encrypt, silc_pkcs_decrypt, silc_pkcs_sign,
silc_pkcs_verify and silc_pkcs_sign_with_hash and
- silc_pkcs_verify_with_hash functions into the file
+ silc_pkcs_verify_with_hash functions into the file
lib/silccrypt/silcpkcs.[ch].
Mon Feb 19 19:59:28 EET 2001 Pekka Riikonen <priikone@poseidon.pspt.fi>
- * The client entry's userinfo pointer must be always valid.
+ * The client entry's userinfo pointer must be always valid.
Otherwise the [<unknown>] bug will surface beacuse the WHOIS
will fail since it requires the userinfo. Now, the userinfo
is allocated as "" if actual userinfo does not exist. Actually,
All this applies for client library code as well. Similar
changes were made there as well for the pending commands.
- In the client, the application must now allocate the
+ In the client, the application must now allocate the
SilcClientCommandContext with the silc_client_command_alloc
function.
* Added reference counter to the SilcServerCommandContext. Added
- function silc_server_command_alloc and silc_server_command_dup
+ function silc_server_command_alloc and silc_server_command_dup
functions.
Same type of functions added to the client library for the same
purpose as well.
- * Removed the cmd_ident from IDListData away since it is now
+ * Removed the cmd_ident from IDListData away since it is now
global for all connections. It is the command identifier used
in command sending and with pending commands. The affected file
is silcd/idlist.h.
* Added new functions into the silcd/packet_receive.[ch]:
silc_server_new_id_list, silc_server_new_channel_list and
- silc_server_new_channel_user_list to handle the incoming
+ silc_server_new_channel_user_list to handle the incoming
NEW_ID_LIST, NEW_CHANNEL_LIST and NEW_CHANNEL_USER_LIST packets.
* Added support of changing Channel ID in the function
Thu Feb 15 20:07:37 EET 2001 Pekka Riikonen <priikone@poseidon.pspt.fi>
* Added new packet type SILC_PACKET_HEARTBEAT that is used to
- send keepalive packets. The packet can be sent by clients,
+ send keepalive packets. The packet can be sent by clients,
servers and routers.
Added function silc_socket_set_heartbeat into the file
lib/silccore/silcsockconn.[ch] to set the heartbeat timeout.
- If not set, the heartbeat is not performed. The actual
+ If not set, the heartbeat is not performed. The actual
heartbeat is implemented in the low level socket connection
library. However, application is responsible of actually
sending the packet.
reverse order. For this reason, MAC check failed. Now, this
is fixed by not sending the Channel Key packet immediately but
putting it to queue. However, this is more fundamental problem:
- packets that are in queue should actually not be encrypted
+ packets that are in queue should actually not be encrypted
because packets that are sent immediately gets encrypted
actually with wrong IV (and thus MAC check fails). So, packets
that are in queue should be encrypted when they are sent to
whether the requested user and group actually exists.
* Added sanity check to SKE's silc_ske_responder_finish to check
- that the public and private key actually is valid.
+ that the public and private key actually is valid.
* Invalidate the client's nickname when receiving Replace ID
packet and the Client ID is being replaced. This means that the
* Fixed some places where client was added to the IDList. The
rule of thumb is following (in order to get everything right):
- If the client is directly connected local client then the
- `connection' argument must be set and `router' argument must be
+ If the client is directly connected local client then the
+ `connection' argument must be set and `router' argument must be
NULL to silc_idlist_add_client function. If the client is not
directly connected client then the `router' argument must
bet set and the `connection' argument must be NULL to the
Sat Feb 10 21:13:45 EET 2001 Pekka Riikonen <priikone@poseidon.pspt.fi>
- * A big code auditing weekend happening. Auditing code for
+ * A big code auditing weekend happening. Auditing code for
obvious mistakes, bugs and errors. Also, removing any code
that is obsolete.
o The buffer formatting routines now check that the destination
buffer really has enough space to add the data. This applies for
- both buffer formatting and unformatting
+ both buffer formatting and unformatting
(lib/silcutil/silcbuffmt.[ch]). Also, the entire buffer
- unformatting was changed to accomodate following rules:
+ unformatting was changed to accomodate following rules:
XXX_*STRING_ALLOC will allocate space for the data into the pointer
- sent to the function while XXX_*STRING will not allocate or copy
+ sent to the function while XXX_*STRING will not allocate or copy
the data into the buffer. Instead it sets the pointer from the
buffer into the pointer sent as argument (XXX_*STRING used to
require that the pointer must be allocated already). This change
channels and clients channel modes) to all routers in the
network. Updated the protocol specification accordingly.
- Added functions into silcd/packet_send.c and
- silcd/packet_receive.c: silc_server_send_set_mode,
+ Added functions into silcd/packet_send.c and
+ silcd/packet_receive.c: silc_server_send_set_mode,
silc_server_set_mode.
Added new files silcmode.[ch] into lib/silccore that implements
Sat Feb 3 15:44:54 EET 2001 Pekka Riikonen <priikone@poseidon.pspt.fi>
- * Oops, a little mistake in server's connection authentication
+ * Oops, a little mistake in server's connection authentication
protocol. The protocol is not ended with FAILURE but with
SUCCESS if the authentication is Ok. :) Affected file is
silcd/protocol.c.
the local clients on the channel. After the changing nickname
in router environment snhould work and the [<unknown>] nickname
should appear no more.
-
+
The silc_server_replace_id function that receives the Replace ID
payload now sends the NICK_CHANGE notify type also in the file
silcd/packet_receive.c
* Changed WHOIS and IDENTIFY command to support the maximum amount
- of arguments defined in protocol specs (3328 arguments). This
+ of arguments defined in protocol specs (3328 arguments). This
fixed a bug that caused problems when there were more than three
users on a channel.
* Fixed some minor bugs in client when sending WHOIS command. The
arguments was in wrong order.
- * Removed statis function add_to_channel from server in
+ * Removed statis function add_to_channel from server in
silcd/command.c that was previously used with the joining but
is obsolete now.
Changed the function silc_client_command_pending and
silc_client_command_pending_del and added new function
- silc_client_command_pending_check. Removed the
+ silc_client_command_pending_check. Removed the
SILC_CLIENT_CMD_REPLY_EXEC, and SILC_CLIENT_PENDING_COMMAND_CHECK
macros.
global list who is joining and JOINs it to the channel. This is
for normal server, that is.
- Changed silc_server_send_notify_on_channel,
- silc_server_packet_relay_to_channel and
+ Changed silc_server_send_notify_on_channel,
+ silc_server_packet_relay_to_channel and
silc_server_packet_send_to_channel check if we are normal server
and client has router set (ie. global client) do not send the
message to that client, as it is already routed to our router.
- * Implemented LEAVE notify type handling in silc_server_notify
+ * Implemented LEAVE notify type handling in silc_server_notify
function.
* Tested LEAVE command in router environment successfully. Tested
client.[ch] into client library.
* Changed JOIN command reply to send information whether the channel
- was created or not (is existing already) and the channel key
+ was created or not (is existing already) and the channel key
payload. Changed protocol specs accordingly.
* Fixed bugs in WHOIS and IDENTIFY command reply sending when
* Fixed a bug in Client library. IDENTIFY and WHOIS reply functions
now correctly save the received data.
- * silc_server_free_sock_user_data now notifies routers in the
+ * silc_server_free_sock_user_data now notifies routers in the
network about entities leaving the network.
At the same time implemented functions silc_server_remove_id
IDENTIFY command now also checks that client->nickname must be
valid. If it is not if will request the data from the server who
- owns the client. Added new function
+ owns the client. Added new function
silc_server_command_identify_check.
* Added silc_command_set_command into lib/silccore/silcommand.[ch]
Sat Dec 16 17:39:54 EET 2000 Pekka Riikonen <priikone@poseidon.pspt.fi>
* Implemented version string checking to both client and server.
- The check is incomplete currently due to the abnormal version
+ The check is incomplete currently due to the abnormal version
strings used in development version of SILC.
* Changed all command functions in server to use the new
support binary data as ID Cache data. Changed code to support
binary data in lib/silccore/idcache.c.
- * Renamed silc_server_packet_relay_command_reply to
+ * Renamed silc_server_packet_relay_command_reply to
silc_server_command_reply as it is normal packet receiving
function. Rewrote the function to accept command replys for
servers and not only for clients.
* Fixed the JOIN command to really work in router environment. If the
channel is created it is always created by the router. Router is
also responsible of making the initial joining to the channel,
- sending JOIN notify to the sending server and distributing
+ sending JOIN notify to the sending server and distributing
NEW_CHANNEL and NEW_CHANNEL_USER packets. Hence, if the channel
does not exist server doesn't do anything else but forward the
command to the router which performs everything.
* The channel key is now distributed to the local client as soon
as it is received from the router (in router environment) so that
- no other packet may be sent for the channel until client has
+ no other packet may be sent for the channel until client has
received the key.
* silc_server_remove_channel_user now broadcasts the received
silc_[client/server]_packet_parse_type the packet context must
be duplicated by calling silc_packet_context_dup. Otherwise it
gets free'd after silc_[client/server]_packet_parse_type returns.
- Also, one must remember that if packet is duplicated then its
+ Also, one must remember that if packet is duplicated then its
reference count must be decresed by calling the free function as
many times as it was duplicated.
Thu Nov 2 16:28:01 EET 2000 Pekka Riikonen <priikone@poseidon.pspt.fi>
- * Changed client's channel table to SilcList and changed code
+ * Changed client's channel table to SilcList and changed code
accordingly. Also changed SilcChannelClientEntry to include back-
pointer to the channel so that client entry can use that structure
as list as well and we have fast cross-reference to the channel.
* NAMES command reply now shows users mode with the nickname when
joining to channel.
- * Moved silc_client_ch[u]mode[_char] functions from
+ * Moved silc_client_ch[u]mode[_char] functions from
silc/clientutil.[ch] to lib/silcclient/client.[ch]. Though, that
place sucks, they are utility functions and should be in some
other file.
already defined as a list. It is not suitable to add just some
context to the list (in TRQ, the context is the list actually).
- So, I defined SilcDList that can be used for the purpose where
+ So, I defined SilcDList that can be used for the purpose where
predefined list structure does not exit. This can be used as
such list. Now some context just can be added to the SilcDList.
Currently this list is not used in the SILC just yet, though there
Also fixed some annoying warning messages that the original TRQ
code generated. Also minor changes to TRQ's Makefile.in.
- * Added support for querying by Client ID to both WHOIS and
+ * Added support for querying by Client ID to both WHOIS and
IDENTIFY commands into server, as required by the protocol.
* Removed method function pointers from SilcBuffer structure. They
no good reason. This change also made silc_buffer_alloc and
silc_buffer_free functions inline functions.
- * Disabled command flooding detection support until it's fixed so
+ * Disabled command flooding detection support until it's fixed so
that it accepts commands in but does not execute them more than once
in two seconds.
that the message is sent only once per client.
* Moved silc_log_format (from lib/silcutil/silclog.[ch] into
- lib/silcutil/silcutil.[ch] as silc_format function. The new
+ lib/silcutil/silcutil.[ch] as silc_format function. The new
function is generic and is used by server as well, not only by
the logging routines.
does not reside in the SKE library. The function checks the version
string remote end sent.
- * Added back pointers (to opaque context and to SilcSocketConnection)
+ * Added back pointers (to opaque context and to SilcSocketConnection)
into SilcPacketContext structure into lib/silccore/silcpacket.h.
* Added silc_packet_context_dup into lib/silccore/silcpacket.[ch] to
to application (otherwise application doesn't know that it is for
channel (library gets it from packet's Destination ID)).
- * Added silc_client_remove_from_channels into client library to
- remove a client from all channels it has joined to. Used when
+ * Added silc_client_remove_from_channels into client library to
+ remove a client from all channels it has joined to. Used when
received SIGNOFF notify from server. Added also new function
silc_client_replace_from_channels to replace old ID entry with
new ID entry on all channels. Used when received NICK_CHANGE
notify from server.
- * Fixed ID Cache list handling in silc_idlist_get_client in
+ * Fixed ID Cache list handling in silc_idlist_get_client in
lib/silcclient/idlist.c. Also, added silc_idlist_get_client_by_id
to get (or query) client by ID.
Mon Oct 9 20:57:02 EEST 2000 Pekka Riikonen <priikone@poseidon.pspt.fi>
- * Changed SILC_COMMAND_IDENTIFY in protocol specification to
+ * Changed SILC_COMMAND_IDENTIFY in protocol specification to
accept searching by Client ID as well.
* Added support for LEAVE and SIGNOFF notify types in client library.
* Added into lib/silccore/silcbufutil.[ch] new function;
silc_buffer_realloc.
- * Moved generic packet sending/encryption functions to
+ * Moved generic packet sending/encryption functions to
lib/silccore/silcpacket.[ch] from client and server. Some
rewriting of the functions.
Tue Jul 11 20:27:26 EEST 2000 Pekka Riikonen <priikone@poseidon.pspt.fi>
- * Rewrote major parts of the ID cache system. Don't know
+ * Rewrote major parts of the ID cache system. Don't know
whether it is better now or not but at least the API is more
cleaner now.
* Added public key verification process into client's protocol.c.
The client now verifies the public key from user and saves
- it into ~./silc/serverkeys/ directory.
+ it into ~./silc/serverkeys/ directory.
Added into: clientutil.[ch]: silc_client_verify_server_key.
* Removed wrong way of sending command status messages from
server to client in server's command.c. The old way violated
- protocol specification.
+ protocol specification.
Changes to silccore/silccommand.[ch]: removed
silc_command_encode_status_payload -> not needed anymore,
* Implemented LEAVE command on client and server.
- * Previously deprecated SILC_PACKET_FORWARDED flag is now in use
+ * Previously deprecated SILC_PACKET_FORWARDED flag is now in use
again. This change was made to the protocol as well. Server
should not violate the protocol specification anymore.