+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.
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).
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
/*
* $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
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
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
*/
#include "serverincludes.h"
+#include "version_internal.h"
-const char server_version[] = "26072000";
+const char *server_version = SILC_VERSION_STRING;
;;
esac
-AM_INIT_AUTOMAKE(silc, 26072000)
+AM_INIT_AUTOMAKE(silc, 14092000)
AC_PREREQ(2.3)
AM_CONFIG_HEADER(includes/silcdefs.h)
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)
.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
.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
EMail: priikone@poseidon.pspt.fi
-This Internet-Draft expires 28 Jan 2001
+This Internet-Draft expires 13 May 2001
.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
.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
EMail: priikone@poseidon.pspt.fi
-This Internet-Draft expires 28 Jan 2001
+This Internet-Draft expires 13 May 2001
.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
.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
EMail: priikone@poseidon.pspt.fi
-This Internet-Draft expires 28 Jan 2001
+This Internet-Draft expires 13 May 2001
/* 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
#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"
#ifndef VERSION_H
#define VERSION_H
+#include "version_internal.h"
+
/* Version type definition */
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";
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
+
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
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
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
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
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
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."
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