updates.
[silc.git] / CHANGES
diff --git a/CHANGES b/CHANGES
index 84a339e212bd362e3c098d9b00ea073e06a127e1..e6dd27489a0527feb8af897f015f69f9a97e68d6 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,199 @@
+Sun Dec  9 19:18:41 EET 2001  Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed the IDENTIFY command reply sending to chech better valid
+         clients.  It was possible to send incomplete list of replies.
+         Affected file silcd/command.c.
+
+Sat Dec  8 15:58:31 EET 2001  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added silc_client_command[s]_[un]register functions now to
+         dynamically register the commands in client library.  Removed
+         the static table of commands.  This allows the client library
+         to call commands without causing the application to know about
+         what commands library has called.
+
+         Removed the INFO command reply kludge to detect when the command
+         was called by library.  Now library use its own command reply
+         function for INFO command.
+
+         Added function silc_client_command_call to call a command.
+         Application can use it to call command, not access the structure
+         directly.
+
+         Now all commands that are sent by the client library (not
+         explicitly sent by application) use own command reply functions.
+
+         Affected files around lib/silcclient/ and in
+         irssi/src/silc/core/.
+
+       * Fixed the WHOIS command reply sending to chech better valid
+         clients.  It was possible to send incomplete list of replies.
+
+         Fixed the WHOIS and IDENTIFY to send the request to router
+         if normal server did not do it and did not find any results.
+
+         Affected file silcd/command.c.
+
+Thu Dec  6 17:21:06 EET 2001  Pekka Riikonen <priikone@silcnet.org>
+
+       * Moved the internal data from SilcClient context into its
+         own file, not accesible to application.  Affected files
+         lib/silcclient/client.h and lib/silcclient/client_internal.h,
+         and other files in client library.
+
+Thu Dec  6 10:37:55 EET 2001  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added doc/examples installation target in Makefile.am.pre.
+         A patch by salo.
+
+Tue Dec  4 17:43:19 EET 2001  Pekka Riikonen <priikone@silcnet.org>
+
+       * If NO_SUCH_CLIENT_ID notify is received for WHOIS or IDENTIFY
+         commands the found client entry will be removed from the
+         cache, after notifying application about the error.  Affected
+         file lib/silcclient/command_reply.c.
+
+       * Changed the /MSG to check for exact nickname user gave, and
+         not let `nick' match `nick@host' if it is only one found.  Now,
+         user must type the exact nickname (like nick@host2) even if
+         there are no more than one same nicks found.  This is to avoid
+         a possibility of sending nickname to wrong nickname since
+         `nick' could match `nick@host'.  Affected file is
+         irssi/src/core/silc-servers.c.
+
+Mon Dec  3 18:49:45 EET 2001  Pekka Riikonen <priikone@silcnet.org>
+
+       * Do not print "you are now server operator" or similar when
+         giving /away command.  Affected files are
+         irssi/src/silc/core/client_ops.c, silc-servers.h.
+
+       * Made the silc_server_command_pending_error_check to send
+         the same command reply payload it received back to the
+         original sender of the command.  This way all arguments
+         that was received by the server will be received by the
+         client too.  Affected file silcd/command.c.
+
+       * Added the silc_idcache_add to return the created cache entry
+         to a pointer.  Affected file lib/silccore/silcidcache.[ch].
+
+       * Add global clients to expire if they are not on any channel.
+         This is because normal server will never know if they signoff
+         if they are not on any channel.  The cache expiry will take
+         case of these entries.  This is done by normal servers only.
+         The affected files are silcd/command_reply.c,
+         silcd/idlist.[ch], silcd/server and silcd/packet_receive.c.
+
+       * If server receives invalid ID notification for WHOIS or
+         IDENTIFY and the ID exists in the lists, it is removed.
+         Affected file silcd/command_reply.c.
+
+       * If NO_SUCH_CLIENT_ID is received for WHOIS or IDENTIFY command
+         in client then client entry that it matches is searched and
+         the nickname is printed on the screen for user.  Affected
+         file irssi/src/silc/core/client_ops.c.
+
+Mon Dec  3 11:56:59 EET 2001  Pekka Riikonen <priikone@silcnet.org>
+
+       * Use cache entry expire time in the LIST command reply to
+         purge old entries from the cache after the LIST command
+         reply has been received.  This way we don't have non-existent
+         entries in the cache for too long.  Affected file is
+         silcd/command_reply.c.
+
+Sun Dec  2 23:29:07 EET 2001  Pekka Riikonen <priikone@silcnet.org>
+
+       * If we are normal server, and we've not resolved client info
+         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 
+         file silcd/command.c.
+
+       * Search channel by name (if possible) rather than by ID
+         in IDENTIFY command's command reply.  Affected file is
+         silcd/command_reply.c.
+
+Sun Dec  2 13:48:46 EET 2001  Pekka Riikonen <priikone@silcnet.org>
+
+       * Distribute to the channel passphrase in CMODE_CHANGE notify.
+         Updated specs and implemented it.  Affected file silcd/command.c,
+         silcd/packet_send.c and silcd/packet_receive.c.
+
+       * 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 
+         overrided by the channel founder.  Updated the protocol specs.
+         Affected file silcd/command.c.
+
+         Added support for founder auth in JOIN command in client
+         library.  Fixed the parsing of the JOIN command now to support
+         all options as they should be.  The affected file is
+         lib/silcclient/command.c.
+
+       * Optimized the WHOIS and IDENTIFY commands to send the request
+         to router only if it includes nicknames or other names.  If
+         they include only IDs then check the local cache first before
+         routing.  Affected file is silcd/command.c.
+
+       * Added channels topic announcements.  Affected file is
+         silcd/packet_receive.c and silcd/server.c.
+
+       * Fixed the silc_server_send_notify_topic_set to really destine
+         the packet to channel.  Affected file silcd/packet_send.c.
+
+       * Fixed a crash in CHANNEL_CHANGE notify handling in the client
+         library.  Affected file lib/silcclient/client_notify.c.
+
+       * Added UMODE announcements.  Affected file silcd/server.c.
+
+Sat Dec  1 12:52:39 EET 2001  Pekka Riikonen <priikone@silcnet.org>
+
+       * Memory leak fixes in:
+
+         lib/silcutil/silcsockconn.c
+         lib/silcske/silcske.c
+         lib/silcske/groups.c
+         lib/silccrypt/rsa.c
+         lib/silccrypt/silcpkcs.c
+         lib/silccore/silccommand.c
+         lib/silccore/silcidcache.c
+         silcd/idlist.c
+         silcd/packet_send.c
+         silcd/command.c
+
+       * ROBOdoc documented the lib/silcske/groups.h file and a
+         bit changed the interface for better.
+
+Thu Nov 29 22:12:50 EET 2001  Pekka Riikonen <priikone@silcnet.org>'
+
+       * Update the client entry context in the ID cache after
+         nick change.  Affected file lib/silcclient/command.c.
+         Fixes the CUMODE command when regaining founder privileges,
+         and a little WHOIS problem.
+
+       * Fixed silc_net_gethostbyname to correctly call the
+         inet_ntop.  Affected file lib/silcutil/silcnet.c.
+
+Thu Nov 29 19:31:23 EET 2001  Pekka Riikonen <priikone@silcnet.org>'
+
+       * Added IPv6 support checking to the configure.in.pre, added
+         also --enable-ipv6 option to override the check.  Affected
+         file configure.in.pre.
+
+       * The silc_thread_create now calls the start function
+         directly if threads support is not compiled in.  Removes
+         ugly #ifdef's from generic code.  Affected files are
+         lib/silcutil/unix/silcunixthread, win32/silcwin32thread.c.
+
+       * Added silc_net_gethostby[name/addr]_async to asynchronously
+         resolve.  Affected files are lib/silcutil/silcnet.[ch].
+
+       * Added support for rendering IPv6 based server, client and
+         channel IDs.  Affected file lib/silcutil/silcutil.c.
+
+       * Added support for creating IPv6 based server IDs.  Affected
+         file is silcd/serverid.c.
+
 Wed Nov 28 23:46:09 EET 2001  Pekka Riikonen <priikone@silcnet.org>'
 
        * Added silc_net_gethostby[addr/name] into the