Updates to comly with new source tree.
authorPekka Riikonen <priikone@silcnet.org>
Wed, 13 Sep 2000 17:50:26 +0000 (17:50 +0000)
committerPekka Riikonen <priikone@silcnet.org>
Wed, 13 Sep 2000 17:50:26 +0000 (17:50 +0000)
20 files changed:
CHANGES
TODO
apps/silcd/Makefile.am
apps/silcd/server.c
apps/silcd/server_version.c
configure.in
doc/draft-riikonen-silc-ke-auth-00.nroff
doc/draft-riikonen-silc-pp-00.nroff
doc/draft-riikonen-silc-spec-00.nroff
includes/clientincludes.h
includes/silcincludes.h
includes/version.h
lib/Makefile.am
lib/contrib/Makefile.am
lib/silccrypt/Makefile.am
lib/silcmath/Makefile.am
lib/silcsim/Makefile.am
lib/silcske/Makefile.am
prepare
prepare-clean

diff --git a/CHANGES b/CHANGES
index 3cbade92e1c197ab402d1f423b8671cfa64f46f0..75e0eb52e479ecf814e1269e6be85821887662cc 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,61 @@
+Wed Sep 13 18:10:14 EEST 2000  Pekka Riikonen <priikone@poseidon.pspt.fi>
+
+       * Splitted core library.  Core library (lib/silccore) includes
+         now only SILC protocol specific core (and common) components.
+         Created new utility library (lib/silcutil) that includes more
+         generic purpose stuff.  The stuff for util library was taken
+         from the old core library.  This was minor and easy split.
+
+       * Created SILC Client Library (lib/silcclient) that includes
+         implementation of the SILC client without user interface.  This
+         was major move from silc/ directory.  The code has been changed
+         so that it is transparent towards the user interface.  The
+         silc/ directory includes now the same user interface as before
+         and it uses the new client library.  Read lib/silcclient/README.
+         Basicly, the client library performs everything else related
+         to SILC except user interface handling.  Also, configuration
+         files are considered to be part of user interface and library
+         does not handle them.
+
+         This change also changed a lot of structures, function naming etc.
+         Most important change was that SilcClientWindow object was
+         renamed to SilcClientConnection in the client library.  Created
+         also new file lib/silcclient/ops.h.  Also added new files
+         silc/local_command.[ch] and silc/client_ops.[ch].
+
+         All these changes were made to make it easier for user interface
+         designers to create what ever user interface for the SILC client
+         they want.
+
+         It is also expected that the server will be moved to lib
+         directory as well and SILC Server Library will be created;
+         sometimes in the future.
+
+       * Removed Local commands from lib/silccore/silccommand.h as
+         they are application specific and new client library does not
+         handle any of those anymore.
+
+       * Several functions moved to lib/silcutil/silcutilc.[ch] from
+         old client implementation in silc/.
+
+       * Added support for callback functions in SILC_LOG_* macros.
+         Application can now set its own callbacks that will be called
+         instead of using the default functions that will always print
+         the debug messages to stderr (or stdout).  Also, debugging can
+         now be disabled by setting silc_debug to FALSE and re-enabled by
+         setting it to TRUE.  Note, that logging will still work even
+         if debugging is disabled.
+
+         New functions in lib/silcutil/silclog.[ch]: silc_log_set_callbacks,
+         silc_log_reset_callbacks, silc_log_set_debug_callbacks and
+         silc_log_reset_debug_callbacks.
+
+       * To enable debugging in silc client one must give now -d
+         option on command line.
+
+       * Changed silc_schedule_init to automatically allocate task queues
+         if they are not allocated before calling it.
+
 Thu Sep  7 10:49:33 EEST 2000  Pekka Riikonen <priikone@poseidon.pspt.fi>
 
        * Added GMP 3.1 into math library.
diff --git a/TODO b/TODO
index 464e8704a248929347140396de87683572ef48c1..9dacbbb69ac60fa233a3d2eb2eaa53230f7ae6a5 100644 (file)
--- a/TODO
+++ b/TODO
@@ -233,10 +233,6 @@ TODO In SILC Libraries
    cleaner.  Introducing silc_cipher_encrypt/decrypt/set_key etc.
    functions (I actually don't understand why have I left these un-done).
 
- o Scheduler should automatically allocate task queues if NULL pointers 
-   are passed to the silc_schedule_init.  Would make initialization 
-   cleaner.
-
  o Packet processing routines in client and server are actually pretty
    much generic and should be moved from the client/server to the library
    as generic routines (silc_<client/server>_packet_decrypt_rest* etc).
index 9310116e8636285a418ac202f6259224d8942769..6709db5b6ae84afb1392efb8287b2a8f0c1d2801 100644 (file)
@@ -32,11 +32,13 @@ silcd_SOURCES = \
        silcd.c \
        server_version.c
 
+silcd_DEPENDENCIES = ../lib/libsilc.a
+
 LDADD = -L. -L.. -L../lib -lsilc
 
 EXTRA_DIST = *.h
 
 INCLUDES = -I. -I.. -I../lib/silccore -I../lib/silccrypt \
        -I../lib/silcmath -I../lib/silcske -I../lib/silcsim \
-       -I../includes \
+       -I../includes -I../lib/silcutil \
        -I../lib/silcmath/gmp
index e652099db0e49938bd042146594b8e630d364fe6..a8d0fc3aa961b10f7e10d8c2e8f8274be9e58b02 100644 (file)
@@ -25,6 +25,9 @@
 /*
  * $Id$
  * $Log$
+ * Revision 1.14  2000/09/13 17:50:26  priikone
+ *     Updates to comly with new source tree.
+ *
  * Revision 1.13  2000/08/21 14:21:21  priikone
  *     Fixed channel joining and channel message sending inside a
  *     SILC cell. Added silc_server_send_remove_channel_user and
@@ -97,7 +100,7 @@ SILC_TASK_CALLBACK(silc_server_packet_process);
 SILC_TASK_CALLBACK(silc_server_packet_parse_real);
 SILC_TASK_CALLBACK(silc_server_timeout_remote);
 
-extern char server_version[];
+extern char *server_version;
 
 /* Allocates a new SILC server object. This has to be done before the server
    can be used. After allocation one must call silc_server_init to initialize
@@ -336,8 +339,8 @@ int silc_server_init(SilcServer server)
   silc_server_protocols_register();
 
   /* Initialize the scheduler */
-  silc_schedule_init(server->io_queue, server->timeout_queue, 
-                    server->generic_queue, 
+  silc_schedule_init(&server->io_queue, &server->timeout_queue, 
+                    &server->generic_queue, 
                     SILC_SERVER_MAX_CONNECTIONS);
   
   /* Add the first task to the queue. This is task that is executed by
index d648e8a69f2dd9bc80bfafa716d5dc556b4008ec..34992677e5f56639b42f268b5021ef5665a6f118 100644 (file)
@@ -19,5 +19,6 @@
 */
 
 #include "serverincludes.h"
+#include "version_internal.h"
 
-const char server_version[] = "26072000";
+const char *server_version = SILC_VERSION_STRING;
index b983c1eb64c9e57cf344bd81d6f613fc761d8aa7..20904a52056f06cf6482b412a7747a51366a0fd8 100644 (file)
@@ -33,7 +33,7 @@ case "$target" in
     ;;
 esac
 
-AM_INIT_AUTOMAKE(silc, 26072000)
+AM_INIT_AUTOMAKE(silc, 14092000)
 AC_PREREQ(2.3)
 AM_CONFIG_HEADER(includes/silcdefs.h)
 
@@ -239,11 +239,13 @@ doc/Makefile
 includes/Makefile
 lib/Makefile
 lib/contrib/Makefile
+lib/silcclient/Makefile
 lib/silccore/Makefile
 lib/silccrypt/Makefile
 lib/silcmath/Makefile
 lib/silcsim/Makefile
 lib/silcsim/modules/Makefile
 lib/silcske/Makefile
+lib/silcutil/Makefile
 silc/Makefile
 silcd/Makefile)
index 9dc849eddc30db3755e213c7604f30ad22b61b6b..18d604b32e6890695d407114ce0c4b8fac886983 100644 (file)
@@ -8,7 +8,7 @@
 .ds RF FORMFEED[Page %]
 .ds CF
 .ds LH INTERNET-DRAFT
-.ds RH 28 June 2000
+.ds RH 13 September 2000
 .ds CH
 .na
 .hy 0
@@ -16,8 +16,8 @@
 .nf
 Network Working Group                                      P. Riikonen
 INTERNET-DRAFT
-draft-riikonen-silc-ke-auth-00.txt                        28 June 2000
-Expires: 28 Jan 2001
+draft-riikonen-silc-ke-auth-00.txt                   13 September 2000
+Expires: 13 May 2001
 
 .in 3
 
@@ -1051,5 +1051,5 @@ Finland
 
 EMail: priikone@poseidon.pspt.fi
 
-This Internet-Draft expires 28 Jan 2001 
+This Internet-Draft expires 13 May 2001 
 
index 10516d0a71d3eac9829063dd08e14a4c6825808d..d246a145b655cc24564cbfa684e017c8151f4951 100644 (file)
@@ -8,7 +8,7 @@
 .ds RF FORMFEED[Page %]
 .ds CF
 .ds LH Internet Draft
-.ds RH 28 June 2000
+.ds RH 13 September 2000
 .ds CH
 .na
 .hy 0
@@ -16,8 +16,8 @@
 .nf
 Network Working Group                                      P. Riikonen
 Internet-Draft
-draft-riikonen-silc-pp-00.txt                             28 June 2000
-Expires: 28 Jan 2001
+draft-riikonen-silc-pp-00.txt                        13 September 2000
+Expires: 13 May 2001
 
 .in 3
 
@@ -2434,4 +2434,4 @@ Finland
 
 EMail: priikone@poseidon.pspt.fi
 
-This Internet-Draft expires 28 Jan 2001
+This Internet-Draft expires 13 May 2001
index 9c1128a94c7fc8efee7b8a670bd88525a0fed3ce..5bd3c04c3b9950932db90f4925fd166d02ea460c 100644 (file)
@@ -8,7 +8,7 @@
 .ds RF FORMFEED[Page %]
 .ds CF
 .ds LH Internet Draft
-.ds RH 28 June 2000
+.ds RH 13 September 2000
 .ds CH
 .na
 .hy 0
@@ -16,8 +16,8 @@
 .nf
 Network Working Group                                      P. Riikonen
 Internet-Draft
-draft-riikonen-silc-spec-00.txt                           28 June 2000
-Expires: 28 Jan 2001
+draft-riikonen-silc-spec-00.txt                      13 September 2000
+Expires: 13 May 2001
 
 .in 3
 
@@ -3091,4 +3091,4 @@ Finland
 
 EMail: priikone@poseidon.pspt.fi
 
-This Internet-Draft expires 28 Jan 2001 
+This Internet-Draft expires 13 May 2001 
index 238416635ef0db6f6576a90c0fd1a20fbb63c8b6..d579b1276c8d304ad96dc2566454b10626802567 100644 (file)
 
 /* Generic includes */
 #include "silcincludes.h"
+#include "clientlibincludes.h"
 
 /* SILC Client includes */
 #include "screen.h"
 #include "clientconfig.h"
-#include "client.h"
-#include "command.h"
-#include "command_reply.h"
-#include "idlist.h"
+#include "local_command.h"
 #include "clientutil.h"
-#include "protocol.h"
 #include "silc.h"
+#include "client_ops.h"
 
 #endif
index 0358befd4ff2bfea8b4f9b459f87c15e1b674649..d5fe7449a3623ec0866becab93fadd2c6458d763 100644 (file)
 #include "silcrng.h"
 #include "silcpkcs.h"
 
-/* SILC core library includes */
+/* SILC util library includes */
 #include "silclog.h"
 #include "silcmemory.h"
 #include "silcbuffer.h"
 #include "silcnet.h"
 #include "silcutil.h"
 #include "silcconfig.h"
-#include "id.h"
-#include "idcache.h"
 #include "silctask.h"
 #include "silcschedule.h"
+
+/* SILC core library includes */
+#include "id.h"
+#include "idcache.h"
 #include "silcprotocol.h"
 #include "silcsockconn.h"
 #include "silccommand.h"
index d724ec3293e89867ce1c2e4b57e1364fe2ba7990..a878e25df893552ac9e8997d8462d4090924a22b 100644 (file)
@@ -21,6 +21,8 @@
 #ifndef VERSION_H
 #define VERSION_H
 
+#include "version_internal.h"
+
 /* Version type definition */
 typedef unsigned char SilcVersion;
 
@@ -33,8 +35,8 @@ typedef unsigned char SilcVersion;
 #define SILC_VERSION_1 '\1'
 
 /* SILC version string */
-const char *silc_version = "26072000";
-const char *silc_version_string = "SILC-1.0-26072000";
+const char *silc_version = SILC_VERSION_STRING;
+const char *silc_version_string = SILC_PROTOCOL_VERSION_STRING;
 const char *silc_name = "SILC";
 const char *silc_fullname = "Secure Internet Live Conferencing";
 
index e67620e39d58e018296d9cc6e292a75c60edd695..dd537292c10feac7edd8fb95a4edb740f84c84d1 100644 (file)
@@ -24,14 +24,39 @@ SUBDIRS = \
        silccrypt \
        silcsim \
        silcmath \
-       silcske
+       silcske \
+       silcutil \
+       silcclient
 #        zlib
 
-CLEANFILES = libsilc.a
-DISTCLEANFILES = libsilc.a
+# SILC Library dirs
+SILCLIB_DIRS = \
+       contrib \
+       silccore \
+       silccrypt \
+       silcsim \
+       silcmath \
+       silcske \
+       silcutil
 
-all:  libsilc.a
+# SILC Client Library dirs
+SILCCLIENTLIB_DIRS = \
+       silcclient
+
+CLEANFILES = libsilc.a libsilcclient.a
+DISTCLEANFILES = libsilc.a libsilcclient.a
+
+all:  remove libsilc.a libsilcclient.a
+
+remove:
+       -rm -rf libsilc.a
+       -rm -rf libsilcclient.a
 
 libsilc.a:
-       find . -type f -name *.o | xargs $(AR) cru libsilc.a
+       find $(SILCLIB_DIRS) -type f -name *.o | xargs $(AR) cru libsilc.a
        ranlib libsilc.a
+
+libsilcclient.a:
+       find $(SILCCLIENTLIB_DIRS) -type f -name *.o | xargs $(AR) cru libsilcclient.a
+       ranlib libsilcclient.a
+
index 343a02e8ffbb0f2f3b219fa1f69dbc5e5a3f368a..b8bde5f04924fc8ed40713d2ce49cd71d1be87f5 100644 (file)
@@ -27,5 +27,5 @@ libcontrib_a_SOURCES = \
 EXTRA_DIST = *.h
 
 INCLUDES = -I. -I.. -I../silccrypt -I../silcmath -I../silcske \
-       -I../silcsim -I../.. -I../../includes -I../silccore \
+       -I../silcsim -I../.. -I../../includes -I../silccore -I../silcutil \
        -I../silcmath/gmp
index 6e7514e37dceaa6bc6d7748fb0b565c5cd1569ce..5af4171941602c20d5c859fecaa6955cc6748dff 100644 (file)
@@ -40,5 +40,5 @@ libsilccrypt_a_SOURCES = \
 EXTRA_DIST = *.h
 
 INCLUDES = -I. -I.. -I../silccore -I../silcmath -I../silcske \
-       -I../silcsim -I../.. -I../../includes \
+       -I../silcsim -I../.. -I../silcutil -I../../includes \
        -I../silcmath/gmp
index c9aaf66bdf5924bc461224b6fb19ed71c8171c57..fd3ebd7b616c218455a54985c4089eab0109c022 100644 (file)
@@ -30,5 +30,5 @@ libsilcmath_a_SOURCES = \
 EXTRA_DIST = *.h
 
 INCLUDES = -I. -I.. -I../silccrypt -I../silccore -I../silcske \
-       -I../silcsim -I../.. -I../../includes \
+       -I../silcsim -I../.. -I../silcutil -I../../includes \
        -I./gmp
index 64dfa8629aa622160601ede958dcaa78a5da10e5..0c4f30bfb50f3f91b4bdf6b45f95caf444a94c87 100644 (file)
@@ -71,5 +71,5 @@ CLEANFILES = $(SIM_MODULES_DIR)/*.sim.so
 EXTRA_DIST = *.h
 
 INCLUDES = -I. -I.. -I../silccrypt -I../silcmath -I../silcske \
-       -I../silccore -I../.. -I../../includes \
+       -I../silccore -I../.. -I../silcutil -I../../includes \
        -I../silcmath/gmp
index c2ac3a96c4e193aa35701d7c65934e549ca9ae3e..eb4e5f1a055cd6d4eea892ba3acc18c2227e1208 100644 (file)
@@ -27,6 +27,6 @@ libsilcske_a_SOURCES = \
 
 EXTRA_DIST = *.h
 
-INCLUDES = -I. -I.. -I../silccrypt -I../silccore \
+INCLUDES = -I. -I.. -I../silccrypt -I../silccore -I../silcutil \
        -I../silcsim -I../silcmath -I../.. -I../../includes \
         -I../silcmath/gmp
diff --git a/prepare b/prepare
index 7ac2ad60fdd53be41bcddc29f57a197b9d250689..02bc775667d2dd8d02fe8d87da0fae02e2626390 100755 (executable)
--- a/prepare
+++ b/prepare
@@ -30,4 +30,11 @@ aclocal
 autoconf
 autoheader
 automake
+
+version=`date +%d%m%Y`
+file=includes/version_internal.h
+echo "/* Automatically generated by ./prepare */" >$file
+echo "#define SILC_VERSION_STRING \"$version\"" >>$file
+echo "#define SILC_PROTOCOL_VERSION_STRING \"SILC-1.0-$version\"" >>$file
+
 echo "Done, now run ./configure and make."
index b7a92bb639eb36adcf0a9d74e338f7e26304ff8f..bdd83b42394d84ec36c58350f6da8ce9399ef5b1 100755 (executable)
@@ -28,19 +28,22 @@ echo "All errors and warnings may be safely ignored."
 make distclean
 rm -f includes/stamp-*
 rm -f includes/silcconfig.*
+rm -f includes/version_internal.h
 rm -f Makefile.in
 rm -f doc/draft-*.txt
 rm -f doc/Makefile.in
 rm -f includes/Makefile.in
 rm -f lib/Makefile.in
 rm -f lib/contrib/Makefile.in
+rm -f lib/silcclient/Makefile.in
 rm -f lib/silccore/Makefile.in
+rm -f lib/silcutil/Makefile.in
 rm -f lib/silccrypt/Makefile.in
 rm -f lib/silcmath/Makefile.in
 rm -f lib/silcsim/Makefile.in
 rm -f lib/silcsim/modules/Makefile.in
 rm -f lib/silcske/Makefile.in
-rm -f lib/silcmath/gmp/.deps
+rm -rf lib/silcmath/gmp/.deps
 rm -f silcd/Makefile.in silcd/log* silcd/*.log
 rm -f silc/Makefile.in silc/log* silc/*.log
 rm -f aclocal.m4