[Pkg-silc-commits] r137 - in /silc-client/trunk: ./ apps/ apps/irssi/ debian/ doc/ includes/ lib/ lib/contrib/ lib/silcapputil/ lib/silcasn1/ lib/silcclient/ lib/silccore/ lib/silccrypt/ lib/silcmath/ lib/silcsftp/ lib/silcske/ lib/silcskr/ lib/silcutil/ lib/silcvcard/
lunar at users.alioth.debian.org
lunar at users.alioth.debian.org
Fri Jul 6 23:39:22 UTC 2007
Author: lunar
Date: Fri Jul 6 23:39:22 2007
New Revision: 137
URL: http://svn.debian.org/wsvn/pkg-silc/?sc=1&rev=137
Log:
Update to silc-client-1.1.2.
Modified:
silc-client/trunk/CHANGES
silc-client/trunk/Makefile.am
silc-client/trunk/Makefile.in
silc-client/trunk/apps/Makefile.am
silc-client/trunk/apps/Makefile.in
silc-client/trunk/apps/irssi/irssi-version.h.in
silc-client/trunk/apps/irssi/silc-client.spec
silc-client/trunk/configure
silc-client/trunk/configure.ac
silc-client/trunk/debian/changelog
silc-client/trunk/doc/Makefile.am
silc-client/trunk/doc/Makefile.in
silc-client/trunk/includes/Makefile.am
silc-client/trunk/includes/Makefile.in
silc-client/trunk/includes/silcdistdefs.h
silc-client/trunk/lib/Makefile.am
silc-client/trunk/lib/Makefile.in
silc-client/trunk/lib/contrib/Makefile.am
silc-client/trunk/lib/contrib/Makefile.in
silc-client/trunk/lib/silcapputil/Makefile.am
silc-client/trunk/lib/silcapputil/Makefile.in
silc-client/trunk/lib/silcapputil/silcidcache.c
silc-client/trunk/lib/silcapputil/silcidcache.h
silc-client/trunk/lib/silcasn1/Makefile.am
silc-client/trunk/lib/silcasn1/Makefile.in
silc-client/trunk/lib/silcclient/Makefile.am
silc-client/trunk/lib/silcclient/Makefile.in
silc-client/trunk/lib/silcclient/client.c
silc-client/trunk/lib/silcclient/client_connect.c
silc-client/trunk/lib/silcclient/client_entry.c
silc-client/trunk/lib/silcclient/client_notify.c
silc-client/trunk/lib/silccore/Makefile.am
silc-client/trunk/lib/silccore/Makefile.in
silc-client/trunk/lib/silccore/silcargument.c
silc-client/trunk/lib/silccore/silcnotify.c
silc-client/trunk/lib/silccore/silcpacket.c
silc-client/trunk/lib/silccore/silcpacket.h
silc-client/trunk/lib/silccrypt/Makefile.am
silc-client/trunk/lib/silccrypt/Makefile.in
silc-client/trunk/lib/silcmath/Makefile.am
silc-client/trunk/lib/silcmath/Makefile.in
silc-client/trunk/lib/silcsftp/Makefile.am
silc-client/trunk/lib/silcsftp/Makefile.in
silc-client/trunk/lib/silcske/Makefile.am
silc-client/trunk/lib/silcske/Makefile.in
silc-client/trunk/lib/silcske/silcske.c
silc-client/trunk/lib/silcske/silcske.h
silc-client/trunk/lib/silcskr/Makefile.am
silc-client/trunk/lib/silcskr/Makefile.in
silc-client/trunk/lib/silcutil/Makefile.am
silc-client/trunk/lib/silcutil/Makefile.in
silc-client/trunk/lib/silcvcard/Makefile.am
silc-client/trunk/lib/silcvcard/Makefile.in
Modified: silc-client/trunk/CHANGES
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/CHANGES?rev=137&op=diff
==============================================================================
--- silc-client/trunk/CHANGES (original)
+++ silc-client/trunk/CHANGES Fri Jul 6 23:39:22 2007
@@ -1,3 +1,46 @@
+Wed Jul 4 08:06:38 EEST 2007 Pekka Riikonen <priikone at silcnet.org>
+
+ * SILC Client 1.1.2.
+
+Mon Jul 2 17:28:47 CEST 2007 Pekka Riikonen <priikone at silcnet.org>
+
+ * In silc_client_free check that scheduler is allocated before
+ trying to free it. Affected file is lib/silcclient/client.c.
+
+ * Fixed buffer overflow in NICK_CHANGE notify. The destination
+ buffer for old nickname was too small. Affected file is
+ lib/silclient/client_notify.c.
+
+Sun Jul 1 19:15:15 EEST 2007 Pekka Riikonen <priikone at silcnet.org>
+
+ * SILC Server 1.1 Beta1.
+
+Sun Jul 1 12:40:06 EEST 2007 Pekka Riikonen <priikone at silcnet.org>
+
+ * Added support for rekey with PFS when using CTR mode
+ encryption. Affected file is lib/silcske/silcske.c.
+
+ * Added silc_idcache_move that can be used to move entries
+ between caches. Affected files are
+ lib/silcapputil/silcidcache.[ch].
+
+ * Added better checks for invalid argument and notify payloads.
+ Affected files are lib/silccore/silcnotify.c and
+ silcargument.c.
+
+ * Fixed SILC_PACKET_FLAG_LONG_PAD bitmask value. Affected
+ file lib/silccore/silcpacket.h.
+
+Sat Jun 30 21:48:08 EEST 2007 Pekka Riikonen <priikone at silcnet.org>
+
+ * Set the destination ID to packet stream as SKE responder
+ if ID was present in key exchange packet. Affected file
+ is lib/silcske/silcske.[ch].
+
+ * Handle also zero timeouts in the scheduler notify callback
+ to avoid problems with SILC Plugin. Affected file is
+ apps/irssi/src/silc/core/silc-core.c.
+
Thu Jun 28 19:19:13 EEST 2007 Pekka Riikonen <priikone at silcnet.org>
* SILC Client 1.1.1.
Modified: silc-client/trunk/Makefile.am
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/Makefile.am?rev=137&op=diff
==============================================================================
--- silc-client/trunk/Makefile.am (original)
+++ silc-client/trunk/Makefile.am Fri Jul 6 23:39:22 2007
@@ -2,7 +2,7 @@
# To make changes edit the ./Makefile.ad file in the source tree.
# Source: ./Makefile.ad
-# Generated: Thu Jun 28 19:52:48 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:38 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/Makefile.in
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/Makefile.in?rev=137&op=diff
==============================================================================
--- silc-client/trunk/Makefile.in (original)
+++ silc-client/trunk/Makefile.in Fri Jul 6 23:39:22 2007
@@ -18,7 +18,7 @@
# To make changes edit the ./Makefile.ad file in the source tree.
# Source: ./Makefile.ad
-# Generated: Thu Jun 28 19:52:48 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:38 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/apps/Makefile.am
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/apps/Makefile.am?rev=137&op=diff
==============================================================================
--- silc-client/trunk/apps/Makefile.am (original)
+++ silc-client/trunk/apps/Makefile.am Fri Jul 6 23:39:22 2007
@@ -2,7 +2,7 @@
# To make changes edit the ./apps/Makefile.ad file in the source tree.
# Source: ./apps/Makefile.ad
-# Generated: Thu Jun 28 19:52:46 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:36 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/apps/Makefile.in
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/apps/Makefile.in?rev=137&op=diff
==============================================================================
--- silc-client/trunk/apps/Makefile.in (original)
+++ silc-client/trunk/apps/Makefile.in Fri Jul 6 23:39:22 2007
@@ -18,7 +18,7 @@
# To make changes edit the ./apps/Makefile.ad file in the source tree.
# Source: ./apps/Makefile.ad
-# Generated: Thu Jun 28 19:52:46 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:36 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/apps/irssi/irssi-version.h.in
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/apps/irssi/irssi-version.h.in?rev=137&op=diff
==============================================================================
--- silc-client/trunk/apps/irssi/irssi-version.h.in (original)
+++ silc-client/trunk/apps/irssi/irssi-version.h.in Fri Jul 6 23:39:22 2007
@@ -1,4 +1,4 @@
/* automatically created by autogen.sh */
-#define IRSSI_VERSION "1.1.1 (Irssi base: @VERSION@ - SILC base: SILC 1.1.1)"
-#define IRSSI_VERSION_DATE 20070628
-#define IRSSI_VERSION_TIME 20070628
+#define IRSSI_VERSION "1.1.2 (Irssi base: @VERSION@ - SILC base: SILC 1.1.2)"
+#define IRSSI_VERSION_DATE 20070704
+#define IRSSI_VERSION_TIME 20070704
Modified: silc-client/trunk/apps/irssi/silc-client.spec
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/apps/irssi/silc-client.spec?rev=137&op=diff
==============================================================================
--- silc-client/trunk/apps/irssi/silc-client.spec (original)
+++ silc-client/trunk/apps/irssi/silc-client.spec Fri Jul 6 23:39:22 2007
@@ -1,6 +1,6 @@
Summary: SILC Client
Name: silc-client
-Version: 1.1.1
+Version: 1.1.2
Release: 0.fc7
License: GPL
Group: Applications/Communications
Modified: silc-client/trunk/configure
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/configure?rev=137&op=diff
==============================================================================
--- silc-client/trunk/configure (original)
+++ silc-client/trunk/configure Fri Jul 6 23:39:22 2007
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.61 for Client 1.1.1.
+# Generated by GNU Autoconf 2.61 for Client 1.1.2.
#
# Report bugs to <silc-devel at lists.silcnet.org>.
#
@@ -728,8 +728,8 @@
# Identity of this package.
PACKAGE_NAME='Client'
PACKAGE_TARNAME='silc-client'
-PACKAGE_VERSION='1.1.1'
-PACKAGE_STRING='Client 1.1.1'
+PACKAGE_VERSION='1.1.2'
+PACKAGE_STRING='Client 1.1.2'
PACKAGE_BUGREPORT='silc-devel at lists.silcnet.org'
# Factoring default headers for most tests.
@@ -1480,7 +1480,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures Client 1.1.1 to adapt to many kinds of systems.
+\`configure' configures Client 1.1.2 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1551,7 +1551,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of Client 1.1.1:";;
+ short | recursive ) echo "Configuration of Client 1.1.2:";;
esac
cat <<\_ACEOF
@@ -1679,7 +1679,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-Client configure 1.1.1
+Client configure 1.1.2
generated by GNU Autoconf 2.61
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1693,7 +1693,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by Client $as_me 1.1.1, which was
+It was created by Client $as_me 1.1.2, which was
generated by GNU Autoconf 2.61. Invocation command line was
$ $0 $@
@@ -2509,7 +2509,7 @@
# Define the identity of the package.
PACKAGE='silc-client'
- VERSION='1.1.1'
+ VERSION='1.1.2'
cat >>confdefs.h <<_ACEOF
@@ -30297,9 +30297,9 @@
LIB_BASE_VERSION=1.1
# libsilc versions
-LIBSILC_CURRENT=2 # prev = 1
+LIBSILC_CURRENT=3 # prev = 2
LIBSILC_REVISION=0 # prev = 0
-LIBSILC_AGE=0 # prev = 0
+LIBSILC_AGE=1 # prev = 1
# libsilcclient versions
LIBSILCCLIENT_CURRENT=2 # prev = 1
@@ -31751,7 +31751,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by Client $as_me 1.1.1, which was
+This file was extended by Client $as_me 1.1.2, which was
generated by GNU Autoconf 2.61. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -31804,7 +31804,7 @@
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-Client config.status 1.1.1
+Client config.status 1.1.2
configured by $0, generated by GNU Autoconf 2.61,
with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
Modified: silc-client/trunk/configure.ac
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/configure.ac?rev=137&op=diff
==============================================================================
--- silc-client/trunk/configure.ac (original)
+++ silc-client/trunk/configure.ac Fri Jul 6 23:39:22 2007
@@ -2,7 +2,7 @@
# To make changes edit the configure.ad file in the source tree.
# Source: configure.ad
-# Generated: Thu Jun 28 19:52:48 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:38 EEST 2007 by priikone
# Distribution: Client
# License:
@@ -23,7 +23,7 @@
# GNU General Public License for more details.
#
-AC_INIT([Client], [1.1.1], [silc-devel at lists.silcnet.org], [silc-client])
+AC_INIT([Client], [1.1.2], [silc-devel at lists.silcnet.org], [silc-client])
AC_CANONICAL_SYSTEM
AM_INIT_AUTOMAKE
AC_PREREQ(2.52)
@@ -1385,9 +1385,9 @@
LIB_BASE_VERSION=1.1
# libsilc versions
-LIBSILC_CURRENT=2 # prev = 1
+LIBSILC_CURRENT=3 # prev = 2
LIBSILC_REVISION=0 # prev = 0
-LIBSILC_AGE=0 # prev = 0
+LIBSILC_AGE=1 # prev = 1
# libsilcclient versions
LIBSILCCLIENT_CURRENT=2 # prev = 1
Modified: silc-client/trunk/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/debian/changelog?rev=137&op=diff
==============================================================================
--- silc-client/trunk/debian/changelog (original)
+++ silc-client/trunk/debian/changelog Fri Jul 6 23:39:22 2007
@@ -1,3 +1,9 @@
+silc-client (1.1.2-1) unstable; urgency=low
+
+ * New upstream release, including security fixes for irssi-plugin-silc.
+
+ -- Jérémy Bobbio <lunar at debian.org> Sat, 07 Jul 2007 01:29:12 +0200
+
silc-client (1.1.1-1) unstable; urgency=low
* New upstream release.
Modified: silc-client/trunk/doc/Makefile.am
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/doc/Makefile.am?rev=137&op=diff
==============================================================================
--- silc-client/trunk/doc/Makefile.am (original)
+++ silc-client/trunk/doc/Makefile.am Fri Jul 6 23:39:22 2007
@@ -2,7 +2,7 @@
# To make changes edit the ./doc/Makefile.ad file in the source tree.
# Source: ./doc/Makefile.ad
-# Generated: Thu Jun 28 19:52:46 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:36 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/doc/Makefile.in
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/doc/Makefile.in?rev=137&op=diff
==============================================================================
--- silc-client/trunk/doc/Makefile.in (original)
+++ silc-client/trunk/doc/Makefile.in Fri Jul 6 23:39:22 2007
@@ -18,7 +18,7 @@
# To make changes edit the ./doc/Makefile.ad file in the source tree.
# Source: ./doc/Makefile.ad
-# Generated: Thu Jun 28 19:52:46 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:36 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/includes/Makefile.am
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/includes/Makefile.am?rev=137&op=diff
==============================================================================
--- silc-client/trunk/includes/Makefile.am (original)
+++ silc-client/trunk/includes/Makefile.am Fri Jul 6 23:39:22 2007
@@ -2,7 +2,7 @@
# To make changes edit the ./includes/Makefile.ad file in the source tree.
# Source: ./includes/Makefile.ad
-# Generated: Thu Jun 28 19:52:46 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:36 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/includes/Makefile.in
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/includes/Makefile.in?rev=137&op=diff
==============================================================================
--- silc-client/trunk/includes/Makefile.in (original)
+++ silc-client/trunk/includes/Makefile.in Fri Jul 6 23:39:22 2007
@@ -18,7 +18,7 @@
# To make changes edit the ./includes/Makefile.ad file in the source tree.
# Source: ./includes/Makefile.ad
-# Generated: Thu Jun 28 19:52:46 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:36 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/includes/silcdistdefs.h
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/includes/silcdistdefs.h?rev=137&op=diff
==============================================================================
--- silc-client/trunk/includes/silcdistdefs.h (original)
+++ silc-client/trunk/includes/silcdistdefs.h Fri Jul 6 23:39:22 2007
@@ -1,7 +1,7 @@
/*
Automatically generated by Autodist 1.3.2. Do not edit.
- Generated: Thu Jun 28 19:52:22 EEST 2007 by priikone
+ Generated: Wed Jul 4 08:07:12 EEST 2007 by priikone
Distribution: Client
License:
*/
Modified: silc-client/trunk/lib/Makefile.am
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/Makefile.am?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/Makefile.am (original)
+++ silc-client/trunk/lib/Makefile.am Fri Jul 6 23:39:22 2007
@@ -2,7 +2,7 @@
# To make changes edit the ./lib/Makefile.ad file in the source tree.
# Source: ./lib/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:37 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/Makefile.in
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/Makefile.in?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/Makefile.in (original)
+++ silc-client/trunk/lib/Makefile.in Fri Jul 6 23:39:22 2007
@@ -18,7 +18,7 @@
# To make changes edit the ./lib/Makefile.ad file in the source tree.
# Source: ./lib/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:37 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/contrib/Makefile.am
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/contrib/Makefile.am?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/contrib/Makefile.am (original)
+++ silc-client/trunk/lib/contrib/Makefile.am Fri Jul 6 23:39:22 2007
@@ -2,7 +2,7 @@
# To make changes edit the ./lib/contrib/Makefile.ad file in the source tree.
# Source: ./lib/contrib/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:38 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/contrib/Makefile.in
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/contrib/Makefile.in?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/contrib/Makefile.in (original)
+++ silc-client/trunk/lib/contrib/Makefile.in Fri Jul 6 23:39:22 2007
@@ -18,7 +18,7 @@
# To make changes edit the ./lib/contrib/Makefile.ad file in the source tree.
# Source: ./lib/contrib/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:38 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silcapputil/Makefile.am
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcapputil/Makefile.am?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcapputil/Makefile.am (original)
+++ silc-client/trunk/lib/silcapputil/Makefile.am Fri Jul 6 23:39:22 2007
@@ -2,7 +2,7 @@
# To make changes edit the ./lib/silcapputil/Makefile.ad file in the source tree.
# Source: ./lib/silcapputil/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:37 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silcapputil/Makefile.in
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcapputil/Makefile.in?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcapputil/Makefile.in (original)
+++ silc-client/trunk/lib/silcapputil/Makefile.in Fri Jul 6 23:39:22 2007
@@ -18,7 +18,7 @@
# To make changes edit the ./lib/silcapputil/Makefile.ad file in the source tree.
# Source: ./lib/silcapputil/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:37 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silcapputil/silcidcache.c
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcapputil/silcidcache.c?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcapputil/silcidcache.c (original)
+++ silc-client/trunk/lib/silcapputil/silcidcache.c Fri Jul 6 23:39:22 2007
@@ -16,7 +16,7 @@
GNU General Public License for more details.
*/
-/* $Id: silcidcache.c,v 1.11 2007/04/24 17:31:23 priikone Exp $ */
+/* $Id: silcidcache.c,v 1.11.2.1 2007/07/01 11:12:05 priikone Exp $ */
#include "silc.h"
#include "silcidcache.h"
@@ -296,6 +296,70 @@
return silc_idcache_update(cache, c, new_id, new_name, free_old_name);
}
+/* Move entry to another cache */
+
+SilcBool silc_idcache_move(SilcIDCache from_cache, SilcIDCache to_cache,
+ SilcIDCacheEntry entry)
+{
+ SilcIDCacheEntry c;
+
+ SILC_LOG_DEBUG(("Moving entry %p from %p cache to %p cache", entry,
+ from_cache, to_cache));
+
+ if (!from_cache || !to_cache || !entry)
+ return FALSE;
+
+ if (from_cache->id_type != to_cache->id_type) {
+ SILC_LOG_ERROR(("Incompatible ID caches, cannot move entry"));
+ return FALSE;
+ }
+
+ if (entry->context) {
+ if (!silc_hash_table_find(from_cache->context_table, entry->context,
+ NULL, (void *)&c))
+ return FALSE;
+ } else if (entry->name) {
+ if (!silc_hash_table_find(from_cache->name_table, entry->name,
+ NULL, (void *)&c))
+ return FALSE;
+ } else if (entry->id) {
+ if (!silc_hash_table_find(from_cache->id_table, entry->id,
+ NULL, (void *)&c))
+ return FALSE;
+ } else {
+ return FALSE;
+ }
+
+ if (entry != c)
+ return FALSE;
+
+ /* See if this entry is added already to cache */
+ if (c->id && silc_idcache_find_by_id_one(to_cache, c->id, NULL)) {
+ SILC_LOG_ERROR(("Attempted to add same ID twice to ID Cache, id %s",
+ silc_id_render(c->id, to_cache->id_type)));
+ SILC_ASSERT(FALSE);
+ return FALSE;
+ }
+
+ /* Remove from original cache */
+ if (c->name)
+ silc_hash_table_del_by_context(from_cache->name_table, c->name, c);
+ if (c->context)
+ silc_hash_table_del_by_context(from_cache->context_table, c->context, c);
+ if (c->id)
+ silc_hash_table_del_by_context(from_cache->id_table, c->id, c);
+
+ /* Move to the other cache */
+ if (c->id)
+ silc_hash_table_add(to_cache->id_table, c->id, c);
+ if (c->name)
+ silc_hash_table_add(to_cache->name_table, c->name, c);
+ if (c->context)
+ silc_hash_table_add(to_cache->context_table, c->context, c);
+
+ return TRUE;
+}
+
/* Returns all cache entrys from the ID cache to the `ret' ID Cache List. */
SilcBool silc_idcache_get_all(SilcIDCache cache, SilcList *ret_list)
Modified: silc-client/trunk/lib/silcapputil/silcidcache.h
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcapputil/silcidcache.h?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcapputil/silcidcache.h (original)
+++ silc-client/trunk/lib/silcapputil/silcidcache.h Fri Jul 6 23:39:22 2007
@@ -240,6 +240,24 @@
void *new_id, char *new_name,
SilcBool free_old_name);
+/****f* silcapputil/SilcIDCacheAPI/silc_idcache_move
+ *
+ * SYNOPSIS
+ *
+ * SilcBool silc_idcache_move(SilcIDCache from_cache, SilcIDCache to_cache,
+ * SilcIDCacheEntry entry);
+ *
+ * DESCRIPTION
+ *
+ * Moves the ID cache entry indicated by `entry' from the `from_cache'
+ * to `to_cache'. After this returns TRUE the `entry' is available only
+ * from the `to_cache'. Return FALSE if `entry' is not in `from_cache'
+ * or system is out of memory.
+ *
+ ***/
+SilcBool silc_idcache_move(SilcIDCache from_cache, SilcIDCache to_cache,
+ SilcIDCacheEntry entry);
+
/****f* silcapputil/SilcIDCacheAPI/silc_idcache_get_all
*
* SYNOPSIS
Modified: silc-client/trunk/lib/silcasn1/Makefile.am
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcasn1/Makefile.am?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcasn1/Makefile.am (original)
+++ silc-client/trunk/lib/silcasn1/Makefile.am Fri Jul 6 23:39:22 2007
@@ -2,7 +2,7 @@
# To make changes edit the ./lib/silcasn1/Makefile.ad file in the source tree.
# Source: ./lib/silcasn1/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:37 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silcasn1/Makefile.in
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcasn1/Makefile.in?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcasn1/Makefile.in (original)
+++ silc-client/trunk/lib/silcasn1/Makefile.in Fri Jul 6 23:39:22 2007
@@ -18,7 +18,7 @@
# To make changes edit the ./lib/silcasn1/Makefile.ad file in the source tree.
# Source: ./lib/silcasn1/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:37 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silcclient/Makefile.am
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcclient/Makefile.am?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcclient/Makefile.am (original)
+++ silc-client/trunk/lib/silcclient/Makefile.am Fri Jul 6 23:39:22 2007
@@ -2,7 +2,7 @@
# To make changes edit the ./lib/silcclient/Makefile.ad file in the source tree.
# Source: ./lib/silcclient/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:37 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silcclient/Makefile.in
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcclient/Makefile.in?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcclient/Makefile.in (original)
+++ silc-client/trunk/lib/silcclient/Makefile.in Fri Jul 6 23:39:22 2007
@@ -18,7 +18,7 @@
# To make changes edit the ./lib/silcclient/Makefile.ad file in the source tree.
# Source: ./lib/silcclient/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:37 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silcclient/client.c
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcclient/client.c?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcclient/client.c (original)
+++ silc-client/trunk/lib/silcclient/client.c Fri Jul 6 23:39:22 2007
@@ -16,7 +16,7 @@
GNU General Public License for more details.
*/
-/* $Id: client.c,v 1.189.2.1 2007/05/24 12:33:29 priikone Exp $ */
+/* $Id: client.c,v 1.189.2.2 2007/07/02 13:31:56 priikone Exp $ */
#include "silc.h"
#include "silcclient.h"
@@ -945,7 +945,8 @@
void silc_client_free(SilcClient client)
{
- silc_schedule_uninit(client->schedule);
+ if (client->schedule)
+ silc_schedule_uninit(client->schedule);
if (client->rng)
silc_rng_free(client->rng);
@@ -957,10 +958,13 @@
silc_hmac_unregister_all();
}
- silc_packet_engine_stop(client->internal->packet_engine);
- silc_dlist_uninit(client->internal->ftp_sessions);
+ if (client->internal->packet_engine)
+ silc_packet_engine_stop(client->internal->packet_engine);
+ if (client->internal->ftp_sessions)
+ silc_dlist_uninit(client->internal->ftp_sessions);
+ if (client->internal->lock)
+ silc_mutex_free(client->internal->lock);
silc_atomic_uninit16(&client->internal->conns);
- silc_mutex_free(client->internal->lock);
silc_free(client->username);
silc_free(client->hostname);
silc_free(client->realname);
Modified: silc-client/trunk/lib/silcclient/client_connect.c
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcclient/client_connect.c?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcclient/client_connect.c (original)
+++ silc-client/trunk/lib/silcclient/client_connect.c Fri Jul 6 23:39:22 2007
@@ -789,9 +789,8 @@
/* Allocate SKE */
conn->internal->ske =
- silc_ske_alloc(client->rng, conn->internal->schedule,
- conn->internal->params.repository,
- conn->public_key, conn->private_key, fsm);
+ silc_ske_alloc(client->rng, conn->internal->schedule, NULL,
+ conn->public_key, NULL, fsm);
if (!conn->internal->ske)
return SILC_FSM_FINISH;
Modified: silc-client/trunk/lib/silcclient/client_entry.c
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcclient/client_entry.c?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcclient/client_entry.c (original)
+++ silc-client/trunk/lib/silcclient/client_entry.c Fri Jul 6 23:39:22 2007
@@ -16,7 +16,7 @@
GNU General Public License for more details.
*/
-/* $Id: client_entry.c,v 1.27.2.6 2007/06/10 18:32:58 priikone Exp $ */
+/* $Id: client_entry.c,v 1.27.2.7 2007/07/02 13:34:02 priikone Exp $ */
#include "silc.h"
#include "silcclient.h"
@@ -1281,6 +1281,7 @@
}
newnick[off] = 0;
+ memset(client_entry->nickname, 0, sizeof(client_entry->nickname));
memcpy(client_entry->nickname, newnick, strlen(newnick));
silc_client_list_free(client, conn, clients);
Modified: silc-client/trunk/lib/silcclient/client_notify.c
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcclient/client_notify.c?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcclient/client_notify.c (original)
+++ silc-client/trunk/lib/silcclient/client_notify.c Fri Jul 6 23:39:22 2007
@@ -16,7 +16,7 @@
GNU General Public License for more details.
*/
-/* $Id: client_notify.c,v 1.93 2007/05/18 15:09:20 priikone Exp $ */
+/* $Id: client_notify.c,v 1.93.2.1 2007/07/02 13:34:02 priikone Exp $ */
#include "silc.h"
#include "silcclient.h"
@@ -690,7 +690,7 @@
SilcNotifyType type = silc_notify_get_type(payload);
SilcArgumentPayload args = silc_notify_get_args(payload);
SilcClientEntry client_entry = NULL;
- unsigned char *tmp, oldnick[128 + 1];
+ unsigned char *tmp, oldnick[256 + 1];
SilcUInt32 tmp_len;
SilcID id, id2;
SilcBool valid;
Modified: silc-client/trunk/lib/silccore/Makefile.am
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silccore/Makefile.am?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silccore/Makefile.am (original)
+++ silc-client/trunk/lib/silccore/Makefile.am Fri Jul 6 23:39:22 2007
@@ -2,7 +2,7 @@
# To make changes edit the ./lib/silccore/Makefile.ad file in the source tree.
# Source: ./lib/silccore/Makefile.ad
-# Generated: Thu Jun 28 19:52:46 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:36 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silccore/Makefile.in
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silccore/Makefile.in?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silccore/Makefile.in (original)
+++ silc-client/trunk/lib/silccore/Makefile.in Fri Jul 6 23:39:22 2007
@@ -18,7 +18,7 @@
# To make changes edit the ./lib/silccore/Makefile.ad file in the source tree.
# Source: ./lib/silccore/Makefile.ad
-# Generated: Thu Jun 28 19:52:46 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:36 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silccore/silcargument.c
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silccore/silcargument.c?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silccore/silcargument.c (original)
+++ silc-client/trunk/lib/silccore/silcargument.c Fri Jul 6 23:39:22 2007
@@ -4,7 +4,7 @@
Author: Pekka Riikonen <priikone at silcnet.org>
- Copyright (C) 2001 - 2006 Pekka Riikonen
+ Copyright (C) 2001 - 2007 Pekka Riikonen
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -17,7 +17,7 @@
*/
/* Implementation of Argument Payload routines */
-/* $Id: silcargument.c,v 1.18 2007/01/23 14:52:01 priikone Exp $ */
+/* $Id: silcargument.c,v 1.18.2.1 2007/07/01 13:56:39 priikone Exp $ */
#include "silc.h"
#include "silcargument.h"
@@ -67,8 +67,10 @@
SILC_STR_UI_SHORT(&p_len),
SILC_STR_UI_CHAR(&arg_type),
SILC_STR_END);
- if (ret == -1 || p_len > silc_buffer_len(&buffer) - 3)
+ if (ret == -1 || p_len > silc_buffer_len(&buffer) - 3) {
+ SILC_LOG_DEBUG(("Malformed argument payload"));
goto err;
+ }
newp->argv_lens[i] = p_len;
newp->argv_types[i] = arg_type;
@@ -79,8 +81,10 @@
SILC_STR_UI_XNSTRING_ALLOC(&newp->argv[i],
p_len),
SILC_STR_END);
- if (ret == -1)
+ if (ret == -1) {
+ SILC_LOG_DEBUG(("Malformed argument payload"));
goto err;
+ }
silc_buffer_pull(&buffer, p_len);
pull_len += 3 + p_len;
Modified: silc-client/trunk/lib/silccore/silcnotify.c
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silccore/silcnotify.c?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silccore/silcnotify.c (original)
+++ silc-client/trunk/lib/silccore/silcnotify.c Fri Jul 6 23:39:22 2007
@@ -4,7 +4,7 @@
Author: Pekka Riikonen <priikone at silcnet.org>
- Copyright (C) 2000 - 2005 Pekka Riikonen
+ Copyright (C) 2000 - 2007 Pekka Riikonen
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -16,7 +16,7 @@
GNU General Public License for more details.
*/
-/* $Id: silcnotify.c,v 1.23 2006/11/06 16:26:43 priikone Exp $ */
+/* $Id: silcnotify.c,v 1.23.2.1 2007/07/01 13:56:39 priikone Exp $ */
#include "silc.h"
#include "silcnotify.h"
@@ -66,6 +66,8 @@
newp->args = silc_argument_payload_parse(buffer.data,
silc_buffer_len(&buffer),
newp->argc);
+ if (!newp->args)
+ goto err;
silc_buffer_push(&buffer, 5);
}
Modified: silc-client/trunk/lib/silccore/silcpacket.c
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silccore/silcpacket.c?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silccore/silcpacket.c (original)
+++ silc-client/trunk/lib/silccore/silcpacket.c Fri Jul 6 23:39:22 2007
@@ -19,7 +19,7 @@
/*
* Created: Fri Jul 25 18:52:14 1997
*/
-/* $Id: silcpacket.c,v 1.106.2.3 2007/06/24 14:16:01 priikone Exp $ */
+/* $Id: silcpacket.c,v 1.106.2.5 2007/07/01 13:56:59 priikone Exp $ */
#include "silc.h"
@@ -1322,11 +1322,11 @@
if (!src_id && !dst_id)
return FALSE;
- SILC_LOG_DEBUG(("Setting new IDs to packet stream"));
-
silc_mutex_lock(stream->lock);
if (src_id) {
+ SILC_LOG_DEBUG(("Setting source ID to packet stream %p", stream));
+
silc_free(stream->src_id);
if (!silc_id_id2str(src_id, src_id_type, tmp, sizeof(tmp), &len)) {
silc_mutex_unlock(stream->lock);
@@ -1342,6 +1342,8 @@
}
if (dst_id) {
+ SILC_LOG_DEBUG(("Setting destination ID to packet stream %p", stream));
+
silc_free(stream->dst_id);
if (!silc_id_id2str(dst_id, dst_id_type, tmp, sizeof(tmp), &len)) {
silc_mutex_unlock(stream->lock);
@@ -1970,8 +1972,8 @@
silc_buffer_len(buffer)), buffer->head,
silc_buffer_headlen(buffer) + silc_buffer_len(buffer));
- SILC_LOG_DEBUG(("Incoming packet type: %d (%s)", packet->type,
- silc_get_packet_name(packet->type)));
+ SILC_LOG_DEBUG(("Incoming packet type: %d (%s), flags %d", packet->type,
+ silc_get_packet_name(packet->type), packet->flags));
return TRUE;
}
Modified: silc-client/trunk/lib/silccore/silcpacket.h
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silccore/silcpacket.h?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silccore/silcpacket.h (original)
+++ silc-client/trunk/lib/silccore/silcpacket.h Fri Jul 6 23:39:22 2007
@@ -115,7 +115,7 @@
#define SILC_PACKET_FLAG_ACK 0x10 /* Acknowledge packet */
/* Impelemntation specific flags */
-#define SILC_PACKET_FLAG_LONG_PAD 0x12 /* Use maximum padding */
+#define SILC_PACKET_FLAG_LONG_PAD 0x20 /* Use maximum padding */
/***/
/****s* silccore/SilcPacketAPI/SilcPacketEngine
Modified: silc-client/trunk/lib/silccrypt/Makefile.am
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silccrypt/Makefile.am?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silccrypt/Makefile.am (original)
+++ silc-client/trunk/lib/silccrypt/Makefile.am Fri Jul 6 23:39:22 2007
@@ -2,7 +2,7 @@
# To make changes edit the ./lib/silccrypt/Makefile.ad file in the source tree.
# Source: ./lib/silccrypt/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:37 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silccrypt/Makefile.in
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silccrypt/Makefile.in?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silccrypt/Makefile.in (original)
+++ silc-client/trunk/lib/silccrypt/Makefile.in Fri Jul 6 23:39:22 2007
@@ -18,7 +18,7 @@
# To make changes edit the ./lib/silccrypt/Makefile.ad file in the source tree.
# Source: ./lib/silccrypt/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:37 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silcmath/Makefile.am
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcmath/Makefile.am?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcmath/Makefile.am (original)
+++ silc-client/trunk/lib/silcmath/Makefile.am Fri Jul 6 23:39:22 2007
@@ -2,7 +2,7 @@
# To make changes edit the ./lib/silcmath/Makefile.ad file in the source tree.
# Source: ./lib/silcmath/Makefile.ad
-# Generated: Thu Jun 28 19:52:48 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:38 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silcmath/Makefile.in
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcmath/Makefile.in?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcmath/Makefile.in (original)
+++ silc-client/trunk/lib/silcmath/Makefile.in Fri Jul 6 23:39:22 2007
@@ -18,7 +18,7 @@
# To make changes edit the ./lib/silcmath/Makefile.ad file in the source tree.
# Source: ./lib/silcmath/Makefile.ad
-# Generated: Thu Jun 28 19:52:48 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:38 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silcsftp/Makefile.am
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcsftp/Makefile.am?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcsftp/Makefile.am (original)
+++ silc-client/trunk/lib/silcsftp/Makefile.am Fri Jul 6 23:39:22 2007
@@ -2,7 +2,7 @@
# To make changes edit the ./lib/silcsftp/Makefile.ad file in the source tree.
# Source: ./lib/silcsftp/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:37 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silcsftp/Makefile.in
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcsftp/Makefile.in?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcsftp/Makefile.in (original)
+++ silc-client/trunk/lib/silcsftp/Makefile.in Fri Jul 6 23:39:22 2007
@@ -18,7 +18,7 @@
# To make changes edit the ./lib/silcsftp/Makefile.ad file in the source tree.
# Source: ./lib/silcsftp/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:37 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silcske/Makefile.am
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcske/Makefile.am?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcske/Makefile.am (original)
+++ silc-client/trunk/lib/silcske/Makefile.am Fri Jul 6 23:39:22 2007
@@ -2,7 +2,7 @@
# To make changes edit the ./lib/silcske/Makefile.ad file in the source tree.
# Source: ./lib/silcske/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:37 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silcske/Makefile.in
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcske/Makefile.in?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcske/Makefile.in (original)
+++ silc-client/trunk/lib/silcske/Makefile.in Fri Jul 6 23:39:22 2007
@@ -18,7 +18,7 @@
# To make changes edit the ./lib/silcske/Makefile.ad file in the source tree.
# Source: ./lib/silcske/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:37 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silcske/silcske.c
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcske/silcske.c?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcske/silcske.c (original)
+++ silc-client/trunk/lib/silcske/silcske.c Fri Jul 6 23:39:22 2007
@@ -16,7 +16,7 @@
GNU General Public License for more details.
*/
-/* $Id: silcske.c,v 1.92.2.1 2007/06/08 20:37:54 priikone Exp $ */
+/* $Id: silcske.c,v 1.92.2.3 2007/07/01 11:12:46 priikone Exp $ */
#include "silc.h"
#include "silcske.h"
@@ -671,19 +671,23 @@
{
SilcSKEStatus status = SILC_SKE_STATUS_OK;
SilcBuffer buf;
- unsigned char *e, *f, *KEY;
- SilcUInt32 e_len, f_len, KEY_len;
+ unsigned char *e, *f, *KEY, *s_data;
+ SilcUInt32 e_len, f_len, KEY_len, s_len;
int ret;
SILC_LOG_DEBUG(("Start"));
if (initiator == FALSE) {
+ s_data = (ske->start_payload_copy ?
+ silc_buffer_data(ske->start_payload_copy) : NULL);
+ s_len = (ske->start_payload_copy ?
+ silc_buffer_len(ske->start_payload_copy) : 0);
e = silc_mp_mp2bin(&ske->ke1_payload->x, 0, &e_len);
f = silc_mp_mp2bin(&ske->ke2_payload->x, 0, &f_len);
KEY = silc_mp_mp2bin(ske->KEY, 0, &KEY_len);
/* Format the buffer used to compute the hash value */
- buf = silc_buffer_alloc_size(silc_buffer_len(ske->start_payload_copy) +
+ buf = silc_buffer_alloc_size(s_len +
ske->ke2_payload->pk_len +
ske->ke1_payload->pk_len +
e_len + f_len + KEY_len);
@@ -694,28 +698,24 @@
if (!ske->ke1_payload->pk_data) {
ret =
silc_buffer_format(buf,
- SILC_STR_UI_XNSTRING(
- ske->start_payload_copy->data,
- silc_buffer_len(ske->start_payload_copy)),
- SILC_STR_UI_XNSTRING(ske->ke2_payload->pk_data,
- ske->ke2_payload->pk_len),
- SILC_STR_UI_XNSTRING(e, e_len),
- SILC_STR_UI_XNSTRING(f, f_len),
- SILC_STR_UI_XNSTRING(KEY, KEY_len),
+ SILC_STR_DATA(s_data, s_len),
+ SILC_STR_DATA(ske->ke2_payload->pk_data,
+ ske->ke2_payload->pk_len),
+ SILC_STR_DATA(e, e_len),
+ SILC_STR_DATA(f, f_len),
+ SILC_STR_DATA(KEY, KEY_len),
SILC_STR_END);
} else {
ret =
silc_buffer_format(buf,
- SILC_STR_UI_XNSTRING(
- ske->start_payload_copy->data,
- silc_buffer_len(ske->start_payload_copy)),
- SILC_STR_UI_XNSTRING(ske->ke2_payload->pk_data,
- ske->ke2_payload->pk_len),
- SILC_STR_UI_XNSTRING(ske->ke1_payload->pk_data,
- ske->ke1_payload->pk_len),
- SILC_STR_UI_XNSTRING(e, e_len),
- SILC_STR_UI_XNSTRING(f, f_len),
- SILC_STR_UI_XNSTRING(KEY, KEY_len),
+ SILC_STR_DATA(s_data, s_len),
+ SILC_STR_DATA(ske->ke2_payload->pk_data,
+ ske->ke2_payload->pk_len),
+ SILC_STR_DATA(ske->ke1_payload->pk_data,
+ ske->ke1_payload->pk_len),
+ SILC_STR_DATA(e, e_len),
+ SILC_STR_DATA(f, f_len),
+ SILC_STR_DATA(KEY, KEY_len),
SILC_STR_END);
}
if (ret == -1) {
@@ -736,21 +736,23 @@
silc_free(f);
silc_free(KEY);
} else {
+ s_data = (ske->start_payload_copy ?
+ silc_buffer_data(ske->start_payload_copy) : NULL);
+ s_len = (ske->start_payload_copy ?
+ silc_buffer_len(ske->start_payload_copy) : 0);
e = silc_mp_mp2bin(&ske->ke1_payload->x, 0, &e_len);
- buf = silc_buffer_alloc_size(silc_buffer_len(ske->start_payload_copy) +
- ske->ke1_payload->pk_len + e_len);
+ buf = silc_buffer_alloc_size(s_len + ske->ke1_payload->pk_len + e_len);
if (!buf)
return SILC_SKE_STATUS_OUT_OF_MEMORY;
/* Format the buffer used to compute the hash value */
ret =
silc_buffer_format(buf,
- SILC_STR_UI_XNSTRING(ske->start_payload_copy->data,
- silc_buffer_len(ske->start_payload_copy)),
- SILC_STR_UI_XNSTRING(ske->ke1_payload->pk_data,
- ske->ke1_payload->pk_len),
- SILC_STR_UI_XNSTRING(e, e_len),
+ SILC_STR_DATA(s_data, s_len),
+ SILC_STR_DATA(ske->ke1_payload->pk_data,
+ ske->ke1_payload->pk_len),
+ SILC_STR_DATA(e, e_len),
SILC_STR_END);
if (ret == -1) {
silc_buffer_free(buf);
@@ -1611,14 +1613,16 @@
payload = ske->ke2_payload;
+ /* Compute the HASH value */
+ SILC_LOG_DEBUG(("Computing HASH value"));
+ status = silc_ske_make_hash(ske, hash, &hash_len, FALSE);
+ if (status != SILC_SKE_STATUS_OK)
+ goto err;
+ ske->hash = silc_memdup(hash, hash_len);
+ ske->hash_len = hash_len;
+
if (ske->prop->public_key) {
SILC_LOG_DEBUG(("Public key is authentic"));
-
- /* Compute the hash value */
- status = silc_ske_make_hash(ske, hash, &hash_len, FALSE);
- if (status != SILC_SKE_STATUS_OK)
- goto err;
-
SILC_LOG_DEBUG(("Verifying signature (HASH)"));
/* Verify signature */
@@ -1630,9 +1634,6 @@
}
SILC_LOG_DEBUG(("Signature is Ok"));
-
- ske->hash = silc_memdup(hash, hash_len);
- ske->hash_len = hash_len;
memset(hash, 'F', hash_len);
}
@@ -1884,6 +1885,7 @@
SilcSKEStatus status;
SilcSKEStartPayload remote_payload = NULL;
SilcBuffer packet_buf = &ske->packet->buffer;
+ SilcID id;
SILC_LOG_DEBUG(("Start"));
@@ -1896,6 +1898,19 @@
ske->status = status;
silc_fsm_next(fsm, silc_ske_st_responder_error);
return SILC_FSM_CONTINUE;
+ }
+
+ /* Get remote ID and set it to stream */
+ if (ske->packet->src_id_len) {
+ silc_id_str2id(ske->packet->src_id, ske->packet->src_id_len,
+ ske->packet->src_id_type,
+ (ske->packet->src_id_type == SILC_ID_SERVER ?
+ (void *)&id.u.server_id : (void *)&id.u.client_id),
+ (ske->packet->src_id_type == SILC_ID_SERVER ?
+ sizeof(id.u.server_id) : sizeof(id.u.client_id)));
+ silc_packet_set_ids(ske->stream, 0, NULL, ske->packet->src_id_type,
+ (ske->packet->src_id_type == SILC_ID_SERVER ?
+ (void *)&id.u.server_id : (void *)&id.u.client_id));
}
/* Take a copy of the payload buffer for future use. It is used to
@@ -2209,22 +2224,23 @@
}
ske->ke2_payload->pk_data = pk;
ske->ke2_payload->pk_len = pk_len;
-
- SILC_LOG_DEBUG(("Computing HASH value"));
-
- /* Compute the hash value */
- memset(hash, 0, sizeof(hash));
- status = silc_ske_make_hash(ske, hash, &hash_len, FALSE);
- if (status != SILC_SKE_STATUS_OK) {
- /** Error computing hash */
- ske->status = status;
- silc_fsm_next(fsm, silc_ske_st_responder_error);
- return SILC_FSM_CONTINUE;
- }
-
- ske->hash = silc_memdup(hash, hash_len);
- ske->hash_len = hash_len;
-
+ }
+
+ SILC_LOG_DEBUG(("Computing HASH value"));
+
+ /* Compute the hash value */
+ memset(hash, 0, sizeof(hash));
+ status = silc_ske_make_hash(ske, hash, &hash_len, FALSE);
+ if (status != SILC_SKE_STATUS_OK) {
+ /** Error computing hash */
+ ske->status = status;
+ silc_fsm_next(fsm, silc_ske_st_responder_error);
+ return SILC_FSM_CONTINUE;
+ }
+ ske->hash = silc_memdup(hash, hash_len);
+ ske->hash_len = hash_len;
+
+ if (ske->public_key && ske->private_key) {
SILC_LOG_DEBUG(("Signing HASH value"));
/* Sign the hash value */
@@ -2262,7 +2278,7 @@
silc_buffer_free(payload_buf);
- /* In case we are doing rekey move to finish it. */
+ /* In case we are doing rekey move to finish it. */
if (ske->rekey) {
/** Finish rekey */
silc_fsm_next(fsm, silc_ske_st_rekey_responder_done);
@@ -2461,6 +2477,13 @@
return SILC_FSM_CONTINUE;
}
+ if (!silc_hash_alloc(ske->rekey->hash, &ske->prop->hash)) {
+ /** Cannot allocate hash */
+ ske->status = SILC_SKE_STATUS_OUT_OF_MEMORY;
+ silc_fsm_next(fsm, silc_ske_st_initiator_error);
+ return SILC_FSM_CONTINUE;
+ }
+
/* Send REKEY packet to start rekey protocol */
if (!silc_ske_packet_send(ske, SILC_PACKET_REKEY, 0, NULL, 0)) {
/** Error sending packet */
@@ -2506,13 +2529,7 @@
silc_packet_get_keys(ske->stream, &send_key, NULL, &hmac_send, NULL);
key_len = silc_cipher_get_key_len(send_key);
block_len = silc_cipher_get_block_len(send_key);
-
- if (!silc_hash_alloc(ske->rekey->hash, &hash)) {
- /** Cannot allocate hash */
- ske->status = SILC_SKE_STATUS_OUT_OF_MEMORY;
- silc_fsm_next(fsm, silc_ske_st_initiator_error);
- return SILC_FSM_CONTINUE;
- }
+ hash = ske->prop->hash;
hash_len = silc_hash_len(hash);
/* Process key material */
@@ -2543,7 +2560,6 @@
ske->prop->cipher = send_key;
ske->prop->hmac = hmac_send;
- ske->prop->hash = hash;
/* Get sending keys */
if (!silc_ske_set_keys(ske, ske->keymat, ske->prop, &send_key, NULL,
@@ -2660,8 +2676,11 @@
{
SILC_LOG_DEBUG(("Start SKE rekey as initator"));
- if (!ske || !stream || !rekey)
+ if (!ske || !stream || !rekey) {
+ SILC_LOG_ERROR(("Missing arguments to silc_ske_rekey_initiator"));
+ SILC_ASSERT(rekey);
return NULL;
+ }
if (!silc_async_init(&ske->op, silc_ske_abort, NULL, ske))
return NULL;
@@ -2744,6 +2763,13 @@
return SILC_FSM_CONTINUE;
}
+ if (!silc_hash_alloc(ske->rekey->hash, &ske->prop->hash)) {
+ /** Cannot allocate hash */
+ ske->status = SILC_SKE_STATUS_OUT_OF_MEMORY;
+ silc_fsm_next(fsm, silc_ske_st_responder_error);
+ return SILC_FSM_CONTINUE;
+ }
+
/* If doing rekey without PFS, move directly to the end of the protocol. */
if (!ske->rekey->pfs) {
/** Rekey without PFS */
@@ -2780,13 +2806,7 @@
silc_packet_get_keys(ske->stream, &send_key, NULL, &hmac_send, NULL);
key_len = silc_cipher_get_key_len(send_key);
block_len = silc_cipher_get_block_len(send_key);
-
- if (!silc_hash_alloc(ske->rekey->hash, &hash)) {
- /** Cannot allocate hash */
- ske->status = SILC_SKE_STATUS_OUT_OF_MEMORY;
- silc_fsm_next(fsm, silc_ske_st_responder_error);
- return SILC_FSM_CONTINUE;
- }
+ hash = ske->prop->hash;
hash_len = silc_hash_len(hash);
/* Process key material */
@@ -2817,7 +2837,6 @@
ske->prop->cipher = send_key;
ske->prop->hmac = hmac_send;
- ske->prop->hash = hash;
/* Get sending keys */
if (!silc_ske_set_keys(ske, ske->keymat, ske->prop, &send_key, NULL,
@@ -2998,7 +3017,7 @@
return NULL;
silc_buffer_format(buf,
SILC_STR_UI_CHAR(0),
- SILC_STR_UI_XNSTRING(data, data_len),
+ SILC_STR_DATA(data, data_len),
SILC_STR_END);
/* Take IVs */
@@ -3037,8 +3056,8 @@
if (!dist)
return NULL;
silc_buffer_format(dist,
- SILC_STR_UI_XNSTRING(data, data_len),
- SILC_STR_UI_XNSTRING(k1, hash_len),
+ SILC_STR_DATA(data, data_len),
+ SILC_STR_DATA(k1, hash_len),
SILC_STR_END);
memset(k2, 0, sizeof(k2));
silc_hash_make(hash, dist->data, silc_buffer_len(dist), k2);
@@ -3048,7 +3067,7 @@
silc_buffer_pull_tail(dist, hash_len);
silc_buffer_pull(dist, data_len + hash_len);
silc_buffer_format(dist,
- SILC_STR_UI_XNSTRING(k2, hash_len),
+ SILC_STR_DATA(k2, hash_len),
SILC_STR_END);
silc_buffer_push(dist, data_len + hash_len);
memset(k3, 0, sizeof(k3));
@@ -3100,8 +3119,8 @@
if (!dist)
return NULL;
silc_buffer_format(dist,
- SILC_STR_UI_XNSTRING(data, data_len),
- SILC_STR_UI_XNSTRING(k1, hash_len),
+ SILC_STR_DATA(data, data_len),
+ SILC_STR_DATA(k1, hash_len),
SILC_STR_END);
memset(k2, 0, sizeof(k2));
silc_hash_make(hash, dist->data, silc_buffer_len(dist), k2);
@@ -3111,7 +3130,7 @@
silc_buffer_pull_tail(dist, hash_len);
silc_buffer_pull(dist, data_len + hash_len);
silc_buffer_format(dist,
- SILC_STR_UI_XNSTRING(k2, hash_len),
+ SILC_STR_DATA(k2, hash_len),
SILC_STR_END);
silc_buffer_push(dist, data_len + hash_len);
memset(k3, 0, sizeof(k3));
@@ -3187,8 +3206,8 @@
if (!buf)
return NULL;
silc_buffer_format(buf,
- SILC_STR_UI_XNSTRING(tmpbuf, klen),
- SILC_STR_UI_XNSTRING(ske->hash, ske->hash_len),
+ SILC_STR_DATA(tmpbuf, klen),
+ SILC_STR_DATA(ske->hash, ske->hash_len),
SILC_STR_END);
/* Process the key material */
Modified: silc-client/trunk/lib/silcske/silcske.h
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcske/silcske.h?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcske/silcske.h (original)
+++ silc-client/trunk/lib/silcske/silcske.h Fri Jul 6 23:39:22 2007
@@ -352,6 +352,10 @@
* SILC_SKE_SP_FLAG_MUTUAL is not set and you are initiator. For
* responder both `public_key' and `private_key' must be set.
*
+ * When allocating SKE session for rekey, the `repository' and `private_key'
+ * pointers must be NULL and the SilcSKEVerifyCb callback must not be
+ * set with silc_ske_set_callbacks.
+ *
* EXMPALE
*
* // Initiator example
@@ -443,8 +447,9 @@
* the protocol has completed. The `stream' is the network connection
* to the remote host. The SKE library will handle all key exchange
* packets sent and received in the `stream' connection. The library will
- * also set the remote host's ID automatically to the `stream'. The
- * `params' include SKE parameters, and it must be provided.
+ * also set the remote host's ID automatically to the `stream' if it is
+ * present in the exchanged packets. The `params' include SKE parameters,
+ * and it must be provided.
*
* If the `start_payload' is NULL the library will generate it
* automatically. Caller may provide it if it wants to send its own
@@ -478,8 +483,10 @@
* callback that was set in silc_ske_set_callbacks will be called once
* the protocol has completed. The `stream' is the network connection
* to the remote host. The SKE library will handle all key exchange
- * packets sent and received in the `stream' connection. The `params'
- * include SKE parameters, and must be provided.
+ * packets sent and received in the `stream' connection. The library will
+ * also set the remote hosts's ID automatically to the `stream' if it is
+ * present in the exchanged packets. The `params' include SKE parameters,
+ * and must be provided.
*
* This function returns SilcAsyncOperation operation context which can
* be used to control the protocol from the application. Application may
Modified: silc-client/trunk/lib/silcskr/Makefile.am
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcskr/Makefile.am?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcskr/Makefile.am (original)
+++ silc-client/trunk/lib/silcskr/Makefile.am Fri Jul 6 23:39:22 2007
@@ -2,7 +2,7 @@
# To make changes edit the ./lib/silcskr/Makefile.ad file in the source tree.
# Source: ./lib/silcskr/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:37 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silcskr/Makefile.in
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcskr/Makefile.in?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcskr/Makefile.in (original)
+++ silc-client/trunk/lib/silcskr/Makefile.in Fri Jul 6 23:39:22 2007
@@ -18,7 +18,7 @@
# To make changes edit the ./lib/silcskr/Makefile.ad file in the source tree.
# Source: ./lib/silcskr/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:37 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silcutil/Makefile.am
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcutil/Makefile.am?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcutil/Makefile.am (original)
+++ silc-client/trunk/lib/silcutil/Makefile.am Fri Jul 6 23:39:22 2007
@@ -2,7 +2,7 @@
# To make changes edit the ./lib/silcutil/Makefile.ad file in the source tree.
# Source: ./lib/silcutil/Makefile.ad
-# Generated: Thu Jun 28 19:52:46 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:36 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silcutil/Makefile.in
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcutil/Makefile.in?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcutil/Makefile.in (original)
+++ silc-client/trunk/lib/silcutil/Makefile.in Fri Jul 6 23:39:22 2007
@@ -18,7 +18,7 @@
# To make changes edit the ./lib/silcutil/Makefile.ad file in the source tree.
# Source: ./lib/silcutil/Makefile.ad
-# Generated: Thu Jun 28 19:52:46 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:36 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silcvcard/Makefile.am
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcvcard/Makefile.am?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcvcard/Makefile.am (original)
+++ silc-client/trunk/lib/silcvcard/Makefile.am Fri Jul 6 23:39:22 2007
@@ -2,7 +2,7 @@
# To make changes edit the ./lib/silcvcard/Makefile.ad file in the source tree.
# Source: ./lib/silcvcard/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:37 EEST 2007 by priikone
# Distribution: Client
# License:
Modified: silc-client/trunk/lib/silcvcard/Makefile.in
URL: http://svn.debian.org/wsvn/pkg-silc/silc-client/trunk/lib/silcvcard/Makefile.in?rev=137&op=diff
==============================================================================
--- silc-client/trunk/lib/silcvcard/Makefile.in (original)
+++ silc-client/trunk/lib/silcvcard/Makefile.in Fri Jul 6 23:39:22 2007
@@ -18,7 +18,7 @@
# To make changes edit the ./lib/silcvcard/Makefile.ad file in the source tree.
# Source: ./lib/silcvcard/Makefile.ad
-# Generated: Thu Jun 28 19:52:47 EEST 2007 by priikone
+# Generated: Wed Jul 4 08:07:37 EEST 2007 by priikone
# Distribution: Client
# License:
More information about the Pkg-silc-commits
mailing list