From 7c4bc9cb7e8435c49b99a84e506ebbc34f909463 Mon Sep 17 00:00:00 2001 From: Pekka Riikonen Date: Wed, 19 Jul 2000 07:03:23 +0000 Subject: [PATCH] updates --- CHANGES | 2 + README | 7 ++++ doc/draft-riikonen-silc-ke-auth-00.nroff | 47 +++++++++++++++--------- doc/draft-riikonen-silc-spec-00.nroff | 34 +++++++++++++++++ includes/clientincludes.h | 2 + includes/silcincludes.h | 2 - includes/version.h | 3 +- 7 files changed, 77 insertions(+), 20 deletions(-) diff --git a/CHANGES b/CHANGES index d5d59fa0..90e6874f 100644 --- a/CHANGES +++ b/CHANGES @@ -15,6 +15,8 @@ Tue Jul 18 20:41:20 EEST 2000 Pekka Riikonen Many changes in lib/silcske/silcske.[ch] and in lib/silcske/payload.[ch]. + * Added ^U functionality, clear input line. Patch from cras. + Mon Jul 17 23:33:26 EEST 2000 Pekka Riikonen * Mainly small bugfixes on core library. Fixed some debugging diff --git a/README b/README index f9524fe6..dad553da 100644 --- a/README +++ b/README @@ -93,6 +93,13 @@ Following commands has been, at least partly, implemented: Requests information about a server. If argument is not specified current server is used. + /AWAY [] + + Sets away message. When private message is received and + away message is set the client automatically replies to + the sender with the away message. To remove away message + give the command without arguments. + /QUIT Quits session. Connection to remote server is closed. diff --git a/doc/draft-riikonen-silc-ke-auth-00.nroff b/doc/draft-riikonen-silc-ke-auth-00.nroff index 58c7444c..9dc849ed 100644 --- a/doc/draft-riikonen-silc-ke-auth-00.nroff +++ b/doc/draft-riikonen-silc-ke-auth-00.nroff @@ -242,6 +242,12 @@ not include spaces (` '). + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +| Version String Length | | ++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + +| | +~ Version String ~ +| | ++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Key Exchange Grp Length | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | | @@ -308,38 +314,47 @@ o Flags (1 byte) - Indicates flags to be used in the key must not be set. o Payload Length (2 bytes) - Length of the entire Key Exchange - Start payload. + Start payload, not including any other field. o Cookie (16 bytes) - Cookie that uniforms this payload so that each of the party cannot determine the payload before hand. +o Version String Length (2 bytes) - The length of the Version + String field, not including any other field. + +o Version String (variable length) - Indicates the version of + the sender of this payload. Initiator sets this when sending + the payload and responder sets this when it replies by sending + this payload. See [SILC1] for definition of the version + string format. + o Key Exchange Grp Length (2 bytes) - The length of the - key exchange group list, including this field as well. + key exchange group list, not including any other field. o Key Exchange Group (variable length) - The list of key exchange groups. See the section 2.1.2 SILC Key Exchange Groups for definitions of these groups. o PKCS Alg Length (2 bytes) - The length of the PKCS algorithms - list, including this field as well. + list, not including any other field. o PKCS Algorithms (variable length) - The list of PKCS algorithms. o Encryption Alg Length (2 bytes) - The length of the encryption - algorithms list, including this field as well. + algorithms list, not including any other field. o Encryption Algorithms (variable length) - The list of encryption algorithms. o Hash Alg Length (2 bytes) - The length of the Hash algorithms - list, including this field as well. + list, not including any other field. o Hash Algorithms (variable length) - The list of Hash algorithms. o Compression Alg Length (2 bytes) - The length of the - compression algorithms list, including this field as well. + compression algorithms list, not including any other field. o Compression Algorithms (variable length) - The list of compression algorithms. @@ -402,9 +417,8 @@ Figure 2: Key Exchange 1 Payload .in 6 -o Public Key Length (2 bytes) - The length of the public key - (or certificate), including this field and public key type - field as well. +o Public Key Length (2 bytes) - The length of the Public Key + (or certificate) field, not including any other field. o Public Key Type (2 bytes) - The public key (or certificate) type. This field indicates the type of the public key in @@ -426,8 +440,8 @@ o Public Key Type (2 bytes) - The public key (or certificate) sending SILC_PACKET_FAILURE message. o Public Data Length (2 bytes) - The length of the public - data computed by the responder, including this field - as well. + data computed by the responder, not including any other + field. o Public Data (variable length) - The public data to be sent to the responder. See section 2.2 Key Exchange @@ -480,9 +494,8 @@ Figure 3: Key Exchange 2 Payload .in 6 -o Public Key Length (2 bytes) - The length of the public key - (or certificate), including this field and public key type - field as well. +o Public Key Length (2 bytes) - The length of the Public Key + (or certificate) field, not including any other field. o Public Key Type (2 bytes) - The public key (or certificate) type. This field indicates the type of the public key in @@ -495,8 +508,8 @@ o Public Key of the host (variable length) - The public is indicated by previous Public Key Type field. o Public Data Length (2 bytes) - The length of the public - data computed by the responder, including this field - as well. + data computed by the responder, not including any other + field. o Public Data (variable length) - The public data computed by the responder. See section 2.2 Key Exchange Procedure @@ -504,7 +517,7 @@ o Public Data (variable length) - The public data computed value is binary encoded. o Signature Length (2 bytes) - The length of the signature, - including the length of this field as well. + not including any other field. o Signature Data (variable length) - The signature signed by the responder. The receiver of this signature must diff --git a/doc/draft-riikonen-silc-spec-00.nroff b/doc/draft-riikonen-silc-spec-00.nroff index 72897fd0..ab22ce39 100644 --- a/doc/draft-riikonen-silc-spec-00.nroff +++ b/doc/draft-riikonen-silc-spec-00.nroff @@ -106,6 +106,7 @@ Table of Contents 3.10.3 MAC Algorithms ..................................... 20 3.10.4 Compression Algorithms ............................. 21 3.11 SILC Public Key .......................................... 21 + 3.12 SILC Version Detection ................................... 24 4 SILC Procedures ............................................... 24 4.1 Creating Client Connection ................................ 24 4.2 Creating Server Connection ................................ 25 @@ -1219,6 +1220,39 @@ All fields in the public key are in MSB (most significant byte first) order. +.ti 0 +3.12 SILC Version Detection + +The version detection of both client and server is performed at the +connection phase while executing the SILC Key Exchange protocol. The +version identifier is exchanged between intiator and responder. The +version identifier is of following format: + +.in 6 +SILC-- +.in 3 + +The version strings are of following format: + +.in 6 +protocol version = . +software version = [.[.]] +.in 3 + +Protocol version may provide both major and minor version. Currently +implementations must set the protocol version and accept the protocol +version as SILC-1.0-. + +Software version may provide major, minor and build version. The +software version may be freely set and accepted. + +Thus, the version string could be, for example: + +.in 6 +SILC-1.0-1.2 +.in 3 + + .ti 0 4 SILC Procedures diff --git a/includes/clientincludes.h b/includes/clientincludes.h index c4137a23..23841663 100644 --- a/includes/clientincludes.h +++ b/includes/clientincludes.h @@ -21,6 +21,8 @@ #ifndef CLIENTINCLUDES_H #define CLIENTINCLUDES_H +#include "silcdefs.h" + #include #include #include diff --git a/includes/silcincludes.h b/includes/silcincludes.h index 74167506..0358befd 100644 --- a/includes/silcincludes.h +++ b/includes/silcincludes.h @@ -46,8 +46,6 @@ #ifdef HAVE_GETOPT_H #include -#else -#error getopt.h not found in the system #endif #ifdef HAVE_SIGNAL_H diff --git a/includes/version.h b/includes/version.h index ad1ff2c5..8d70994c 100644 --- a/includes/version.h +++ b/includes/version.h @@ -33,7 +33,8 @@ typedef unsigned char SilcVersion; #define SILC_VERSION_1 '\1' /* SILC version string */ -const char *silc_version = "17072000"; +const char *silc_version = "18072000"; +const char *silc_version_string = "SILC-1.0-18072000"; const char *silc_name = "SILC"; const char *silc_fullname = "Secure Internet Live Conferencing"; -- 2.24.0