Fixed CUMODE mode->mode character conversion buffer overflow.
[silc.git] / CHANGES
diff --git a/CHANGES b/CHANGES
index f147c67d341bcef5a5cb09682ac644b74dda732e..c0b18f0a43a028016ae85a4f6689334dcb0270f0 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,663 @@
+Thu Jun 27 20:07:27 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Buffer overflow with CUMODE command's mode->mode character
+         conversion.  Reported by Ville Räsänen.  Affected file
+         lib/silcutil/silcutil.c.
+
+Thu Jun 27 16:54:33 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Allow heartbeat packets to go disabled connections anyway.
+         Affected files silcd/server.c and silcd/packet_send.c.
+
+       * Do not broadcast New Channel packets with List flag set
+         in the packet to backup routers.  The router must check
+         for the correctness of the packets before sending them.
+         It is possible that router will have enforce Channel ID
+         change and this would cause desync in the backup router.
+         Affected file silcd/packet_receive.c.
+
+       * Remove SILC_PACKET_FLAG_LIST from the temp packets that
+         are handled in list parsing.  They are not list packets
+         anymore.  Affected file silcd/packet_receive.c.
+
+Thu Jun 27 11:27:07 CEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Stop waiting for backup router through the timeout, not
+         directly after backup router has arrived.  Affected file
+         silcd/server.c.
+
+       * Do not re-create channel keys and send them when removing
+         clients in server shutdown.  Affected files are
+         silcd/server_internal.h and silcd/server_util.c.
+
+       * Notify distribution to backup routers was missing from
+         the silc_server_send_notify_dest function which caused
+         desyncing problems with backup router.  Affected file is
+         silcd/packet_send.c.
+
+       * The client's channel removing was working wrong on
+         backup router.  It assumed that it doesn't know global
+         information but backup router does know.  For this reason
+         it could remove channel when it wasn't supposed to do that.
+         Affected file silcd/server.c and silcd/server_util.c.
+
+Wed Jun 26 15:14:12 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Stop for a couple seconds after badkup router has become
+         primary router.  Affected file silcd/server.c.
+
+       * Added silc_server_remove_servers_by_server, which is used
+         to remove servers originated from some other server.  Also
+         clients of those servers can be removed too.  Affected file
+         silcd/server_util.[ch].
+
+       * When removing clients after a server has signed of remove
+         also all servers behind that server (unless they are known
+         to be available locally), and send SERVER_SIGNOFF for each
+         of the server separately.  Also the signed off clients are
+         sent now separately per signed off server.  The affected files
+         are silcd/server.c and silcd/server_util.[ch].
+
+       * All servers added with silc_idlist_add_server must always
+         have both "router" and "connection" pointers set.  Otherwise,
+         bad server entries may be left around in the cache.
+         Affected file silcd/command_reply.c.
+
+       * Do not create the channel key in NEW_CHANNEL packet
+         processing if the channel is empty.  Affected file
+         silcd/packet_receive.c.
+
+       * Completed backup router support for standalone routers.
+         Supports also servers in the cell that do not use the backup
+         at all.
+
+Wed Jun 26 10:38:11 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed a bug in silc_string_regexify which did not add '^'
+         at the start of each string, and thus the matching was
+         not explicit.  For example ban list iikone@*!*@* would
+         match also "priikone", which is wrong, it would have to be
+         *iikone@*!*@* to match also "priikone".  Affected
+         file lib/silcutil/unix/silcunixutil.c.
+
+Tue Jun 25 18:47:39 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Enable all local server connections before updating client
+         caches when we've become backup router.  Otherwise, signoff
+         packets may not reach the clients.  Affected files are
+         silcd/server.c and silcd/server_util.[ch].
+
+       * Fixed a bug in version string parsing which could crash
+         the program with specially formatted version string.
+         Bug reported and patch provided by Ville Räsänen.  Affected
+         file lib/silcutil/silcutil.c.
+
+       * Handle the disconnection immediately when DISCONNECT
+         packet is received in server.  Affected file silcd/server.c.
+
+       * Primary router now waits a short time (10 seconds) for
+         backup router connection before accepting any other
+         connection (except local).  Affected file silcd/server.c,
+         serverconfig.[ch].
+
+       * Fixed a crash in client libary in NICK_CHANGE notify when
+         NICK_CHANGE arrived for client entry we are resolving
+         currently.  Affected file lib/silcclient/client_notify.c.
+
+       * Call the sconn->callback completion even if error had
+         occurred.  Start reconnecting always if connection to
+         primary router fails during backup router protocol.
+         Affected files silcd/server.c and server_backup.c.
+
+Mon Jun 24 17:47:52 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Added functions silc_server_send_opers and
+         silc_server_send_opers_notify to send packets stricly
+         to operators.  Added macro SILC_SERVER_SEND_OPERS macro
+         to send variable argument notify to operators.
+         Affected files silcd/packet_send.[ch] and silcd/server.h.
+
+       * Removed UMODE rights checking with UMODE_CHANGE notify.
+         Affected file silcd/packet_receive.c.
+
+       * Server/router operator now receives notify when network
+         switches to backup router and when it resumes the use of
+         primary router.  Affected file silcd/server.c and
+         silcd/server_backup.c.
+
+       * Fixed the updating of client information after backup
+         resuming protocol is over; update all except local clients
+         to the new primary router.  The affected file is
+         silcd/server_util.c.
+
+       * Added support for closing active connections in rehash
+         that were unconfigured by the user.  Supports currently
+         closing server and router connections.  Affected file
+         silcd/server.c.
+
+       * Rewrote some SILC_LOG_DEBUG's in silcd/server_backup.c.
+
+Sun Jun 23 17:32:31 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Don't do SILC_STRING_LANGUAGE encoding if the outbuffer
+         is NULL since seems that on some platforms NULL is allowed
+         and on some it's not.  Fallback encoding is used instead.
+         Affected file lib/silcutil/silcstrutil.c.
+
+       * Fixed statistics updating for incoming server connection
+         which could cause problems when re-connecting.  Affected
+         file silcd/server.c.
+
+       * Preliminary backup router support for standalone router
+         added.  Affected files in silcd/.
+
+       * Mark server connections in backup router disabled before
+         and after backup protocol.  Affected file is
+         silcd/server_backup.c.
+
+       * Added support for reconnecting to remote server connection
+         even if the protocol fails, and if the configuration wants
+         us to keep trying to connect anyway.
+
+         Server connection is not allowed to backup router if
+         backup router does not have connection to primary router yet.
+
+         Affected file is silcd/server.c.
+
+Sat Jun 22 21:34:59 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Added silc_client_udpate_server function to update changed
+         server info.  Affected file lib/silcclient/idlist.[ch].
+
+       * Added check for server entries that are being resolved when
+         notify is received.  If being resolved, handle the received
+         notify only after it's resolved so that all notifys are
+         handled in same order as received from the server.
+
+         Added similar resolver check to channel entries.  Every
+         notify that cause resolving of any information that affects
+         channel entry marks the channel entry in waiting state.
+         After whatever resolving is over the waiters are signalled
+         and only then the notifys are handled in the same order
+         as delivered from the server.
+
+         Affected files are lib/silcclient/idlist.[ch], and
+         client_notify.c.
+
+       * Fixed KILLED notify handling in normal server.  Affected
+         file silcd/packet_receive.c.
+
+       * Added SILC_IDLIST_STATUS_LOCAL which indicates that entry
+         is locally connected, or was locally connected (but may
+         be detached and connection is not active).  Added also
+         SILC_IS_LOCAL for checking this status.  Affected files
+         silcd/idlist.h, silcd/packet_receive.c, silcd/server_util.c,
+         silcd/server.c and silcd/server_internal.h.
+
+Sat Jun 22 17:06:58 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Don't send or handle TOPIC_SET if topic is already set and
+         is same as being set.  Affected files silcd/command.c and
+         silcd/packet_receive.c.
+
+       * Fixed CMODE change rights checking to work correctly when
+         removing modes by operator.  Affected file is
+         silcd/server_util.c.
+
+       * Fixed some handling with New Channel packet in router and
+         fixed some CMODE_CHANGE notify handling in server and router.
+         Affected file is silcd/packet_receive.c.
+
+       * Changed "disconnect" client operation to include the
+         reason of the disconnection and optional disconnection
+         message.  Affected file lib/silcclient/silcclient.h.
+
+       * Made the compilation of lib/contrib/ stuff conditional.
+         Affected files configure.in.pre, lib/contrib/Makefile.am.
+
+Sat Jun 22 12:49:21 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * All CMODE_CHANGE and CUMODE_CHANGE notifys are now sent back
+         to the sender of the notify too, to avoid situation where two
+         notifys are in the network at the same time going to oppsite
+         directions.  Affected file silcd/packet_receice.c.
+
+Fri Jun 21 10:00:32 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Delete the client from channel even if the cilent->id is
+         NULL.  It was possible that client was deleted without
+         removing from channels (theoretically at least).  Affected
+         file silcd/server.c and silcd/server_util.c.
+
+       * Free the client data too when resuming is not successful.
+         Affected file silcd/packet_receive.c.
+
+       * Merged some code from c0ffee's silc-plugin.  Affected files
+         irssi/src/silc/core/silc-channels.c and silc-expandos.c.
+
+       * Added SILC_PRIMARY_ROUTE and SILC_BROADXAST macros to
+         silcd/server_internal.h.  SILC_PRIMARY_ROUTE Returns pointer
+         to the primary router connection, the other one returns
+         TRUE if packet must be broadcasted to network.
+
+       * All notifys that are destined to primary router (to network)
+         are now automatically sent to backup routers even if the
+         router is standalone (and has backup router).  Affected files
+         in silcd/.
+
+       * Added --without-irssi and --without-silcd configuration
+         options for disabling the compilation of these applications.
+         Affected file configure.in.pre and prepare.
+
+Thu Jun 20 13:48:15 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Implemented SILC_STRING_BMP and SILC_STRING_UNIVERSAL for
+         UTF-8 encoding and decoding.  Added also new encodings
+         SILC_STRING_BMP_LSB and SILC_STRING_UNIVERSAL_LSB.
+
+         Added also SILC_STRING_LANGUAGE which is language and charset
+         specific encoder and decoer for those platforms that support
+         iconv().  It can convert the UTF-8 to and from the locale
+         specific character set.
+
+         Affected file lib/silcutil/silcstrutil.[ch].
+
+       * Added macro SILC_NOT_IMPLEMENTED to lib/silcutil/silclog.h.
+
+       * Added function silc_get_command_name to the file
+         lib/silcutil/silcutil.[ch].
+
+       * Improved the server debug output a bit.  Affected files are
+         in silcd/.
+
+Wed Jun 19 17:46:31 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Save the channel passphrase when received succesful JOIN
+         command reply from router, on normal server.  Otherwise
+         joinig +a channels from normal server is not possible.
+         Affected file silcd/command.c.
+
+       * Fixed a bug in TOPIC_SET notify handling.  The notifier
+         may be other than client too, like server or channel.
+         It expected it to always be only client and ignored the
+         notify.  Affected file silcd/packet_recieve.c.
+
+       * 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
+         channel.
+
+         Router announces stuff only after server reannounces channel
+         after CHANNEL_CHANGE notify.
+
+         These fixes optimizes the announcing procedure, and perhaps
+         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, 
+         instead of only to those that was on same channel as the
+         signing off clients.  Affected file silcd/server_util.c.
+
+       * Added -D option to server.  It can be used to give debug
+         level.  The levels are from 0 - 99, and are predefined for
+         smooth server debugging.  (see silcd.c for the predefined
+         levels).  Affected file silcd/server.c.
+
+Wed Jun 19 16:01:51 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed a bug in Irssi SILC client to close the connection
+         properly when disconnecting from server.  Affected file
+         irssi/src/silc/core/client_ops.c.
+
+Tue Jun 18 17:14:52 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * When authenticating as founder during JOIN command, check
+         that the one authenticating becomes the only founder on the
+         channel.  Affected file silcd/command.c.
+
+       * Better checking for founder mode setting when CUMODE_CHANGE
+         notify is received.  Affected file silcd/packet_receive.c.
+
+       * Close all connections when shutting down the server by sending
+         DISCONNECT packet.  Close all listeners too when shutting
+         down the server.  Affected file silcd/server.c.
+
+       * Handle DISCONNECT packet correctly in client library by
+         calling the "disconnect" client operation.  Affected file
+         lib/silcclient/client.c.
+
+       * Handle local errors correctly during resuming.  Affected
+         file lib/silcclient/client.c.
+
+Tue Jun 18 10:26:27 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * The log file is not dupped internally anymore in
+         lib/silcutil/silclog.c.  Fixed memory leaks too.
+
+       * The scheduler now dispatches all pending timeout tasks
+         when it is uninitialized with silc_schedule_uninit.
+         Affected file lib/silcutil/silcschedule.c.
+
+Mon Jun 17 21:30:55 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Added --enable-stack-trace option to configure.  Added
+         memory allocation stack trace support.  Added files
+         lib/silcutil/stacktrace.[ch].  Affected files are
+         lib/silcutil/silcmemory.[ch].
+
+       * Fixed memory leaks from libraries and server.  Affected
+         files around the tree.
+
+       * Reverted back a fix made to CUMODE which broke it.
+         Affected file silcd/command.c.
+
+Sun Jun 16 11:49:45 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Added SILC_MESSAGE_FLAG_UTF8 to the protocol specs and the
+         core library, and implemented it.  All textual messages SHOULD
+         use this flag and the message MUST be UTF-8 encoded.
+         All text messages sent by Irssi SILC client are now UTF-8
+         encoded (regardless whether the terminal supports UTF-8 or not).
+         Affected files are lib/silccore/silcchannel.h,
+         irssi/src/silc/core/silc-servers.c, silc-channels.c and
+         client_ops.c.
+
+Sat Jun 15 18:23:39 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Added lots of new statistics updating that was missing from
+         the server and router code.  Affected files in silcd/.
+
+       * Sending SIGUSR1 signal to server now dumps the current
+         server statistics into /tmp directory.  Affected file is
+         silcd/silcd.c.
+
+       * ROBODoc documented the lib/silccrypt/silchash.h.  Improved
+         the SILC Hash Interface also.  Added new functions
+         silc_hash_get_name, silc_hash_init, silc_hash_update and
+         silc_hash_final.  Affected file lib/silccrypt/silchash.c.
+
+Sat Jun 15 12:09:14 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Added some better info printing for client during connecting.
+         Affected file silcd/server_util.c.
+
+       * Implemented the SILC_CHANNEL_UMODE_QUIET mode that can be used
+         to silence a user on a channel.  Affected files are
+         lib/silcclient/client_channel.c, irssi/src/silc/core/client_ops.c,
+         irssi/src/fe-common/silc/module-formats.[ch], silcd/command.c
+         and silcd/packet_receive.c.
+
+       * Fixed a fatal bug in handling of malformed command payload.
+         Affected file silcd/command.c.
+
+       * Fixed a double free when announcing channel users to router.
+         Affected file silcd/server.c.
+
+       * After successful authentication to channel founder mode, check
+         that there isn't anyone else with founder mode on the channel.
+         The one that authenticated will become founder and anyone
+         else is demoted.  Affected file silcd/command.c.
+
+       * Added error printing of any error that has occurred during
+         any command in client library.  Affected file is
+         irssi/src/silc/core/client_ops.c.
+
+       * Removed some error printing from the client library and left
+         it for the application to worry (from the error status it
+         receives in 'command' client operation.  Affected file is
+         lib/silcclient/command.c.
+
+Fri Jun 14 22:59:02 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Added new status types KEY_AGREEMENT_ALREADY_STARTED and
+         KEY_AGREEMENT_SELF_DENIED to lib/silcclient/silcclient.h.
+         Starting key agreement with itself is denied.  Affected file
+         is lib/silcclient/client_keyagr.c.
+
+       * Fixed some error checkings from the SFTP library which caused
+         misbehaviour.  Affected files are lib/silcsftp/sftp_client.c
+         and lib/silcsftp/sftp_util.c.
+
+       * Added new "debug" and "debug_string" settings to Irssi SILC
+         client which can be used to print runtime debugging on the
+         Irssi's screen.  Available when compiled with --enable-debug
+         option.  Affected file irssi/src/silc/core/silc-core.c.
+
+Tue Jun 11 16:36:02 CEST 2002 Johnny Mnemonic <johnny@themnemonic.org>
+
+       * Fixed a missing variadic parameter in a function call that
+         caused server crash when a non-allowed connection arrived.
+         Reported by Richard Becker.  Affected file silcd/server.c.
+
+Mon Jun 10 16:29:42 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Added WATCH list sending to backup routers from router.
+         The WATCH command is sent by the router to the backup
+         router.  Affected file silcd/command.c.
+
+       * Mark the backup_router flag for RouterConnection entry
+         if the backup router stuff is defined in the config file.
+         Affected file silcd/serverconfig.c.
+
+       * Fixed some backup data sending around the code to work better
+         if the router is standalone router.  Not all places were fixed.
+         Affected file silcd/packet_receive.c, silcd/packet_send.c,
+         silcd/server.c.
+
+       * Fixed the router connecting when connecting to multiple
+         routers.  It ignored every other router except the first
+         one.  Affected file silcd/server.c.
+
+Mon Jun 10 09:28:21 CEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Made the private key generation after expiration optional.
+         If not created after expiration the old key will re-expire
+         at a later time (and thus key pair is not necessary to
+         change).  Affected file irssi/src/silc/core/clientutil.c.
+
+Sun Jun  9 18:58:25 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * The length arguments in bind() and connect() were wrong
+         and fixed now to used SIZEOF_SOCKADDR in the
+         lib/silcutil/unix/silcunixutil.c.
+
+Tue Jun  4 18:36:05 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed detach timeout handling to use Client ID and not
+         the actual client entry which may be freed in the callback.
+         Affected file silcd/command.c.
+
+Thu May 30 15:53:45 CEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Merged c0ffee's multiple interface support patch.
+         Affected files in silcd/.
+
+Wed May 29 18:08:15 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Cleanup keys properly.  Affected file is
+         irssi/src/silc/core/clientutil.c.
+
+Tue May 28 20:11:41 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Display the user mode on the status bar.  Affected file
+         irssi/src/silc/core/silc-expandos.c.
+
+Tue May 28 13:56:26 CEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * If private message key is not set, but the flag is set in
+         the packet, ignore the packet since it cannot be decrypted.
+         Affected file lib/silcclient/client_prvmsg.c.
+
+Thu May 23 12:00:14 CEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * When resuming client, remove the old client entry from
+         the watcher list too.  Affected file silcd/packet_receive.c.
+
+       * Do not allow normal server to force founder mode away
+         from router if the founder mode is already set.  Affected
+         file silcd/packet_receive.c.
+
+       * Remove the client entry with watch notify types with short
+         timeout, and not directly, so that other notifys can be
+         retrieved too.  Affected file lib/silcclient/client_notify.c.
+
+       * Display notification about data messages that cannot be
+         displayed.  Affected files irssi/src/silc/core/client_ops.c,
+         irssi/src/fe-common/silc/module-formats.[ch].
+
+Sun May 19 18:59:00 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed the CHANNEL_CHANGE notify handling in client libary
+         to not use freed memory.  Affected file is
+         lib/silcclient/client_notify.c.
+
+       * Fixed CUMODE_CHANGE notify handling in server.  Affected
+         file silcd/packet_receive.c.
+
+       * Fixed USERS command to support empty channels.  Affected
+         file silcd/command.c.
+
+Sat May 18 11:35:19 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Allow multiple identical pending commands to be registered
+         in client library.  Affected file is lib/silcclient/command.c.
+
+       * Call the completion for resolving client information only
+         after all resolvers has finished.  This fixes a crash in
+         the client.  Added support for checking when the resolvers
+         are finished.  Affected file is lib/silcclient/idlist.c.
+
+       * Wait by default 3 seconds before reconnecting to the server
+         after being disconnected.  Makes the /detach command a bit
+         more usable.
+
+Fri May 17 17:23:45 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Check the watcher list before sending signoff notifys
+         when closing client connection.  Affected file is
+         silcd/server.c.
+
+       * Added better CMODE command rights checking.  Affected file
+         silcd/server_util.c.
+
+Fri May 17 08:33:41 CEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed watcher list checking during server signoff.  It
+         crashed the server.  Affected file silcd/server_util.c.
+
+       * The JOIN command reply returns now the founder's public
+         key.  Affected file is silcd/command.c.
+
+       * Announce the channel mode, and the mode properties with
+         CMODE_CHANGE notify.  Affected file silcd/server.c.
+
+       * Mark new channels by default disabled, untill at least
+         one user joins the channel.  Affected file is
+         silcd/packet_receive.c.
+
+Thu May 16 13:05:13 CEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * The nickname argument to watch notify can be optional.
+         Fixes a crash in server.  Affected file silcd/packet_send.c.
+
+       * Remove the client entry from cache if the WATCH notify type
+         is KILLED, SERVER_SIGNOFF or SIGNOFF.  Affected file is
+         lib/silcclient/client_notify.c.
+
+       * Check the watcher list before and after changing nickname
+         when the NICK_CHANGE notify is received.  Affected file is
+         silcd/idlist.c.
+
+       * Fixed a crash in OPER and SILCOPER command sending.  Empty
+         passphrase caused the crash.  Affected file is
+         lib/silcclient/command.c.
+
+Wed May 15 19:01:42 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Merged with Irssi CVS for Irssi SILC client.
+
+Tue May 14 19:37:48 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Completed the protocol specifications.
+
+Tue May  7 20:41:58 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Merged with Irssi CVS for Irssi SILC client.
+
+Tue May  7 11:07:16 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Added the founder's public key delivery to the
+         CUMODE_CHANGE notify type as well.  Updated the protocol
+         specs and the code.  Affected files are silcd/packet_send.[ch],
+         silcd/packet_receive.c and silcd/command.c.
+
+Mon May  6 19:46:12 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Added silc_pkcs_public_key_copy function into the
+         lib/silccrypt/silcpkcs.[ch].
+
+       * Remove the `iv' from the SilcChannelEntry since we can
+         live without it.  Affected files are silcd/idlist.h and
+         silcd/packet_receive.c.
+
+       * Added support for sending the founder's public key in
+         the CMODE_CHANGE notify packet in the server.  Affected
+         files are silcd/packet_send.[ch], silcd/packet_receive.c,
+         silcd/command.c and silcd/server.c.
+
+       * Changed the FOUNDER_AUTH authentication to use only
+         public key authentication as defined by new protocol
+         specs.  Passphrase authentication with that mode cannot
+         be used anymore.  It is now possible to reclaim founder
+         mode from any server in the network.  Affected files are
+         silcd/command.c, silcd/idlist.h and silcd/command_reply.c.
+
+       * Added permanent channels support by making the channel
+         permanent when FOUNDER_AUTH mode is set on the channel.
+         The channel will not be destroyed even if channel is empty
+         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. 
+
+Fri May  3 18:36:51 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Added reference counter to the command reply context in
+         the client library.  Affected files are
+         lib/silcclient/command_reply.[ch].
+
+Fri May  3 11:37:10 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed rekey protocol with PFS in the client library.
+         Affected file is lib/silcclient/protocol.c.
+
+       * Added support for list of errors in client library
+         command reply handling.  Affected file is
+         lib/silcclient/command_reply.c.
+
+       * Defined that the WHOIS and IDENTIFY commands can send
+         list of errors.  Updated the protocol specs.  Protocol
+         TODO #2.
+
+       * Added support for sending list of errors to WHOIS and
+         IDENTIFY commands in server.  Added support for receiving
+         list of errors in server.  Affected files are
+         silcd/command.c and silcd/command_reply.c.
+
+       * Fixed client info resolving on LEAVE command in client
+         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>
+
+       * Defined that the NICK command replies with thew changed
+         nickname too, to make the nickname changing simpler at
+         the client's end.  Updated protocol specs and the code
+         in client and server.  Affected files are
+         silcd/command.c, lib/silcclient/command_reply.c and
+         lib/silcclient/command.c.
+
 Mon Apr 29 20:10:42 EEST 2002  Pekka Riikonen <priikone@silcnet.org>
 
        * Added `Compressed' packet flag to indicate that the packet
@@ -3450,6 +4110,12 @@ Sat Aug 11 00:29:57 EEST 2001  Pekka Riikonen <priikone@silcnet.org>
          set as the new server's context instead of SilcServerEntry.
          This naturally caused some weird bugs.
 
+       * Added "updated" field the SilcChannelEntry which indicates
+         the time since the channel entry was last accessed.  This
+         can be used to determine whether it is necessary to
+         announce the channel after backup resuming protocol.
+         Affected files silcd/idlist.[ch].
+
 Thu Aug  9 18:28:37 EEST 2001  Pekka Riikonen <priikone@silcnet.org>
 
        * Do not delete the channel rekey task when adding it