diff --git a/Config b/Config deleted file mode 100755 index 5889b012c6cbe1ba0619b9392123f7fc4c9f3917..0000000000000000000000000000000000000000 --- a/Config +++ /dev/null @@ -1,60 +0,0 @@ -#!/bin/sh -# -# $Id: Config,v 1.11 1992/12/19 00:25:02 ceder Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -# $Id: Config,v 1.11 1992/12/19 00:25:02 ceder Exp $ - -x= - -[ -d include ] && rm -rf include -mkdir include - -case "$1" in -+help | +hel | +he | +h | -h | -H) - echo Usage: ./Config hosttype - echo where hosttype is one of - echo balance sparc;; -balance) - x=balance;; -sun3 | sun3os4 | sun4 | sun4os4 | sparc | sparcos4) - x=sun4os4;; -vax) - x=vax;; -*) echo Unsupported host type "$1". - x=error;; -esac - -case "$x" in -error) false;; -*) - for i in `find . -type d -print` - do echo TOPDIR=`pwd` > $i/Topdir.make - done - - rm -f scripts/import.make - ln -s ../config/${x}-defs.make scripts/import.make - ( cd config; make SYSTEM=${x} config ) - ( cd src/include/ansi/${x} ; make SYSTEM=${x} config ) - ( cd src/libraries/regex ; ./configure ) -esac diff --git a/FileList b/FileList deleted file mode 100644 index 55815ac0e3a0363bb4cd0ac8d93a7d71b21fc742..0000000000000000000000000000000000000000 --- a/FileList +++ /dev/null @@ -1,136 +0,0 @@ -(Hey, Emacs, this is a -*- Indented-text -*- file!) - -* ansi-include/ - Directory containing ANSI-fied header files for the standard - libraries. - - -* ChangeLog - Log file where the progressing work and changes are sporadically - documented. You are encouraged to add an entry in this file - whenever you change something in this directory. - - -* client/ - Directory containing a TTY-based client for LysKOM, very similar to - the original KOM program from QZ. - - -* config.h - Configuration parameters for compiling. Contains among other - things all the stupid limits you really want to be without, all the - smart limits that has to be there to make it impossible to crash - the server, and lots of constants and configuration options. - - -* debug.h - Some #defines for debugging purposes. - - -* doc/ - Documentation of LysKOM; both internal and external. Also some - random thoughts members of the development team wanted to write - down during development. - - -* FileList - This file, describing all the files. - - -* kom-errno.c - Defines the variable 'kom_errno' and the function 'kom_perror()'. - Used for error handling in LysKOM. - - -* kom-errno.h - Defines the type 'Kom_err' and declares the variable 'kom_errno'. - The server sets the value of 'kom_errno' when an error occurs. - The function 'kom_perror()' is declared. - - -* kom-types.h - Declares the types used by LysKOM. Here are the types that are - common to both the server and the client. Types that look - different to the server and the client, are found in - 'server/server-types.h' and 'client/client-types.h' respectively. - - -* ldb/ - Directory containing the low-level database routines for the LysKOM - server. 'ldb' stands for Lyskom DataBase. - - -* List-Files - Shell script to list the files in this directory not documented in - the file 'FileList' (the one you are reading now). - - -* Mailinglist - List of mail addresses of people who want to be informed of the - progress of LysKOM. - - -* Makefile - Exactly what the name says. - - -* misc-types.h - Miscellaneous types and constants that are useful in many places in - LysKOM, but are not very LysKOM-specific. - - -* s-collat-tables.c - Collating tables used for the 's_usr_strcmp()' and - 's_usr_strhead()' functions in 's-string.h' - - -* s-collat-tables.h - Header file for 's-collat-tables.c' - - -* s-string.c - Routines for manipulating objects of type String as defined in - 's-string.h' - - -* s-string.h - Header file for 's-string.c' - Definies our own string type 'String', and declares the functions - in 's-string.c' - - -* server/ - Directory containing the LysKOM server, except for the low-level - database routines, which for historical reasons are in the separate - directory 'ldb/'. - - -* services.h - Declares all the services available from the LysKOM server. - - -* Summarize-Headers - Since we write our .h files with documentation in line, they - tend to get rather long, and it gets somewhat difficult to get - a quick overview of what functions are declared in the file. - This script cuts out all the "unnecessary" information: all - comments and all preprocessor lines (starting with #). - - -* TAGS - Tags table for use with Emacs. - - -* Template - Template for automatically generating 'Makefile'. 'Makefile' is - updated with the command 'make depend'. This should be given - whenever a change to 'Template' is done, or any new files are - added, or any dependecies are changed. Dependencies for normal C - files are generated automatically by this. - If 'Makefile' should become garbled, copy 'Template' to 'Makefile' - and do a 'make depend'. - - -* test-services/ - Directory containing programs to test parts of the server. Used by - ceder, and should not be distributed. diff --git a/MANIFEST b/MANIFEST deleted file mode 100644 index 9e76727bc6a2445946f4c04ccee3c3947b7637e7..0000000000000000000000000000000000000000 --- a/MANIFEST +++ /dev/null @@ -1,23 +0,0 @@ -$Id: MANIFEST,v 1.2 1991/09/13 20:00:02 linus Exp $ - -Filename Description --------- ----------- -Config - Script to make the configuration for different - machines -Build - Script to build the server -Makefile - The Makefile of the topdir -src/ - Source dir -src/Makefile - The Makefile -src/libraries - Source dir for the libraries -src/libraries/Makefile - The Makefile for the libraries -src/libraries/libansi - Substitutes ansi functions if necessary. -src/libraries/libcommon - LysKOM functions for both server and clients. -src/libraries/libisc - interprocess communication package -src/libraries/libmisc - mixed functions -doc - Dir with documentation files. -config - Configuration files for the different machines -scripts - Installation scripts. includes for make -src/server - The server -src/include - The include files that will be referenced -db-crypt - Initial database for server with encrypted passwords -db-nocrypt - Initial database for server without encryption diff --git a/Makefile b/Makefile deleted file mode 100644 index f232adb19e300b2613f257a21b9504b5a8adea0e..0000000000000000000000000000000000000000 --- a/Makefile +++ /dev/null @@ -1,128 +0,0 @@ -# -# $Id: Makefile,v 0.38 1993/10/03 16:01:14 ceder Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -include Topdir.make -SCRIPTDIR = $(TOPDIR)/scripts - -include $(SCRIPTDIR)/import.make - -SUBDIRS = doc junk scripts src config -SERVER-VER = 1.4.1 - -all: msg includes libraries binaries end-msg - -includes: $(INCLUDEDIR) $(INCLUDEDIR)/m-config.h - for i in $(SUBDIRS) ; \ - do \ - [ -d $$i ] && { echo making includes in directory $$i; \ - (cd $$i; $(MAKE) $(EXPORTS) includes) } \ - done - - -libraries: $(INCLUDEDIR) $(INCLUDEDIR)/m-config.h - -$(MKDIR) $(LIBDIR) - for i in $(SUBDIRS) ; \ - do \ - [ -d $$i ] && { echo making libraries in directory $$i; \ - (cd $$i; $(MAKE) $(EXPORTS) libraries) } \ - done - -include $(SCRIPTDIR)/sub-binaries.make -include $(SCRIPTDIR)/sub-install.make -include $(SCRIPTDIR)/sub-depend.make - -.PHONY: clean -clean: - $(RM) $(GENERIC-CLEAN) - -for i in $(SUBDIRS); \ - do \ - [ -d $$i ] && { echo making clean in directory $$i; \ - (cd $$i; $(MAKE) $(EXPORTS) clean) } \ - done - -distcleandescend: - $(RM) $(GENERIC-DIST-CLEAN) - $(RM) -r $(INCLUDEDIR) - $(RM) -r $(LIBDIR) - -for i in $(SUBDIRS); \ - do \ - [ -d $$i ] && { echo making distclean in directory $$i; \ - (cd $$i; $(MAKE) $(EXPORTS) distclean) } \ - done - -distclean: clean distcleandescend - $(RM) $(SCRIPTDIR)/import.make - -depend: $(INCLUDEDIR) $(INCLUDEDIR)/m-config.h msg includes - -distribution: distclean - find . -name '#*#' -print - -$(RM) -r lyskom-$(SERVER-VER) - $(MKDIR) lyskom-$(SERVER-VER) - cp README-serverrelease lyskom-$(SERVER-VER)/README - cp COPYING INSTALL Config Build Makefile lyskom-$(SERVER-VER)/ - $(MKDIR) lyskom-$(SERVER-VER)/src - cp src/Makefile lyskom-$(SERVER-VER)/src/ - $(MKDIR) lyskom-$(SERVER-VER)/src/libraries - cp src/libraries/Makefile lyskom-$(SERVER-VER)/src/libraries/ - $(MKDIR) lyskom-$(SERVER-VER)/doc - for i in ADMINISTRATION Makefile misc_items prot-A.txt \ - server-async.extend server.extend what-is-unread.swe; \ - do \ - cp doc/$$i lyskom-$(SERVER-VER)/doc/$i; \ - done - cp -r doc/man lyskom-$(SERVER-VER)/doc/man - cp -r config lyskom-$(SERVER-VER)/config - cp -r scripts lyskom-$(SERVER-VER)/scripts - $(RM) lyskom-$(SERVER-VER)/scripts/import.make - cp -r run-support lyskom-$(SERVER-VER)/run-support - cp -r src/libraries/libansi lyskom-$(SERVER-VER)/src/libraries - cp -r src/libraries/libcommon lyskom-$(SERVER-VER)/src/libraries - cp -r src/libraries/libisc-new lyskom-$(SERVER-VER)/src/libraries - cp -r src/libraries/libmisc lyskom-$(SERVER-VER)/src/libraries - cp -r src/libraries/regex lyskom-$(SERVER-VER)/src/libraries - cp -r src/server lyskom-$(SERVER-VER)/src - cp -r src/include lyskom-$(SERVER-VER)/src/include - cp -r db-crypt lyskom-$(SERVER-VER) - cp -r db-nocrypt lyskom-$(SERVER-VER) - find lyskom-$(SERVER-VER) -name CVS.adm -print -exec rm -rf {} \; -prune - find lyskom-$(SERVER-VER) -name Topdir.make -print -exec rm -rf {} \; - tar cvf lyskom-$(SERVER-VER).tar lyskom-$(SERVER-VER) - $(RM) lyskom-$(SERVER-VER).tar.Z - compress lyskom-$(SERVER-VER).tar - $(RM) -r lyskom-$(SERVER-VER) - -msg: - @echo Top-level source directory is believed to be $(TOPDIR) - @date - @echo - -end-msg: - @echo - @echo Finished at - @date - -$(INCLUDEDIR) $(INCLUDEDIR)/m-config.h: - @echo You must run Config before Build or make. - @exit 1 diff --git a/config/.cvsignore b/config/.cvsignore deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/config/ChangeLog b/config/ChangeLog deleted file mode 100644 index 5033a8fb33dc6439842c9454234b27cfa1bfa994..0000000000000000000000000000000000000000 --- a/config/ChangeLog +++ /dev/null @@ -1,34 +0,0 @@ -Tue Apr 14 17:38:37 1992 Per Cederqvist (ceder@lysator) - - * balance-defs.make: Updated. - - * sunos4-defs.make (PROFILE-LIB-SUFFIX): New variable. - -Sat Apr 4 19:11:53 1992 Per Cederqvist (ceder@lysator) - - * sun4os4-defs.make (CC): gcc2 has been renamed to gcc. - - * sun4os4-defs.make (ANSIDIR): Use new directory. - - * sun4os4-defs.make (LIBIDENT): New variable. - -Mon Mar 9 16:43:00 1992 Per Cederqvist (ceder@robin) - - * PIPE (sun4os4-defs.make): Added note about sun3 /bin/as. - -Wed Feb 26 19:53:05 1992 Per Cederqvist (ceder@lysator) - - * CC (sun4os4-defs.make): Use gcc2 with a fair amount of warnings. - -Mon Feb 10 03:18:20 1992 Linus Tolke Y (linus at robin) - - * Makefile: new target config, called from config. - - * sun4os4-defs.make: MKDIR macro added. This is not used though. - -Sun Feb 9 22:20:00 1992 Linus Tolke Y (linus at robin) - - * sun4os4-defs.make: New defaults. The defaults dirs are now: - for libraries /usr/local/lib/lyskom - for include files: /usr/local/include/lyskom - diff --git a/config/Makefile b/config/Makefile deleted file mode 100644 index f09bcaaf77971c8ea100707bdfe5dd2a143c82bf..0000000000000000000000000000000000000000 --- a/config/Makefile +++ /dev/null @@ -1,47 +0,0 @@ -# -# $Id: Makefile,v 1.6 1992/02/10 02:43:36 linus Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -include Topdir.make -SCRIPTDIR = $(TOPDIR)/scripts - -include $(SCRIPTDIR)/import.make - -includes: $(INCLUDEDIR)/m-config.h - -$(INCLUDEDIR)/m-config.h: - @echo You must run Config before Build or make. - false - -libraries:; -binaries:; -clean: - $(RM) $(GENERIC-CLEAN) - -distclean: clean - $(RM) $(GENERIC-DIST-CLEAN) - -depend:; - -config: - cp $(SYSTEM)-config.h $(INCLUDEDIR)/m-config.h diff --git a/config/balance-config.h b/config/balance-config.h deleted file mode 100644 index 62819a5ccc5f5d1009057d905233a8935e6ef96d..0000000000000000000000000000000000000000 --- a/config/balance-config.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * $Id: balance-config.h,v 1.5 1992/03/31 20:50:21 ceder Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* - * $Id: balance-config.h,v 1.5 1992/03/31 20:50:21 ceder Exp $ - * - * This works on a Sequent Balance running Dynix 2.1.1. - */ - -/* See config-template.h for comments. */ - -#define HAVE_GETDTABLESIZE -#define HAVE_STRERROR -#define RFC_931 -#define ENCRYPT_PASSWORDS diff --git a/config/balance-defs.make b/config/balance-defs.make deleted file mode 100644 index 3f1931cce96e4cccacbd865a1b81722eeabe2723..0000000000000000000000000000000000000000 --- a/config/balance-defs.make +++ /dev/null @@ -1,94 +0,0 @@ -# -# $Id: balance-defs.make,v 1.11 1992/04/14 15:56:27 ceder Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -# $Id: balance-defs.make,v 1.11 1992/04/14 15:56:27 ceder Exp $ -# This file is included by all Makefiles in the LysKOM hierarchy. -# It gives default values for all variables that is normally used. -# TOPDIR and SCRIPTDIR must be set before this file is included. -# -# This version is tuned for a Sequent Balance. - -SHELL=/bin/sh -AWK = gawk -SED = /usr/bin/sed -CC = gcc -ansi -RM = /usr/gnu/bin/rm -vf -RANLIB = ranlib -TOUCHLIB = ranlib -SYMLINK = ln -s -YACC = bison -d -LEX = flex -MKDIR=/bin/mkdir - -INCLUDEDIR = $(TOPDIR)/include -LIBDIR = $(TOPDIR)/lib -ANSIDIR = $(INCLUDEDIR)/ansi - -INCLUDES = -I$(ANSIDIR) -I$(INCLUDEDIR) -OPTIMIZE-FLAGS = -O -MISC-CFLAGS = -g -Wall -Wstrict-prototypes -Wmissing-prototypes -PIPE = -pipe - -# -h flag makes NULL pointer references generate runtime errors -LDFLAGS = -h -L$(LIBDIR) $(PROFILE-FLAGS) - -# Library for hostname lookup. -LIBRESOLV = -lresolv - -# Our Sequent does not (yet) have the authuser library. - -#LIBIDENT = -lauthuser -LIBIDENT = - -CFLAGS = $(INCLUDES) $(OPTIMIZE-FLAGS) $(MISC-CFLAGS) $(PIPE) $(TARGET) $(PROFILE-FLAGS) - -# Are we profiling? PROFILE-FLAGS are sent to CC when compiling and linking. -# PROFILE-LIB-SUFFIX are included in all library names so that we can have -# one profiled and one non-profiled version at the same time. But make sure -# to delete all .o files when switching between profiling and not profiling... -#PROFILE-FLAGS = -pg -static -#PROFILE-LIB-SUFFIX = -pg -PROFILE-FLAGS = -PROFILE-LIB-SUFFIX = - -# LysKOM executables that the typical user doesn't use go here. -# (The server, dbck, et c) - -LYSKOMSYSBIN = /usr/lyskom/bin - -# User executables (such as lyskom, kompost et c) - -LYSKOMUSRBIN = /usr/local/bin - - - -GENERIC-CLEAN = *~ *.o lib*.a core temp-Makefile temp-?-Makefile - -GENERIC-DIST-CLEAN = TAGS Topdir.make dependencies - -EXPORTS = - -# The Makefiles also dependes on the variables -# AR, ARFLAGS -# that are automatically set by GNU Make. diff --git a/config/config-template.h b/config/config-template.h deleted file mode 100644 index bdb5713cc1e78e4a1e590aa6ce1635fe67e41ae3..0000000000000000000000000000000000000000 --- a/config/config-template.h +++ /dev/null @@ -1,82 +0,0 @@ -/* - * $Id: config-template.h,v 1.6 1992/03/31 20:50:25 ceder Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* - * $Id: config-template.h,v 1.6 1992/03/31 20:50:25 ceder Exp $ - * - * This is a generic configuration file for LysKOM. - */ - -/* - * Define BUGGY_INET_NTOA if inet_ntoa is buggy. This is the case for - * a Sun Sparc with SunOS 4.1.1. If you define BUGGY_INET_NTOA a - * replacement routine (from libraries/libisc/inet_ntoa.c) will be - * used. - */ - -#define BUGGY_INET_NTOA - -/* - * Define HAVE_LOCALE if you have it (and want to use it). - */ - -#define HAVE_LOCALE - -/* - * Define RFC_931 if you want to use authentication as in rfc 931. - * You need the authuser package that Daniel J. Bernstein has written. - */ - -#define RFC_931 - -/* - * Define HAVE_STRERROR if your libc.a have strerror. - */ - -#define HAVE_STRERROR - -/* - * If you have the getdtablesize system call. - */ - -#define HAVE_GETDTABLESIZE - -/* - * Max number of file descriptors that can be opened by a process. - * If this is set too large here, the server will crash when too many - * people try to connect at the same time. - */ - -#include <sys/param.h> /* One way to do it... */ -#define MAX_OPEN_FD NOFILE - -#include <limits.h> /* Another. (I'm not sure that this */ -#define MAX_OPEN_FD _POSIX_OPEN_MAX /* is correct - use at your own risk!*/ - - -/* - * Define ENCRYPT_PASSWORDS to encrypt the users password via crypt(3). - */ - -#define ENCRYPT_PASSWORDS diff --git a/config/sun4os4-config.h b/config/sun4os4-config.h deleted file mode 100644 index 14777828650eebfa2eb5261200edd9c456b38322..0000000000000000000000000000000000000000 --- a/config/sun4os4-config.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * $Id: sun4os4-config.h,v 1.5 1992/03/31 20:50:29 ceder Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* - * $Id: sun4os4-config.h,v 1.5 1992/03/31 20:50:29 ceder Exp $ - * - * Configure LysKOM for a Sun Sparc-server running SunOS 4.1.1. - * This is the configuration we are running at Lysator, so this is - * fairly well tested. - */ - -/* - * Define BUGGY_INET_NTOA if inet_ntoa is buggy. This is the case for - * a Sun Sparc with SunOS 4.1.1. If you define BUGGY_INET_NTOA a - * replacement routine (from libraries/libisc/inet_ntoa.c) will be - * used. - */ - -#define BUGGY_INET_NTOA - -#define RFC_931 - -#define HAVE_GETDTABLESIZE - -/* We have LOCALE. */ - -#define HAVE_LOCALE -#define ENCRYPT_PASSWORDS diff --git a/config/sun4os4-defs.make b/config/sun4os4-defs.make deleted file mode 100644 index 9483b595307d5caa0da49b053232818836c04283..0000000000000000000000000000000000000000 --- a/config/sun4os4-defs.make +++ /dev/null @@ -1,116 +0,0 @@ -# -# $Id: sun4os4-defs.make,v 1.26 1993/10/03 15:57:48 ceder Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -# $Id: sun4os4-defs.make,v 1.26 1993/10/03 15:57:48 ceder Exp $ -# This file is included by all Makefiles in the LysKOM hierarchy. -# It gives default values for all variables that is normally used. -# TOPDIR and SCRIPTDIR must be set before this file is included. -# -# This version is tuned for a Sparc running SunOS 4.1.1 and a lot -# of Gnu utilities. - -SHELL=/bin/sh -AWK = awk -SED = /usr/bin/sed -CC = gcc -ansi -RM = /bin/rm -f -RANLIB = ranlib -#RANLIB = echo -TOUCHLIB = ranlib -#TOUCHLIB = ranlib -t -#TOUCHLIB = echo -SYMLINK = ln -s -YACC = bison -d -LEX = flex -MKDIR=/bin/mkdir - -#Use these in the distribution! -INCLUDEDIR = $(TOPDIR)/include -LIBDIR = $(TOPDIR)/lib -ANSIDIR = / -#ANSIDIR = $(INCLUDEDIR)/ansi - -# These are used at Lysator during development -#INCLUDEDIR = /usr/local/include/lyskom -#LIBDIR = /usr/local/lib/lyskom -#ANSIDIR = $(INCLUDEDIR)/ansi -#ANSIDIR=/usr/gnu/var/gcc/sunos4.1.1/2.1/proto-include - -INCLUDES = -I$(ANSIDIR) -I$(INCLUDEDIR) -I/usr/local/include - -OPTIMIZE-FLAGS = -O3 -MISC-CFLAGS = -g -Wall -Wstrict-prototypes -Wmissing-prototypes \ - -Wpointer-arith - -# You sometimes can't use -pipe on a sun3, since Suns /bin/as can't read -# stdin. If you use gas you can use -pipe. -PIPE = -pipe -#PIPE = - -# -h flag makes NULL pointer references generate runtime errors -LDFLAGS = -h -L$(LIBDIR) $(PROFILE-FLAGS) - -# Library for hostname lookup. -# There is a bug in SunOS 4.1.1 that makes it impossible to use -lresolv. -# It can be fixed by either installing the 4.0.3 version of -# /usr/lib/libreslov.a or by omitting -lresolv. -# -# Note that -lresolv is not necessary if YP/NIS is set up so that the NIS -# server asks the nameserver. - -LIBRESOLV = # -lresolv - -LIBIDENT = -lauthuser - -CFLAGS = $(INCLUDES) $(OPTIMIZE-FLAGS) $(MISC-CFLAGS) $(PIPE) $(TARGET) $(PROFILE-FLAGS) - -# Are we profiling? PROFILE-FLAGS are sent to CC when compiling and linking. -# PROFILE-LIB-SUFFIX are included in all library names so that we can have -# one profiled and one non-profiled version at the same time. But make sure -# to delete all .o files when switching between profiling and not profiling... -#PROFILE-FLAGS = -pg -static -#PROFILE-LIB-SUFFIX = -pg -PROFILE-FLAGS = -PROFILE-LIB-SUFFIX = - -# LysKOM executables that the typical user doesn't use go here. -# (The server, dbck, et c) - -LYSKOMSYSBIN = /usr/lyskom/bin - -# User executables (such as lyskom, kompost et c) - -LYSKOMUSRBIN = /usr/local/bin - - - -GENERIC-CLEAN = *~ *.o lib*.a core temp-Makefile temp-?-Makefile - -GENERIC-DIST-CLEAN = TAGS Topdir.make dependencies - -EXPORTS = - -# The Makefiles also dependes on the variables -# AR, ARFLAGS -# that are automatically set by GNU Make. diff --git a/config/vax-config.h b/config/vax-config.h deleted file mode 100644 index 5ee137aa9e3cc3b06ff698c429b8b6293baf9b5a..0000000000000000000000000000000000000000 --- a/config/vax-config.h +++ /dev/null @@ -1,28 +0,0 @@ -/* - * $Id: vax-config.h,v 1.1 1992/04/14 19:19:48 ceder Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ - -#define RFC_931 -#define HAVE_GETDTABLESIZE -#define ENCRYPT_PASSWORDS diff --git a/config/vax-defs.make b/config/vax-defs.make deleted file mode 100644 index a4c6d771a12341f0f66438e0b84d2b977c7d7412..0000000000000000000000000000000000000000 --- a/config/vax-defs.make +++ /dev/null @@ -1,85 +0,0 @@ -# -# $Id: vax-defs.make,v 1.1 1992/04/14 19:19:51 ceder Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -# $Id: vax-defs.make,v 1.1 1992/04/14 19:19:51 ceder Exp $ -# This file is included by all Makefiles in the LysKOM hierarchy. -# It gives default values for all variables that is normally used. -# TOPDIR and SCRIPTDIR must be set before this file is included. -# -# This version is tuned for a Sparc running SunOS 4.1.1 and a lot -# of Gnu utilities. - -SHELL=/bin/sh -AWK = gawk -SED = /usr/bin/sed -CC = gcc -ansi -RM = rm -f -RANLIB = ranlib -TOUCHLIB = ranlib -t -SYMLINK = ln -s -YACC = bison -d -LEX = flex -MKDIR=/bin/mkdir - -INCLUDEDIR = $(TOPDIR)/include -LIBDIR = $(TOPDIR)/lib -ANSIDIR = $(INCLUDEDIR)/ansi - -INCLUDES = -I$(ANSIDIR) -I$(INCLUDEDIR) -OPTIMIZE-FLAGS = -O -MISC-CFLAGS = -g -Wall -Wstrict-prototypes -Wmissing-prototypes -PIPE = -pipe - -# -h flag makes NULL pointer references generate runtime errors -LDFLAGS = -h -L$(LIBDIR) $(PROFILE-FLAGS) - -LIBRESOLV = -lresolv - -LIBIDENT = -lauthuser - -CFLAGS = $(INCLUDES) $(OPTIMIZE-FLAGS) $(MISC-CFLAGS) $(PIPE) $(TARGET) $(PROFILE-FLAGS) - -PROFILE-FLAGS = -PROFILE-LIB-SUFFIX = - -# LysKOM executables that the typical user doesn't use go here. -# (The server, dbck, et c) - -LYSKOMSYSBIN = /usr/lyskom/bin - -# User executables (such as lyskom, kompost et c) - -LYSKOMUSRBIN = /usr/local/bin - - - -GENERIC-CLEAN = *~ *.o lib*.a core temp-Makefile temp-?-Makefile - -GENERIC-DIST-CLEAN = TAGS Topdir.make dependencies - -EXPORTS = - -# The Makefiles also dependes on the variables -# AR, ARFLAGS -# that are automatically set by GNU Make. diff --git a/db-crypt/db/ramkomd-data b/db-crypt/db/ramkomd-data deleted file mode 100644 index bf280601c0ddcd88ebd7e3190f6727734d78053d..0000000000000000000000000000000000000000 Binary files a/db-crypt/db/ramkomd-data and /dev/null differ diff --git a/db-crypt/db/ramkomd-texts b/db-crypt/db/ramkomd-texts deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/doc/ADMINISTRATING b/doc/ADMINISTRATING deleted file mode 100644 index d7e2d490dc14310016fa1593fee781140f2339f3..0000000000000000000000000000000000000000 --- a/doc/ADMINISTRATING +++ /dev/null @@ -1,46 +0,0 @@ - Administrating a LysKOM site - ============================ - - This document is a short description of how to administrate a LysKOM -database on your site. - - The first thing you will have to do is to follow the instructions in -the file INSTALL. This will set up the LysKOM system with a database -containing a few necessary conferences and one person - the -administrator. - - Once the LysKOM system is running, there is not much you will have -to do to keep it that way. One thing to remember is that the current -release of the server (0.32) has an incomplete handling of garbage -collection of the database. The database is split into two files, the -information file and the text file. Newly written texts are -concatenated to the text file and old texts are never removed. The -information file contains information about conferences, users and -where in the text file the texts are. This file is properly garbage -collected, but not the text file. - - There is a program called dbck (Data Base Check) which is used to -check the consistency of the LysKOM database. This program can also -be used to shrink the text file. To do this, just type `dbck -g' in -the database directory, or give additional switches to dbck to use the -correct directory. See further the manual page for dbck. When dbck -is to be run on the database, the LysKOM server *must* be stopped, or -unrepairable damage may result. See below for a description on how to -stop the server. - - There is a shell script called updateLysKOM which is used to insure -continuous operation. This script is run with certain intervals and -if the LysKOM server has died for some reason, updateLysKOM restarts -it. If the server is still running properly, updateLysKOM sends a -signal (SIGUSR1) to it, which causes the server to write call -statistics to a file named etc/lyskomd-log in the lyskom directory. - - Taking the server down cleanly can be done in two ways: through the -use of the LysKOM protocol on a socket, preferably through the use of -a suitable client, or to send the signal SIGHUP to it. This will -cause the server to save the database and close all client -connections. It will also create a file named etc/memory-usage in -which the memory usage of the server is reported. There is currently -a small memory leak in the server. We know about it, so there is no -need to send bug reports to us about that (unless you have found where -the leak is). diff --git a/doc/Distfile b/doc/Distfile deleted file mode 100644 index a82a44195c0ebb8bfe26f3d051c97ae73f5d7414..0000000000000000000000000000000000000000 --- a/doc/Distfile +++ /dev/null @@ -1 +0,0 @@ -(/usr/local/src/2kom/doc) -> (nanny.lysator.liu.se) install; diff --git a/doc/INSTALL b/doc/INSTALL deleted file mode 100644 index ec7b09e4a1ac8f6f062ab0c790ce7676bdecd6b9..0000000000000000000000000000000000000000 --- a/doc/INSTALL +++ /dev/null @@ -1,2 +0,0 @@ -Edit src/server/config.c. Be careful to check - MAX_NO_OF_CONNECTIONS. \ No newline at end of file diff --git a/doc/Makefile b/doc/Makefile deleted file mode 100644 index 44636a5b4d95c3c3bf7ee7b7437b2d460cf8e3ef..0000000000000000000000000000000000000000 --- a/doc/Makefile +++ /dev/null @@ -1,39 +0,0 @@ -# -# $Id: Makefile,v 0.6 1991/09/15 09:54:18 linus Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -include Topdir.make -SCRIPTDIR = $(TOPDIR)/scripts - -include $(SCRIPTDIR)/import.make - -SUBDIRS = man - -all:; -depend:; -includes:; -libraries:; -binaries:; - -include $(SCRIPTDIR)/sub-clean.make -include $(SCRIPTDIR)/sub-install.make diff --git a/doc/Makefile.template b/doc/Makefile.template deleted file mode 100644 index f92cc451253efd88a94154f50cc3d5b9cc758a32..0000000000000000000000000000000000000000 --- a/doc/Makefile.template +++ /dev/null @@ -1,63 +0,0 @@ -# -# $Id: Makefile.template,v 0.2 1991/09/15 09:54:15 linus Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -# Makefile for LysKOM -# -############################################################################### -# -# SPECIAL CONSIDERATIONS: -# -# - Requires GNU make. -# - CC, OPTIMIZE-FLAGS and other make variables are passed down -# in the environment. -# - C compiler must be ANSI conformant. -# -############################################################################### -# -# SPECIAL TARGETS: -############################################################################### - -# Directories that you might want to override via the environment. - -ifndef TOPDIR -TOPDIR := /usr/lyskom/src -endif - -ifndef SCRIPTDIR -SCRIPTDIR := $(TOPDIR)/scripts -endif - -include $(SCRIPTDIR)/import.make - - -# All directories that make should traverse to when doing clean etc. - -SUBDIRS = doc include junk lib scripts src - -all: - for i in $(SUBDIRS) ; \ - do \ - echo making all in directory $$i; \ - (cd $$i; $(MAKE) all) \ - done diff --git a/doc/coding-standards.txt b/doc/coding-standards.txt deleted file mode 100644 index b70117880e2fc0d14354a0ecfff06223b226132c..0000000000000000000000000000000000000000 --- a/doc/coding-standards.txt +++ /dev/null @@ -1,77 +0,0 @@ -DENNA FIL [R V[LDIGT OBSOLETE NU! Vi anv{nder CVS nu. - - /ceder - -- hur man formatterar koden - - -- namnkonventioner - - -- Makefile - - -RCS - -Att skapa en ny fil: - -En ny fil placeras under RCS med "ci -r0.1 filnamn". I direktoryt -m}ste det finnas ett direktory som heter RCS. (Man kan skapa checka in -en ny fil fr}n emacs, men d} f}r den versionsnummer 1.0. Det g}r att -{ndra i RCS/*,v-filen, men det blir jobbigare..) - - -ATT TITTA P] EN FIL - -F|r att titta p} en fil g|r man "co filnamn". Med "make sources" -checkas alla filer ut (om Makefilen {r r{tt skriven). - - - -ATT EDITERA EN FIL - -Innan man editerar filen m}ste man l}sa den. Det g|r man med "co -l -filnamn" eller "C-x \"" om man anv{nder rcs-cks i emacs. - -Om man kommmer p} att man inte ville {ndra i filen kan man l}sa upp -den med "rcs -u filnamn". - -F|r att l{mna in den nya versionen g|r man "ci filnamn" eller "C-x #". - - - -RCSCLEAN - -"make rcsclean" tar bort all k{llkod som inte {r l}st f|r editering. -Med "make sources" kan man f} tillbaks den. - - -RCS anv{nder inte ChangeLog. Med "rlog file" f}r man se alla {ndringar -som gjorts i en fil. I filen RCS/.rcsfreeze.log kan man se de -logmeddelande som skrivits in n{r man gjort rcsfreeze. - -ChangeLoggen ska anv{ndas ({ven om det inte {r gjort p} slutet p} -servern). - -ATT INSTALLERA EN NY VERSION - -RCS: - -1) make -2) rcsclean # Se till att alla filer f|rsvinner -3) rcsfreeze v0-30-4 # Eller liknande -4) make sources -5) make -t # S} att man slipper kompilera om saker i on|dan. - -Bara steg 2 och 3 beh|vs. 1, 4 och 5 sparar lite tid. - -BIN[RER: - -Flytta server/diskomd till /usr/lyskom/bin/ramkomd. Se till att INNAN -dess spara den gamla ramkomd. Skriv inte |ver en exekverande fil! - -COMMON - -"make serverinstall" och "make clientinstall" skall g|ras n{r man har -{ndrat n}got. - -LIB - -"make install" skall g|ras n{r man har {ndrat n}got. diff --git a/doc/man/Makefile b/doc/man/Makefile deleted file mode 100644 index 71cdcfda76440918f8369ef7df39c809ddc2a446..0000000000000000000000000000000000000000 --- a/doc/man/Makefile +++ /dev/null @@ -1,60 +0,0 @@ -# -# $Id: Makefile,v 1.9 1991/10/29 06:06:27 linus Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -include Topdir.make -SCRIPTDIR = $(TOPDIR)/scripts - -include $(SCRIPTDIR)/import.make - -MANDIR = /usr/local/man -MANEXTS = 1 3 5 8 - -all:; -depend:; - -clean: - $(RM) $(GENERIC-CLEAN) - -for i in $(MANEXTS); \ - do \ - [ -d man$$i ] && { echo making clean in directory man$$i; \ - (cd man$$i; $(RM) *~ core) } \ - done - -distclean: clean - $(RM) $(GENERIC-DIST-CLEAN) - -for i in $(MANEXTS); \ - do \ - [ -d man$$i ] && { echo making clean in directory man$$i; \ - (cd man$$i; $(RM) *.ps *.cat *.man *.txt $(GENERIC-DIST-CLEAN)) } \ - done - -install: - for i in $(MANEXTS); \ - do \ - [ -d man$$i ] && { for page in man$$i/*.$$i; \ - do \ - echo installing $$page; \ - install $$page $(MANDIR)/man$$i; \ - done } \ - done diff --git a/doc/man/man1/.cvsignore b/doc/man/man1/.cvsignore deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/doc/man/man3/.cvsignore b/doc/man/man3/.cvsignore deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/doc/man/man3/isc3.x b/doc/man/man3/isc3.x deleted file mode 100644 index fa876e52f0dc1a3f297d658ff90219ec387158f3..0000000000000000000000000000000000000000 --- a/doc/man/man3/isc3.x +++ /dev/null @@ -1,209 +0,0 @@ -.\" $Id: isc3.x,v 0.2 1991/09/15 09:54:51 linus Exp $ -.\" Copyright (C) 1991 Lysator Academic Computer Association. -.\" -.\" This file is part of the LysKOM server. -.\" -.\" LysKOM is free software; you can redistribute it and/or modify it -.\" under the terms of the GNU General Public License as published by -.\" the Free Software Foundation; either version 1, or (at your option) -.\" any later version. -.\" -.\" LysKOM is distributed in the hope that it will be useful, but WITHOUT -.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -.\" for more details. -.\" -.\" You should have received a copy of the GNU General Public License -.\" along with LysKOM; see the file COPYING. If not, write to -.\" Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -.\" or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -.\" MA 02139, USA. -.\" -.\" Please mail bug reports to bug-lyskom@lysator.liu.se. -.\" -.\" $Copyright: $ -.\" Copyright (c) 1991 Lysator Computer Club, Linkoping University, Sweden -.\" All rights reserved -... -.V= $Header: /home/ceder/convert-lyskomd/cvsroot/lyskom-server/doc/man/man3/Attic/isc3.x,v 0.2 1991/09/15 09:54:51 linus Exp $ -.TH ISC 3X "\*(V)" "LUNATIX" -.SH NAME -isc_initialize, isc_shutdown, isc_listen, isc_unlisten, -isc_opentcp, isc_openfile, isc_openfd, isc_close, -isc_sessions, isc_getnextevent, isc_dispose, -isc_flush, isc_write, isc_putc, isc_printf, -isc_allocmsg, isc_reallocmsg, isc_freemsg, isc_mkstrmsg, -isc_setmaxmsgsize, isc_setallocfn, isc_setlogfn, isc_setabortfn -.SH FUNCTIONS -.nf -.B IscMaster * -.B " isc_initialize (IscConfig *cfg)" -.PP -.B void -.B " isc_shutdown(IscMaster *mcb)" -.PP -.B int -.B " isc_listen(IscMaster *mcb, int port);" -.PP -.B void -.B " isc_unlisten(IscMaster *mcb, int port);" -.PP -.B "IscSession *" -.B " isc_opentcp(IscMaster *mcb, const char *host, int port)" -.PP -.B "IscSession *" -.B " isc_openfile(IscMaster *mcb, const char *path, int mode)" -.PP -.B "IscSession *" -.B " isc_openfd(IscMaster *mcb, int fd)" -.PP -.B "void" -.B " isc_close (IscSession *scb)" -.PP -.B "int" -.B " isc_sessions (IscMaster *mcb)" -.PP -.B "IscEvent *" -.B " isc_getnextevent (IscMaster *mcb, long timeout)" -.PP -.B "void" -.B " isc_dispose (IscEvent *ecb)" -.PP -.B "void" -.B " isc_flush (IscSession *scb)" -.PP -.B "int" -.B " isc_write (IscSession *scb, const void *buf, size_t len)" -.PP -.B "int" -.B " isc_printf (IscSession *scb, const char *format, ...)" -.PP -.B "int" -.B " isc_putc (int chr, IscSession *scb)" -.PP -.B "IscMessage *" -.B " isc_allocmsg(size_t size);" -.PP -.B "IscMessage *" -.B " isc_reallocmsg(IscMessage *msg, size_t size);" -.PP -.B "void" -.B " isc_freemsg(IscMessage *msg);" -.PP -.B "IscMessage *" -.B " isc_mkstrmsg(const char *str);" -.PP -.B "void" -.B " isc_setmaxmsgsize (IscMaster *mcb, size_t size)" -.PP -.B "void" -.B " isc_setlogfn (void (*logfnp)(const char *fmt, va_list AP))" -.PP -.B "void" -.B " isc_setallocfn (void * (*mallocfn)(size_t size)," -.B " void * (*reallocfn)(void *buf, size_t size)," -.B " void (*freefn)(void *buf))" -.PP -.B "void" -.B " isc_setabortfn (void (*abortfn)(const char *msg))" -.SH TYPES -.nf -.B typedef void IscConfig; -.PP -.B typedef enum -.B { -.B " ISC_EVENT_ERROR," -.B " ISC_EVENT_TIMEOUT," -.B " ISC_EVENT_LOGIN," -.B " ISC_EVENT_LOGOUT," -.B " ISC_EVENT_MESSAGE," -.B "} IscEventType;" -.PP -.B typedef enum -.B { -.B " ISC_TYPE_UNKNOWN," -.B " ISC_TYPE_TCP," -.B " ISC_TYPE_FILE" -.B "} IscSessionType;" -.PP -.B typedef struct isc_msg -.B { -.B " int size;" -.B " int length;" -.B " char *buffer;" -.B } IscMessage; -.PP -.B typedef struct isc_mcb -.B { -.B " int port;" -.B " int fd;" -.B " int maxmsgsize;" -.B " int maxqueuedsize;" -.B " int maxdequeuelen;" -.B " struct isc_scb *sessions;" -.B } IscMaster; -.PP -.B typedef struct isc_scb -.B { -.B " struct isc_scb * prev;" -.B " struct isc_scb * next;" -.B " IscMaster * mcb;" -.B " IscSessionType type;" -.B " int fd; -.B " IscMsgQueue * rd_msg_q;" -.B " IscMsgQueue * wr_msg_q;" -.B " char sendbuf[2048];" -.B " int sendindex;" -.B " union" -.B " {" -.B " struct" -.B " {" -.B " char * hostname;" -.B " int rport;" -.B " int lport;" -.B " } tcp;" -.B " struct" -.B " {" -.B " char * pathname;" -.B " int openmode;" -.B " } file;" -.B " } info;" -.B " int kill_him;" -.B " time_t logintime;" -.B " struct" -.B " {" -.B " struct" -.B " {" -.B " long bytes;" -.B " long packets;" -.B " } rx, tx;" -.B " } stats;" -.B "" -.B " ISC_UDGTYPE * udg; /* Reserved for user defined usage */" -.B "} IscSession;" -.PP -.B typedef struct isc_ecb -.B { -.B " IscEventType event;" -.B " IscSession * session;" -.B " IscMessage * msg;" -.B } IscEvent; -.SH DESCRIPTION -These functions implement an interface to the TCP/IP streams facitiliy. -The functions are obtained with the loader option -.BR \-lisc . -(More to come here...) -.PP -.SH DIAGNOSTICS -(And here... :\-) -.PP -.SH BUGS -Hehe... I'm sure they exists... -.SH GUILTY -Peter Eriksson <pen@lysator.liu.se> & -Per Cederqvist <ceder@lysator.liu.se> - - -ISC is Copyright (c) 1991 Lysator Computer Club, Linkoping University, Sweden, -in cooperation with the International Syndicate of Computation. -All rights reserved. diff --git a/doc/man/man5/.cvsignore b/doc/man/man5/.cvsignore deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/doc/man/man5/lyskom.5 b/doc/man/man5/lyskom.5 deleted file mode 100644 index 981e6a83d654f0f9792156f40f8df8c70f8f656d..0000000000000000000000000000000000000000 --- a/doc/man/man5/lyskom.5 +++ /dev/null @@ -1,317 +0,0 @@ -.\" $Id: lyskom.5,v 1.5 1991/09/21 03:02:33 ceder Exp $ -.\" Copyright (C) 1991 Lysator Academic Computer Association. -.\" -.\" This file is part of the LysKOM server. -.\" -.\" LysKOM is free software; you can redistribute it and/or modify it -.\" under the terms of the GNU General Public License as published by -.\" the Free Software Foundation; either version 1, or (at your option) -.\" any later version. -.\" -.\" LysKOM is distributed in the hope that it will be useful, but WITHOUT -.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -.\" for more details. -.\" -.\" You should have received a copy of the GNU General Public License -.\" along with LysKOM; see the file COPYING. If not, write to -.\" Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -.\" or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -.\" MA 02139, USA. -.\" -.\" Please mail bug reports to bug-lyskom@lysator.liu.se. -.\" -.\" $Id: lyskom.5,v 1.5 1991/09/21 03:02:33 ceder Exp $ -.\" $Date: 1991/09/21 03:02:33 $ -.TH lyskom 5 "August 24, 1991" -.SH NAME -lyskom - LysKOM -.I database -format -.SH SYNOPSIS -.B /usr/lyskom/db/lyskomd-* -.br -and -.br -.B /usr/lyskom/etc/pid -.PP -.B #include <lyskom/kom-types.h> -.SH DISCLAIMER -The -.I database -is not really a database but a sequential file where all data is saved -from the memory. -.SH DESCRIPTION -There are 2 files: One file with all the data -.RB ( lyskomd-data ). -And one with all texts -.RB ( lyskomd-texts ). -The texts file does not contain any information about where any text -starts of ends, all this is in the data file together with other infos -on the text. -.PP -If the first five chars of the data file is CLEAN then the -.I database -is considered clean. If its anything else the -.BR lyskomd (8) -proglys will try to find the backupfile instead. -.PP -Then there is a number telling the number of the next free conference -.RI ( next_free_num ). -.PP -Now follows a list of all conferences. One conference on each line. If -the conference is deleted the line consists of a -.B @ -otherwise it starts with a -.BR + . -.PP -Now follows a list of all person statuses. Here is also every person -on its own line and the deleted persons or the numbers that are not -persons but conferences are lines containing just a -.BR @ . -.PP -Both the conference status part and the person status part are exactly -.IR next_free_num -1 -lines long. -.PP -Now follows the number of the next text that is not used and a list of -text statuses. -Every text status has its own line just like the other statuses and -non-existent texts are represented by the -.BI @ . -.PP -The different statuses types are -.B conference -.BR statuses , -.B person statuses -and -.B text -.BR statuses . -These are in a struct in the include file but in this file they are -not saved as structs but every element is saved as a ascii string. -Strings are saved as holerith strings. The field of the struct is not -even saved in the same order as in the struct. -Their order in the database is followed below. -.PP -An array of things is represented in the database by a number telling -how many elements there are in the array and the either a -.B * -in the case no elements or a -.B { -followed by all the elements and a finishing -.BR } . -.SS Conference status -.LP -This contains all information for a conference. A conference is a -object that recieves texts. -.TP 15 -.I Name -Name of the conference saved as a holerith string. -.TP -.I Member list -An array of the members in that conference. -.TP -.I First local number -This is the local number of the first text in the conference. Its -saved here in order to save space in this file by not mentioning all -deleted texts in the beginning of the conference. -.TP -.I Texts -This is an array of recieved texts. The local number of the text is -determined by the position in this list and the value of the -.I first local -.IR number . -.TP -.I Type -This is the type of the conf, it contains the infomation that says if -the conference is read protected, original flagged conference, secret, -or if its a letter box. -.TP -.I Creation time -The time the conference was created. -.TP -.I Last written -The time the last text was sent to the conference. -.TP -.I Creator -The number of the person that has created the conference. This is 0 -for conferences that are created initially. -.TP -.I Presentation -This is the number of the text containing a presentation of the -conference. If there is no presentation this number is 0. -.TP -.I Supervisor -This is the number of the conference whose members are supervisors of -the conference. Initially this is set to be the number of the letter -box of the creator. -.TP -.I Permitted submitters -This is the number of the conference whose members are allowed to -submit texts to this conference. If this is 0 (the default) all -persons i -.B LysKOM -are allowed to submit. -.TP -.I Super conference -This is a number of a conference that comments to articles should be -sent to if this conference is original flagged. -.TP -.I Message of the day -This is the textnumber of the text containing a notice message about -the conference. Mostly used for letter boxes. If 0 then there is no -such message. -.TP -.I Garb nice -This is the number of days a text stays in the conference before it is -removed by the expiration routines. Its really the expiration rate. -.SS Person statuses -.LP -Person statuses contains all info about persons. -.TP 15 -.I Password -The password is stored as a string. The length of the string is 64 but -the length of the password itself is stored as the first char in the -string. Passwords longer that 63 chars are truncated. -.TP -.I Username -This is the username and machine from the last time the person logged in. -.TP -.I Privileges -The persons privileges are stored here. This is a bit array, length is -16 bits. It is not really welldetemined what bit does what. -.TP -.I Personal flags -The persons flags are stored here. -.TP -.I First local number -This is the local number of the first created text that still exists -in the database. Its local to this list. -.TP -.I Created text list -This is an array of all created texts beginning at the first local -number. -.TP -.I Marked texts -This is an array of all marked texts and their mark type. Every -element in the array is a text number and a mark number. -.TP -.I Membership -Here is the information about which conferences the person is member -in. Its an array where every element is of the type -.B Membership -(See below). -.TP -.I Last login -Time of the last login. -.TP -.I User area -Number of the text being the persons user area. If there is no user -area this is 0. -.TP -.I Total time present -Time in -.B LysKOM -in seconds. -.TP -.I Sessions -Number of logins made for that person. -.TP -.I Created lines -.TP -.I Created bytes -.TP -.I Read texts -Count of read marked texts. -.TP -.I No of fetches -This is the information about how many texts this person has fetched. -Using caching clients this number could increase well beyond -.I Read -.IR texts . -.TP -.I Created persons -Count of created persons. -.TP -.I Created conferences -Count of created conferences. -.SS Text statuses -This contains info about the texts. -.TP 15 -.I Created time -Time this text was created. -.TP -.I Author -Person that wrote this text. -.TP -.I Start -Start pointer for the text in the -.I lyskomd-texts -file. -.TP -.I Number of lines -Length of the text in lines. -.TP -.I Number of chars -Length of the text in chars. -.TP -.I Number of marks -Count of existing marks on this text. -.TP -.I Header list -An array containing info about -.IR recipients , -.I comments -.IR to -pointers -etc. Every element is a -.IR Misc_info . -.SS Membership -The membership type tells us about conferences we are member of and -how much we have already read of it. It is saved in this way: -.TP -.I Last time read -Updated when we mark a text as read in this conference. -.TP -.I Conference number -The number telling what conf. -.TP -.I Priority -Used by the client to determine reading order. -.TP -.I Last text read -Local number of the last text we have read. This is used to keep track -of which texts we have not yet read and calculate how many unread we -have in this conference. -.TP -.I Read texts -An array containing the texts that we have read after the -.I Last text -.IR read . -This is necessary because its possible to read in any order. -.SH FILES -.TP 20 -.IB database-directory /db/lyskomd-data -File with all the elements and pointers. -.TP -.IB database-directory /db/lyskomd-texts -File with the texts. -.TP -.IB database-directory /etc/pid -File with the pid of the lyskom-process. -.TP -.IB database-directory /db/lyskomd-backup -Backup file with all data. -.SH "SEE ALSO" -.BR lyskomd (8), -.BR dbck (8) -.SH BUGS -This is really a joke. Its not a database, not optimal in any way. But -it works. -.PP -The -.I message of the day -text number is not saved anywhere. This makes the -server forget what text that is when restarting. -.SH NOTES -This will soon disapear and be replaced by something more bazaarly -inexplicable. diff --git a/doc/man/man5/ramkom.5 b/doc/man/man5/ramkom.5 deleted file mode 100644 index fa0e2d1e1ed49c1a4182e48ba5fd68ccbe7c0773..0000000000000000000000000000000000000000 --- a/doc/man/man5/ramkom.5 +++ /dev/null @@ -1,317 +0,0 @@ -.\" $Id: ramkom.5,v 1.4 1991/09/15 09:54:59 linus Exp $ -.\" Copyright (C) 1991 Lysator Academic Computer Association. -.\" -.\" This file is part of the LysKOM server. -.\" -.\" LysKOM is free software; you can redistribute it and/or modify it -.\" under the terms of the GNU General Public License as published by -.\" the Free Software Foundation; either version 1, or (at your option) -.\" any later version. -.\" -.\" LysKOM is distributed in the hope that it will be useful, but WITHOUT -.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -.\" for more details. -.\" -.\" You should have received a copy of the GNU General Public License -.\" along with LysKOM; see the file COPYING. If not, write to -.\" Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -.\" or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -.\" MA 02139, USA. -.\" -.\" Please mail bug reports to bug-lyskom@lysator.liu.se. -.\" -.\" $Id: ramkom.5,v 1.4 1991/09/15 09:54:59 linus Exp $ -.\" $Date: 1991/09/15 09:54:59 $ -.TH ramkom 5 "August 24, 1991" -.SH NAME -ramkom - LysKOM -.I database -format -.SH SYNOPSIS -.B /usr/lyskom/db/ramkomd-* -.br -and -.br -.B /usr/lyskom/etc/pid -.PP -.B #include <lyskom/kom-types.h> -.SH DISCLAIMER -The -.I database -is not really a database but a sequential file where all data is saved -from the memory. -.SH DESCRIPTION -There are 2 files: One file with all the data -.RB ( ramkomd-data ). -And one with all texts -.RB ( ramkomd-texts ). -The texts file does not contain any information about where any text -starts of ends, all this is in the data file together with other infos -on the text. -.PP -If the first five chars of the data file is CLEAN then the -.I database -is considered clean. If its anything else the -.BR ramkomd (8) -program will try to find the backupfile instead. -.PP -Then there is a number telling the number of the next free conference -.RI ( next_free_num ). -.PP -Now follows a list of all conferences. One conference on each line. If -the conference is deleted the line consists of a -.B @ -otherwise it starts with a -.BR + . -.PP -Now follows a list of all person statuses. Here is also every person -on its own line and the deleted persons or the numbers that are not -persons but conferences are lines containing just a -.BR @ . -.PP -Both the conference status part and the person status part are exactly -.IR next_free_num -1 -lines long. -.PP -Now follows the number of the next text that is not used and a list of -text statuses. -Every text status has its own line just like the other statuses and -non-existent texts are represented by the -.BI @ . -.PP -The different statuses types are -.B conference -.BR statuses , -.B person statuses -and -.B text -.BR statuses . -These are in a struct in the include file but in this file they are -not saved as structs but every element is saved as a ascii string. -Strings are saved as holerith strings. The field of the struct is not -even saved in the same order as in the struct. -Their order in the database is followed below. -.PP -An array of things is represented in the database by a number telling -how many elements there are in the array and the either a -.B * -in the case no elements or a -.B { -followed by all the elements and a finishing -.BR } . -.SS Conference status -.LP -This contains all information for a conference. A conference is a -object that recieves texts. -.TP 15 -.I Name -Name of the conference saved as a holerith string. -.TP -.I Member list -An array of the members in that conference. -.TP -.I First local number -This is the local number of the first text in the conference. Its -saved here in order to save space in this file by not mentioning all -deleted texts in the beginning of the conference. -.TP -.I Texts -This is an array of recieved texts. The local number of the text is -determined by the position in this list and the value of the -.I first local -.IR number . -.TP -.I Type -This is the type of the conf, it contains the infomation that says if -the conference is read protected, original flagged conference, secret, -or if its a letter box. -.TP -.I Creation time -The time the conference was created. -.TP -.I Last written -The time the last text was sent to the conference. -.TP -.I Creator -The number of the person that has created the conference. This is 0 -for conferences that are created initially. -.TP -.I Presentation -This is the number of the text containing a presentation of the -conference. If there is no presentation this number is 0. -.TP -.I Supervisor -This is the number of the conference whose members are supervisors of -the conference. Initially this is set to be the number of the letter -box of the creator. -.TP -.I Permitted submitters -This is the number of the conference whose members are allowed to -submit texts to this conference. If this is 0 (the default) all -persons i -.B LysKOM -are allowed to submit. -.TP -.I Super conference -This is a number of a conference that comments to articles should be -sent to if this conference is original flagged. -.TP -.I Message of the day -This is the textnumber of the text containing a notice message about -the conference. Mostly used for letter boxes. If 0 then there is no -such message. -.TP -.I Garb nice -This is the number of days a text stays in the conference before it is -removed by the expiration routines. Its really the expiration rate. -.SS Person statuses -.LP -Person statuses contains all info about persons. -.TP 15 -.I Password -The password is stored as a string. The length of the string is 64 but -the length of the password itself is stored as the first char in the -string. Passwords longer that 63 chars are truncated. -.TP -.I Username -This is the username and machine from the last time the person logged in. -.TP -.I Privileges -The persons privileges are stored here. This is a bit array, length is -16 bits. It is not really welldetemined what bit does what. -.TP -.I Personal flags -The persons flags are stored here. -.TP -.I First local number -This is the local number of the first created text that still exists -in the database. Its local to this list. -.TP -.I Created text list -This is an array of all created texts beginning at the first local -number. -.TP -.I Marked texts -This is an array of all marked texts and their mark type. Every -element in the array is a text number and a mark number. -.TP -.I Membership -Here is the information about which conferences the person is member -in. Its an array where every element is of the type -.B Membership -(See below). -.TP -.I Last login -Time of the last login. -.TP -.I User area -Number of the text being the persons user area. If there is no user -area this is 0. -.TP -.I Total time present -Time in -.B LysKOM -in seconds. -.TP -.I Sessions -Number of logins made for that person. -.TP -.I Created lines -.TP -.I Created bytes -.TP -.I Read texts -Count of read marked texts. -.TP -.I No of fetches -This is the information about how many texts this person has fetched. -Using caching clients this number could increase well beyond -.I Read -.IR texts . -.TP -.I Created persons -Count of created persons. -.TP -.I Created conferences -Count of created conferences. -.SS Text statuses -This contains info about the texts. -.TP 15 -.I Created time -Time this text was created. -.TP -.I Author -Person that wrote this text. -.TP -.I Start -Start pointer for the text in the -.I ramkomd-texts -file. -.TP -.I Number of lines -Length of the text in lines. -.TP -.I Number of chars -Length of the text in chars. -.TP -.I Number of marks -Count of existing marks on this text. -.TP -.I Header list -An array containing info about -.IR recipients , -.I comments -.IR to -pointers -etc. Every element is a -.IR Misc_info . -.SS Membership -The membership type tells us about conferences we are member of and -how much we have already read of it. It is saved in this way: -.TP -.I Last time read -Updated when we mark a text as read in this conference. -.TP -.I Conference number -The number telling what conf. -.TP -.I Priority -Used by the client to determine reading order. -.TP -.I Last text read -Local number of the last text we have read. This is used to keep track -of which texts we have not yet read and calculate how many unread we -have in this conference. -.TP -.I Read texts -An array containing the texts that we have read after the -.I Last text -.IR read . -This is necessary because its possible to read in any order. -.SH FILES -.TP 20 -.IB database-directory /db/ramkomd-data -File with all the elements and pointers. -.TP -.IB database-directory /db/ramkomd-texts -File with the texts. -.TP -.IB database-directory /etc/pid -File with the pid of the lyskom-process. -.TP -.IB database-directory /db/ramkomd-backup -Backup file with all data. -.SH "SEE ALSO" -.BR ramkomd (8), -.BR dbck (8) -.SH BUGS -This is really a joke. Its not a database, not optimal in any way. But -it works. -.PP -The -.I message of the day -text number is not saved anywhere. This makes the -server forget what text that is when restarting. -.SH NOTES -This will soon disapear and be replaced by something more bazaarly -inexplicable. diff --git a/doc/man/man8/.cvsignore b/doc/man/man8/.cvsignore deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/doc/man/man8/dbck.8 b/doc/man/man8/dbck.8 deleted file mode 100644 index 968e0184c7e62c57bd9cd2ca25af2ccc3a14614e..0000000000000000000000000000000000000000 --- a/doc/man/man8/dbck.8 +++ /dev/null @@ -1,132 +0,0 @@ -.\" $Id: dbck.8,v 1.7 1992/02/23 02:56:43 ceder Exp $ -.\" Copyright (C) 1991 Lysator Academic Computer Association. -.\" -.\" This file is part of the LysKOM server. -.\" -.\" LysKOM is free software; you can redistribute it and/or modify it -.\" under the terms of the GNU General Public License as published by -.\" the Free Software Foundation; either version 1, or (at your option) -.\" any later version. -.\" -.\" LysKOM is distributed in the hope that it will be useful, but WITHOUT -.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -.\" for more details. -.\" -.\" You should have received a copy of the GNU General Public License -.\" along with LysKOM; see the file COPYING. If not, write to -.\" Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -.\" or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -.\" MA 02139, USA. -.\" -.\" Please mail bug reports to bug-lyskom@lysator.liu.se. -.\" -.\" $Id: dbck.8,v 1.7 1992/02/23 02:56:43 ceder Exp $ -.\" $Date: 1992/02/23 02:56:43 $ -.TH dbck 8 "August 22, 1991" -.SH NAME -dbck - reports and corrects errors in the LysKOM database. This -program is also used remove unreferenced texts from the texts file. -.SH SYNOPSIS -.B /usr/lyskom/bin/dbck -[ -.B -D -.I database-directory -] [ -.B -irvgs -] -.SH DESCRIPTION -This program should be run after something has happened that has made the -database corrupted. -.PP -It fixes the database, checking all references. -.PP -With argument -.B -g -the file with texts are rewritten without all unreferenced texts and -all pointers are adjusted. This does only happen if the database was -correct. -.PP -If none of the options -.B -r, -i -or -.B -g -are given the database is not changed. -.SH OPTIONS -.TP -.BI \-D " database-directory" -Use the database in the -.I database-directory -as the target of the checkup. -.br -Example: If your database is in -.ft B -$HOME/lyskom/db -.ft R -you should use the command -.ft B -.br -/usr/lyskom/bin/dbck -D $HOME/lyskom -.ft R -.TP -.B \-i -Run interactively asking the user questions. -.TP -.B \-r -Repair simple errors without asking. -.TP -.B \-v -Verbose mode. Report not only errors but other statuses of the -database. -.TP -.B \-g -Do the garbage collect of the texts part of the database. This is -sometimes called a compression of the text but it only removes -non-referenced texts. -.TP -.B \-s -Gather statistics about the lengths of texts. A table containing -the frequency of all lenghts that is currently used is printed. -.SH NOTES -The messages -.I Conference <confno> has a bad Text-list. Starts with 0 -and -.I Person <persno> has created <number> conferences, not <number> -.RI ( as -.I said in -.IR person-stat ). -are normal. If you get them when you specify -.B -g, -let -.B dbck -fix them and run -.B dbck -g -again. -.SH FILES -.TP 20 -.B /usr/lyskom -Default database directory. -.TP -.IB database-directory /db/ramkomd-data -File with all the elements and pointers. -.TP -.IB database-directory /db/ramkomd-texts -File with the texts. -.TP -.IB database-directory /db/ramkomd-backup -Backup file of -.B ramkomd-data. -.SH BUGS -Does not lock the database. -.PP -Does never check if the database is locked. -.PP -Should have an unlock database option. -.PP -Does not check that -.B ramkomd-data -and -.B ramkomd-texts -are consistent. -.SH AUTHOR -Per Cederqvist <ceder@lysator.liu.se> diff --git a/doc/man/man8/lyskomd.8 b/doc/man/man8/lyskomd.8 deleted file mode 100644 index 00e12627ebbf5f2c066745a56f6ae9420a6dc092..0000000000000000000000000000000000000000 --- a/doc/man/man8/lyskomd.8 +++ /dev/null @@ -1,402 +0,0 @@ -.\" $Id: lyskomd.8,v 1.8 1994/02/19 04:57:37 ceder Exp $ -.\" Copyright (C) 1991, 1994 Lysator Academic Computer Association. -.\" -.\" This file is part of the LysKOM server. -.\" -.\" LysKOM is free software; you can redistribute it and/or modify it -.\" under the terms of the GNU General Public License as published by -.\" the Free Software Foundation; either version 1, or (at your option) -.\" any later version. -.\" -.\" LysKOM is distributed in the hope that it will be useful, but WITHOUT -.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -.\" for more details. -.\" -.\" You should have received a copy of the GNU General Public License -.\" along with LysKOM; see the file COPYING. If not, write to -.\" Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -.\" or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -.\" MA 02139, USA. -.\" -.\" Please mail bug reports to bug-lyskom@lysator.liu.se. -.\" -.\" $Id: lyskomd.8,v 1.8 1994/02/19 04:57:37 ceder Exp $ -.\" $Date: 1994/02/19 04:57:37 $ -.TH lyskomd 8 "January 12, 1994" "Lysator" -.SH NAME -lyskomd - LysKOM server -.SH SYNOPSIS -.B /usr/lyskom/bin/lyskomd -[ -.B -d ... -] [ -.B config-file -] -.SH DESCRIPTION -This program runs a LysKOM server. -.PP -The server reads a configuration file (see CONFIGURATION below) and -then listensfor connections on the given ports (defaults are 4894 -for the -.I client_port -and 4895 for the -.IR mux_port ). -.SH OPTIONS -.TP -.B \-d -Adds one to the debug-level i.e. increases the amount of output on the -stderr from the process. This option can be given repeatedly. - -Using one -.B \-d -make the process print a -.I > -for every timeout, a message for every person that is connecting or -disconnecting and a message for every successful or unsuccessful -communication to the process. -.SH CONFIGURATION -The configuration file is line oriented. -Each line consists of one -.B parameter name, -a colon, and the -.B parameter value. -Empty lines, and lines whose first non-blank character is #, are -comment lines and ignored. -The configuration file is normally found in -.B /usr/lyskom/etc/config, -but the exact location can be changed at compile time (by modifying -.B DEFAULT_DBASE_DIR -and/or -.B CONFIG_FILE -in -.B src/server/server-config.c) -or at run time (by specifying a config file as an argument). - -The following parameters can be set in the config file: -.TP -.B Locale: locale_name -Use -.I locale_name -as the locale to run in. -This parameter is only available on systems which support the -.B setlocale() -call. If this parameter is not set, no call to -.B setlocale() -will be made. -.TP -.B Prefix: prefix -The default value of -.I prefix -is -.B /usr/lyskom -(unless changed in server-config.c). -All files that the server uses are found in sub-directories of this -directory. See FILES below. -.TP -.B Send async: bool -Do not send any non-requested messages. This disables the sending of -messages about events in the server to all connections. -Use of this parameter is not recommended. This option is on by -default. -.TP -.B Client port: portname -Listen for new clients on -.I portname, -which can be a symbolic port name (traditionally looked up in -.B /etc/services) -or a port number. This defaults to 4894, and all clients currently -expect that number. -.TP -.B Mux port: portname -Listen for mux connections on -.I portname. -Muxes can be used to multiplex several clients on a single file -descriptor. The mux runs as a separate process. This was used -historically when LysKOM ran on a machine were only 20 file -descriptors coule be open at once. The mux code has not been -released. Send a mail to -.B bug-lyskom@lysator.liu.se -if you need it. The default port number is 4895. -.TP -.B Presentation of conferences: conf-no -The number of the conference where presentations should be sent. -Defaults to 1. -.TP -.B Presentation of persons: conf-no -The number of the conference where presentations should be sent. -Defaults to 2. -.TP -.B Motd-conference: conf-no -The number of the conference where "message-of-the-day" messages -should be sent. -Defaults to 3. -.TP -.B News-conference: conf-no -The number of the conference where news of interest to the readers of -this LysKOM server should be written. This is typically a conference -with very low traffic which everyone shoule be a member of. Clients -should offer new users to join it. Defaults to 4. -.TP -.B Message of the day: text-no -Default message-of-the-day of this server. -The text will be showed automatically by conforming LysKOM clients -when a user logs on. -There is a question in protocol A which changes this number, but -(currently) a motd set by the protocol will be forgotten the next time -the server is restarted. -This may change in the future. -.TP -.B Never save: bool -Do not use unless you know what you are doing. -(Note: there is currently no-one in the LysKOM development group which -knows exactly what this option does!) -.TP -.B Log accesses: filename -This parameter can only be set if the server has been compiled with -.B LOGACCESSES -defined. It will save a trace of all activity in the database to a -file, for later use in simulations et c. -Compiling with -.B LOGECCESSES -slows the server down quite a lot, so it is normally not defined. -.TP -.B Data file: data_file -Part of the data base will be held in -.I prefix/data_file. -.TP -.B Backup file: backup_file -The file -.I prefix/backup_file -will always contain a complete data base, but it might be a little -outdated. -.TP -.B Text file: text_file -The file -.I prefix/text_file -holds all actual text which is written. -.TP -.B Text backup file: backup_text -When dbck is run with the -.I -g -option (see dbck(8)) it will store the previous contents of -.I prefix/text_file -in -.I prefix/backup_text. -This file is never used by lyskomd itself. -.TP -.B Log statistics: stat_file -Whenever lyskomd receives a SIGHUP it will append a timestamp and -a count of how many different atomic calls have been made in -.I prefix/stat_file. -.TP -.B Pid file: pid_file -When lyskomd is up-and-running it will write its pid in the file -.I prefix/pid_file. -This file is not currently used as a log file. It is present here -only so that the updateLysKOM script can easily find out what pid the -LysKOM server has. -.TP -.B Memory usage file: mem_file -When lyskomd exits normally it appends some info on its usage of -memory to -.I prefix/mem_file. -Almost any memory leak bugs should be detectable by looking in this -file. -.TP -.B Idle timeout: idle -Number of milliseconds to sleep when there is nothing for lyskomd -to do. -.TP -.B Garb timeout: garb -Number of milliseconds to sleep when the server is garbaging texts, -but has nothing else important to do. -.TP -.B Sync timeout: sync -Number of milliseconds to sleep when lyskomd is saving its database. -Defaults to 0. -.TP -.B Garb interval: garb_interval -Number of minutes between each garb sweep. Defaults to 1440, that is, -a garb sweep will be run once per day. -.TP -.B Sync interval: sync_interval -Number of minutes between syncs. Currently, lyskomd holds part of the -data base in main memory. It is dumped to -.I prefix/data_file -periodically. This parameter determines the period. -.TP -.B Sync retry interval: retry_interval -If anything goes wrong while trying to dump the data base to -.I prefix/data_file -(such as if the disk is full), -lyskomd will wait for this many minutes before trying again. -.TP -.B Max conference name length: int -.TP -.B Max password length: int -Only the first eight characters of the password are currently -significant, even if this number is much larger. -.TP -.B Max what am I doing length: int -.TP -.B Max username length: int -.TP -.B Max text length: int -.TP -.B Max broadcaset length: int -.TP -.B Max regexp length: int -.TP -.B Max marks per person: int -.TP -.B Max marks per text: int -.TP -.B Max recipients per text: int -.TP -.B Max comments per text: int -.TP -.B Max footnotes per text: int -.TP -.B Max links per text: int -.TP -.B Max mark_as_read chunks: int -.TP -.B Max super_conf loop: int -.TP -.B Default garb nice: int -Each conference has a lifetime for texts written in it. -The lifetime is counted in days, and can be set for each conference by -the administrator of the conference. -This is the default value assigned to new conferences. -.TP -.B Max client transmit queue: int -Mux number of pending data blocks in the reply queue to a client. If -there is ever more than this many data blocks in the queue the client -will be disconnected. Each atomic question typically generates two -data blocks. -.TP -.B Max simultaneous client replies: int -This is a performance tuning parameter of little real interest. -.TP -.B Anyone can create new persons: bool -If this is set, anyone can create a new person, even if he lacks -special bits for doing so. -.TP -.B Anyone can create new conferences: bool -If this is set, anyone can create a new conferences, even if he lacks -special bits for doing so. -.TP -.B Allow creation of persons before login: bool -If this is set, persons can connect the the server and create a new -person without logging in. This is how new users register in open -environments. -.TP -.B Default change name capability: bool -If this is set, new users are created with the ability to change their -own name. -.TP -.B Cache conference limit: int -How many conference statuses the server cache should hold in main -memory. -.TP -.B Cache person limit: assign_int -How many person statuses the server cache should hold in main -memory. -.TP -.B Cache text_stat limit: assign_int -How many text statuses the server cache should hold in main -memory. -.TP -.B Echo: text_string -Write -.I text_string -in the log. -.TP -.B Jubel: pers_no text_no -State that -.I pers_no -is not allowed to create text number -.I text_no -.TP -.B Jubel: pers_no divident remainder -Say that -.I pers_no -is not allowed to create any text number -.I T -which meets the condition -.I T \% divident == remainder -.SH SIGNALS -There are some signals that have a special meaning to the LysKOM -server. -.TP -.B SIGHUP -Logs out all sessions, saves the database and exits normally. -.TP -.B SIGQUIT -Saves the database and dump core. (This should only be used for -debugging purposes.) -.TP -.B SIGUSR1 -Print statistics about how often different commands have been used -since the process started. -.TP -.B SIGUSR2 -Forks a child that immediately dumps core. The main process just waits -until the child is done and then continues. (This does not work on -Suns.) -.SH FILES -.TP 20 -.B /usr/lyskom -Default value of -.I prefix. -.TP -.IB prefix /db/lyskomd-data -Half of the database: all status information. -.TP -.IB prefix /db/lyskomd-texts -The other half of the database: the actual texts. -.TP -.IB prefix /db/lyskomd-backup -A backup copy of -.I lyskomd-data. -Never, ever delete this file unless you know what you are doing, or -you may lose the entire data base. Most of the time this is the only -complete database file! -.TP -.IB prefix /etc/pid -File with the pid of the lyskom-process. -.TP -.IB database-directory /etc/memory-usage -On normal exit, -.I lyskomd -will append some statistics to this file. It can be used for -detecting memory leaks. -.SH BUGS -.PP -lyskomd should re-read the config file when a SIGHUP is received. -.PP -lyskomd should terminate when a SIGINT or SIGTERM is received. -.PP -A very small memory leak still remains. -.PP -There is no practical handling of security. -.PP -The choice of asynchronously issued messages is not very good. -.PP -The so called "data base" is a joke. -.PP -It uses too much memory. -.SH HISTORY -In 1990, Per Cederqvist <ceder@lysator.liu.se> and Peter Eriksson -<pen@lysator.liu.se> and a few other persons started to write the -server. It was operational in the summer of 1990, even though the -members of Lysator discovered a thing called MUD. We started using -RCS on 20 May 1991. The first release was made on 16 Sept 1991. -Around that time we switched from RCS to CVS, and ceder started to -write pcl-cvs (a GNU Emacs front-end to CVS) instead of LysKOM. After -a while, he started writing Bugtrack, to be able to handle all bug -reports he recieved about pcl-cvs. He hopes to be able to devote some -more time to LysKOM in the future. -.SH NOTE -Contact Per Cederqvist if you want commercial support of LysKOM. diff --git a/doc/man/man8/ramkomd.8 b/doc/man/man8/ramkomd.8 deleted file mode 100644 index 3f0646cdc0458b9dec4ca6f561e8930761791752..0000000000000000000000000000000000000000 --- a/doc/man/man8/ramkomd.8 +++ /dev/null @@ -1,118 +0,0 @@ -.\" $Id: ramkomd.8,v 1.4 1991/09/15 09:54:39 linus Exp $ -.\" Copyright (C) 1991 Lysator Academic Computer Association. -.\" -.\" This file is part of the LysKOM server. -.\" -.\" LysKOM is free software; you can redistribute it and/or modify it -.\" under the terms of the GNU General Public License as published by -.\" the Free Software Foundation; either version 1, or (at your option) -.\" any later version. -.\" -.\" LysKOM is distributed in the hope that it will be useful, but WITHOUT -.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -.\" for more details. -.\" -.\" You should have received a copy of the GNU General Public License -.\" along with LysKOM; see the file COPYING. If not, write to -.\" Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -.\" or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -.\" MA 02139, USA. -.\" -.\" Please mail bug reports to bug-lyskom@lysator.liu.se. -.\" -.\" $Id: ramkomd.8,v 1.4 1991/09/15 09:54:39 linus Exp $ -.\" $Date: 1991/09/15 09:54:39 $ -.TH ramkomd 8 "August 22, 1991" -.SH NAME -ramkomd - LysKOM server -.SH SYNOPSIS -.B /usr/lyskom/bin/ramkomd -[ -.B -d -] [ -.B -q -] [ -.BI -D database-directory -] [ -.BI -p clientportnumber -] [ -.BI -P muxportnumber -] [ -.B -a -] -.SH DESCRIPTION -This program runs a LysKOM server. -.PP -It listens for connections on the given portnumbers (defaults are 4894 -for the -.I clientportnumber -and 4787 for the -.IR muxportnumber ). -.SH OPTIONS -.TP -.B \-d -Adds one to the debug-level i.e. increases the amount of output on the -stderr from the process. - -Using one -.B \-d -make the process print a -.I > -for every timeout, a message for every person that is connecting or -disconnecting and a message for every succesful or unsuccessful -communication to the process. -.TP -.B \-q -Never save the database. -.TP -.BI \-D database-directory -Use the database in the -.I database-directory. -.br -Example: If your database is in -.B $HOME/lyskom/db -you should use the option -.B \-D$HOME/lyskom -.TP -.BI \-p clientportnumber -listens for clients on the port number -.I clientportnumber. -.TP -.BI \-P muxportnumber -listens for mux connections on the port number -.I muxportnumber. -A mux connection is a connection using a special protocoll to allow -several sessions within one connection. -.TP -.B \-a -Do not send any non-requested messages. This disables the sending of -messages about events in the server to all connections. -.SH FILES -.TP 20 -.B /usr/lyskom -Default database directory. -.TP -.IB database-directory /db/ramkomd-data -File with all the elements and pointers. -.TP -.IB database-directory /db/ramkomd-texts -File with the texts. -.TP -.IB database-directory /etc/pid -File with the pid of the lyskom-process. -.TP -.IB database-directory /db/ramkomd-backup -Backup file with all data. -.SH BUGS -Small memory leak. -.PP -There is no practical handling of security. -.PP -The choice of asynchronously issued messages is not very good. -.PP -The so called "data base" is a joke. -.SH AUTHOR -Per Cederqvist <ceder@lysator.liu.se> -.SH NOTE -Version 2.0 on its way. diff --git a/doc/man/man8/updateLysKOM.8 b/doc/man/man8/updateLysKOM.8 deleted file mode 100644 index 8e75d624f508753690318427e14752d5cdc7b6c2..0000000000000000000000000000000000000000 --- a/doc/man/man8/updateLysKOM.8 +++ /dev/null @@ -1,36 +0,0 @@ -.\" $Id: updateLysKOM.8,v 1.2 1991/09/15 09:54:36 linus Exp $ -.\" Copyright (C) 1991 Lysator Academic Computer Association. -.\" -.\" This file is part of the LysKOM server. -.\" -.\" LysKOM is free software; you can redistribute it and/or modify it -.\" under the terms of the GNU General Public License as published by -.\" the Free Software Foundation; either version 1, or (at your option) -.\" any later version. -.\" -.\" LysKOM is distributed in the hope that it will be useful, but WITHOUT -.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -.\" for more details. -.\" -.\" You should have received a copy of the GNU General Public License -.\" along with LysKOM; see the file COPYING. If not, write to -.\" Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -.\" or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -.\" MA 02139, USA. -.\" -.\" Please mail bug reports to bug-lyskom@lysator.liu.se. -.\" -.\" $Id: updateLysKOM.8,v 1.2 1991/09/15 09:54:36 linus Exp $ -.\" $Date: 1991/09/15 09:54:36 $ -.TH updateLysKOM 8 "August 22, 1991" -.SH NAME -updateLysKOM - tells the server to save the internal statistics -.SH SYNOPSIS -.B /usr/lyskom/bin/updateLysKOM -.SH DESCRIPTION -This program sends a USR1 signal to the LysKOM server. If the sending -of a signal fails it restarts the server. -.SH INSTALLATION -Make sure the source file contains the correct file to start, find the -pid in and the correct logfiles. diff --git a/doc/prot-A.bnf b/doc/prot-A.bnf deleted file mode 100644 index 7f025bca7c99a835419b69af0008f05f0b3c2863..0000000000000000000000000000000000000000 --- a/doc/prot-A.bnf +++ /dev/null @@ -1,1067 +0,0 @@ - - LysKOM-Projektet - -------------------------------- - Specifikation av protokoll A mellan klient och server - -------------------------------- - av Lars Aronsson - <Aronsson@Lysator.LiU.SE> - 25 juni 1991 - - - - LysKOM - -LysKOM {r ett datakonferenssystem. Andra liknande system {r QZ-KOM och -PortaCOM. LysKOM {r Copyright (C) 1990 datorf|reningen Lysator vid -Universitetet och Tekniska H|gskolan i Link|ping. Var och en till}ts -fritt kopiera, {ndra och distribuera LysKOM dokument och program, -givet att mottagarna ges samma r{ttigheter. Varken Lysator eller dess -medlemmar tar n}got som helst ansvar f|r dokumentens eller programmens -riktighet eller f|ljderna av deras anv{ndande. - - - Den h{r texten - -Den h{r texten specificerar version A av det protokoll som anv{nds -mellan en klient (anv{ndarens program) och en server (databasen). Den -h{r texten {r t{nkt att inneh}lla allt du beh|ver veta f|r att skriva -en klient utan att veta n}got om servern, eller tv{rtom. - -Mitt syfte {r att den h{r texten skall vara s} fullst{ndig och korrekt -som m|jligt. Om du hittar n}gra fel, eller kommer p} n}got som saknas, -s} h|r g{rna av dig till mig. F|ljande {r de saker som jag vet saknas -i den h{r texten: - - Vad som lagras i en anv{ndares "user-area", och hur. - - - Filer - -Den h{r filen {r en mer systematisk sammanst{llning av nedan -uppr{knade filer. Det {r m|jligt att filerna har {ndrat namn, antal -och utseende n{r du l{ser detta. S} h{r hette de den 3 juni 1991: - - 2kom/doc/com-spec -- borta! - 2kom/doc/security-levels.txt - 2kom/include/kom-types.h - 2kom/include/kom-errno.h - 2kom/isc-client/com.h - 2kom/server/fncdef.txt -- borta? - 2kom/include/services.h - - - Underliggande protokoll - -LysKOM Protokoll A kan k|ras ovanp} vilken tillf|rlitlig dubbelriktad -8-bitars bytekanal som helst. I n|dfall kan det ocks} k|ras p} en -7-bitars bytekanal. Idag k|rs det ovanp} Telnet/TCP/IP. P} Lysator -anv{nds telnetport 4894 p} IP-host 130.236.254.12 (laila). Data i -protokoll A sker i ASCII klartext. I hollerithstr{ngar (se nedan) f}r -godtyckliga 8-bitars bytes f|rekomma, men tanken {r att man skall -kunna k|ra protokollet "r}tt" fr}n en textterminal. - - - Abstrakt syntaxnotation - -I den h{r specifikationen har en BNF-liknande grammatik anv{nts f|r -att beskriva protokollets dataelement. Det {r mycket vetenskapligt, -f|r s} g|r de som specar OSI-protokoll. Den h{r grammatiken borde -likna ASN.1 mer {n den g|r, men jag har inte ASN.1-specen h{r. -Dataf{lt har givits namn med liten begynnelsebokstav, datatyper med -stor. Operatorn "::=" definierar (som i BNF) och ":" ger typ (som i -Pascal). Kommentarer inleds med "!" och avslutas med radslut (som i -BLISS). Semikolon anv{nds som i C. De grundl{ggande typerna och deras -notation beskrivs h{rn{st. - - - Grundl{ggande datatyper - -Dataelementen som skickas med protokollet }tskiljs av (godtyckliga -sekvenser av) mellanslag, tab-tecken, line-feed, return, eller NULL. -Undvik att skicka NULL, men var beredd p} att tolka det som ett -mellanslag. - -INTEGER {r icke-negativa heltal som skall rymmas p} 32 bitar. De -skickas som text p} decimal form. - -HOLLERITH {r textstr{ngar. F|rst skickas str{ngens l{ngd som en -INTEGER, sedan bokstaven "H" och d{refter (utan }tskiljande -mellanslag!) texten. Texten f}r inneh}lla vilka byte-v{rden som helst -fr}n 0 till 255. - -BITSTRING skickas som text representerande ett heltal p} bin{r form. -Antal bitar i str{ngen framg}r alltid av sammanhanget. [ven inledande -nollor m}ste skickas. Siffran "1" representerar sant v{rde och "0" -falskt. Bitarna skickas i den ordning de st}r listade i den abstrakta -syntaxen. - - shape-of-world : BITSTRING ( - is-flat; is-round; is-3d; is-2d; ! e.g. "0110" - ) - -ARRAY {r en lista med ett visst antal element. Elementens typ noteras -omedelbart efter ordet ARRAY. F|rst skickas en INTEGER som ger antalet -element, sedan skickas tecknet "{", d{refter alla elementen i f|ljd -och slutligen tecknet "}". Tecknen "{" och "}" fyller egentligen ingen -funktion, men underl{ttar n{r man k|r protokollet "r}tt". Exempel: - - hackers : ARRAY HOLLERITH; - ! e.g. 4 { 8Haronsson 7Hbellman 4Hinge 5Hceder } - -SELECTION {r en INTEGER med efterf|ljande svans. Vilken typ svansen -har beror p} v{rdet av heltalet. F|r vissa v{rden kan svansen vara -tom. V{rdet anges i den abstrakta syntaxen med "nummer=namn". -Exempel: - - phrase : SELECTION ( - 1=hello name:HOLLERITH; ! e.g. "1 4HJohn" - 2=howdy ; ! e.g. "2" - ) - -RPC {r en mycket speciell notation som anv{nds f|r protokoll med -remote procedure calls, dvs fr}gor och svar. Notationen f|r RPC ser ut -som SELECTION, men varje alternativ har tv} svansar: fr}gan och -svaret. Selectornumret skickas bara tillsammans med fr}gan. Exempel: - - phrases : RPC ( - 1=cost inventory:INTEGER; price:INTEGER; - 2=time timezone:INTEGER; hours:INTEGER; - 3=name ; name:HOLLERITH; - ) - ! e.g. "1 23"->"498" "3"->"4HLars" "2 1"->"1430" - -Datastrukturen struct/record markeras i den abstrakta syntaxen bara -med omgivande "(" och ")". Detta inneb{r inte att n}gra extra tecken -skickas i protokollet. - - - Dialog - -En session b|rjar alltid med en uppkoppling, d{r klienten v{ljer -protokoll genom att skicka en - - uppkopplingsbeg{ran : ( "A"; loginnamn : HOLLERITH; ) - -vilken besvaras fr}n servern av en - - uppkopplingsbekr{ftelse : "LysKOM\n" - -D{refter har vi finns bara RPC-protokollet commands. Klienten f}r -skicka flera fr}gor innan den f}tt svar p} det f|rsta. F|r att h}lla -reda p} till vilket anrop ett visst svar h|r, v{ljer klienten ett -referensnummer att medf|lja och samma nummer }terfinns i svaret. Det -{r klientens sak att fritt v{lja och h}lla reda p} referensnumren. - - fr}ga : ( - ref-no : INTEGER; - commands-call; - ) - -som, om allt g}r som det skall, besvaras fr}n servern med - - ok-return : ( - "="; - ref-no : INTEGER; - commands-return; - ) - -eller, om n}got misslyckades, med - - error-return : ( - "%"; - ref-no : INTEGER; - error-no : Error-No; - error-status : INTEGER; - ) - -Det skall inte vara n}got tomrum mellan "=" respektive "%" och ref-no. -Observera att {ven f|r de funktioner d{r f-return {r inneh}llsl|st -svarar servern med "=" eller "%" och ref-number. - - - S{kerhetsniv}er och privilegiebittar - -S{kerhet och privilegier byggs i LysKOM med tv} komponenter: Varje -person har sig ett antal bittar tilldelad (man kan s{ga att personen -tillh|r ett antal grupper) och varje session har dessutom en -s{kerhetsniv} (ett tal). Varje r{ttighet kr{ver en viss bitt och en -viss minsta niv}. De senast aktuella kombinationerna -bitt-niv}-r{ttighet beskrivs i filen 2kom/doc/security-levels.txt, h{r -ges en vackrare tabell: - - Bitt Niv} R{ttighet - ------------------------------------------------------ - wheel Normalt ej tilldelad - 0 Alltid logga in, {ven vid "crowded" - 6 S{tta alla Priv_bits f|r alla personer - 7 S{tta password f|r alla personer - 8 Vara organisat|r (supervisor) f|r allt - 10 Kan l{sa alla texter - ------------------------------------------------------ - admin Normalt ej tilldelad - 1 St{nga av servern - 1 S{tta motd_of_kom - 1 L{sa last_login - 2 L{sa status f|r hemliga m|ten och - personer - 2 L{sa de skyddade delarna av statusen - 2 L{sa hela text_statusen, - {ven vid hemliga mottagare - 3 Byta namn p} alla - 4 Addera/subtrahera medlemmar - 4 Addera/subtrahera mottagare till texter - 5 S{tta superm|te - 5 Radera texter - 6 S{tta administrat|r - ------------------------------------------------------ - statistic Normalt ej tilldelad - 2 L{sa statistikdelarna av Person-structen, - {ven om de {r skyddade. - ------------------------------------------------------ - create_conf Normalt tilldelad - 0 Skapa m|ten - ------------------------------------------------------ - create_pers Normalt tilldelad - 0 Skapa personer - ------------------------------------------------------ - -Enligt Thomas Bellmans erfarenheter anv{nder en administrat|r i -praktiskt arbete bara niv}erna 0 och 255. I st{llet f|r -s{kerhetsniv}er borde de enskilda privilegiebittarna sl}s p} och av -individuellt. Detta kanske l|ses elegantare i kommande versioner av -protokollet. - - - Felkoder - -De felkoder som f|rekommer som svar p} RPC-anrop {r nedanst}ende. H{r -{r de f|rklarade i nummerordning. Det finns en kort lista i alfabetisk -ordning strax efter}t. - - Error-No : SELECTION ( - 0=no-error; ! No error has occured - 2=not-impl; ! Not implemented yet - 3=obsolete; ! No longer implemented - 4=pwd; ! Wrong or illegal password - 5=long-str; ! String too long - 6=login; ! Not logged in. - 7=login-disallowed; ! System is in 'singel-user mode' - 8=conf-zero; ! Attempt to use conference number 0. - 9=undef-conf; ! Undefined or secret conference - 10=undef-pers; ! Undefined or secret person - 11=access; ! No 'read/write permission' - 12=perm; ! No permission - 13=not-member; ! Not member in conf - 14=no-such-text; ! No such global text-no, or no access - 15=text-zero; ! Can't use text no 0 - 16=no-such-local-text;! No such local text-no - 17=local-text-zero; ! Can't use local text no 0 - 18=bad-name; ! Too short or too long - ! or contains illegal chars - 19=index-out-of-range; - 20=conf-exists; ! Already exists - 21=pers-exists; ! Already exists - 22=secret-public; ! Cannot be secret and !rd-prot - 23=letter-box; ! Cannot change letter-box flag - 24=ldb-err; ! Should never happen, - ! unless Willf|r makes a mistake. - 25=ill-misc; ! Illegal misc field. - ! err-stat holds field no - 26=illegal-info-type; ! Info-type parameter was illegal. - ! This means that there is a - ! bug in the client. - 27=already-recipient; ! Already recipient to this text. - 28=already-comment; ! Already comment to this text. - 29=already-footnote; ! Already footnote to this text. - 30=not-recipient; ! Not recipient - 31=not-comment; ! Not comment to this text. - 32=not-footnote; ! Not footnote to this text. - 33=recipient-limit; ! Too many recipients - 34=comm-limit; ! Too many comments - 35=foot-limit; ! Too many footnotes - 36=mark-limit; ! Too many marks. - 37=not-author; ! Only the author may add footnotes or - ! delete texts. - 38=no-connect; ! Can't connect to specified server - 39=out-of-memory; ! Couldn't get memory for result - 40=server-is-crazy; ! Client can't understand server - 41=client-is-crazy; ! Client thinks that server says it - ! can't understand client. - 42=undef-session; ! This session doesn't exist - ) - - - Nummer Felmeddelande Nummer Felmeddelande - ------------------------------------------------------ - 11 access 28 already-comment - 29 already-footnote 27 already-recipient - 18 bad-name 41 client-is-crazy - 34 comm-limit 20 conf-exists - 8 conf-zero 35 foot-limit - 25 ill-misc 26 illegal-info-type - 19 index-out-of-range 24 ldb-err - 23 letter-box 17 local-text-zero - 6 login 7 login-disallowed - 5 long-str 36 mark-limit - 38 no-connect 0 no-error - 16 no-such-local-text 14 no-such-text - 37 not-author 31 not-comment - 32 not-footnote 2 not-impl - 13 not-member 30 not-recipient - 3 obsolete 39 out-of-memory - 12 perm 21 pers-exists - 4 pwd 33 recipient-limit - 22 secret-public 40 server-is-crazy - 15 text-zero 9 undef-conf - 10 undef-pers 42 undef-session - ------------------------------------------------------ - - - Asynkrona anrop - -N{r som helst kan servern skicka ut ett asynkront anrop. En klient -beh|ver inte bry sig om dem. Det g}r bra att l{sa undan dem n{r ett -svar skall l{sas. Asynkrona meddelanden b|rjar alltid med ":" och ett -heltal som talar om hur m}nga parametrar som kommer. D{refter kommer -en selector och parametrarna. Precis som f|r ok- och error-return {r -d{r inget tomrum mellan ":" och f|rsta heltalet. I f|rklaringen nedan -listas de asynkrona anropen i nummerordning, men en alfabetiskt -sorterad lista f|ljer strax d{rp}. - - -asynk-meddelande ::= ( - ":"; - antal-params:INTEGER; - meddelande : SELECTION ( - 0=new-text ( text-no : Text-No; - text-stat : Text-stat ) - ! En ny text har skapats. - - 1=logout person : Pers-No; - ! G}r {ven under namnet "i-am-off" (i C-koden). - ! K{llkoden f|r Elispklienten g|r g{llande att - ! asynkrona anropet nummer 1 {r taget ur bruk. - ! Det {r ersatt av anrop 13 som anger sessionsnummer. - - 2=who-info ( person : Pers-No; - conference : Conf-No; - what-am-i-doing : HOLLERITH; ) - ! K{llkoden f|r Elispklienten g|r g{llande att - ! asynkrona anropet nummer 2 heter login, men att - ! det hur som helst {r taget ur bruk och ersatt av - ! asynkrona anropet nummer 9. - - 3=conf-deleted ! Anv ej av Elispklienten - ??? - 4=conf-created ! Anv ej av Elispklienten - ??? - 5=conf-changed-name - ( conf-no : Conf-No; - old-name : HOLLERITH; - new-name : HOLLERITH; ) - ! G}r {ven under namnet "new-name" (i C-koden). - - 6=i-am-on info : Who-Info; - 7=database-is-syncing - ; - 8=forced-leave-conf ! Anv ej av Elispklienten - ??? - 9=login ( pers-no : Pers-No; - session-no : Session-No; ) - - 10=broadcast-message - ( sender : Pers-No; - message : HOLLERITH; ) - ! Det vore estetiskt f|rdelaktigt om servern aldrig skickade - ! asynkrona anropet nummer 10 utan h|ll sig till nummer 12. - - 11=crowded ; - ! Asynkrona anropet nummer 11 betyder att n}gon har - ! misslyckats logga in, eftersom servern inte har fler - ! lediga f|rbindelser. Den ansvarsk{nnande anv{ndaren - ! kan nu v{lja att logga ut f|r att bereda plats. - - 12=directed-message - ( recipient : Pers-No; - sender : Pers-No; - message : HOLLERITH; ) - ! Om argumentet recipient {r noll (0) i asynkrona anropet - ! nummer 12, s} {r meddelandet riktat till alla inloggade. - ! Det {r {nnu inte m|jligt att rikta ett meddelande till - ! en viss session. - - 13=new-logout - ( pers-no : Pers-No; - session-no : Session-No; ) - ) -) - -En asterisk (*) efter numret i tabellen nedan anger att det asynkrona -anropet ersatts av n}got annat. Se ovan under respektive anrop f|r -n{rmare beskrivning. - - Nr Asynkront anrop Nr Asynkront anrop - ------------------------------------------------------ - 10 broadcast-message 5 conf-changed-name - 4 conf-created 3 conf-deleted - 11 crowded 7 database-is-syncing - 12 directed-message 8 forced-leave-conf - 6 i-am-on 9 login - 1* logout 13 new-logout - 0 new-text 2* who-info - ------------------------------------------------------ - - - RPC-anrop - -Klienten skickar RPC-anrop med parametrar till servern. Servern svarar -endera med ett felmeddelande (se ovan i avsnitten Dialog och Felkoder) -eller med ett returv{rde. Nedan ges BNF-grammatiken f|r de datatyper -som anv{nds i parametrar och returv{rden. RPC-anropen listas i -alfabetisk ordning, men en numeriskt sorterad lista f|ljer strax -efter}t. - - -commands : RPC ( - ! Anropsnummer och -namn - ! Datayp f|r anropsparameter - ! Datatyp f|r returv{rde - - 32=add-comment - params : ( comment : Text-No; - comment-to : Text-No; ) - ; - - - 37=add-footnote - params : ( footnote : Text-No; - footnote-to : Text-No; ) - ; - - 14=add-member - params : ( conf-no : Conf-No; - pers-no : Pers-No; - priority : INTEGER; - where : INTEGER; ) - ; - ! Addera angiven person som medlem i angivet m|te - ! Priority {r prioriteten p} l{slistan - ! Where {r placering p} listan, 0 (noll) eller st|rre - ! RPC-anropet nummer 14 anv{nds {ven senare f|r att {ndra - ! prioritet och plats p} listan. - - 30=add-recipient - ! The sequence "conf-no, type" is a reversed Misc-Info. - ! Type is recpt or cc_recpt. - add-recipient-params : ( text-no : Text-No; - conf-no : Conf-No; - type : INTEGER; ) - ; - - 45=broadcast - message : HOLLERITH; - ; - ! Ett privilegierat anrop. - ! Samma effekt kan n}s genom magisk parameter till anrop 53. - ! En gammal felaktig kommentar g|r g{llande att parametern - ! skulle vara ett text-no, men s} {r inte fallet. - - 3=change-name - change-name-params : ( conf-no : Conf-No; - new-name : HOLLERITH; ) - ; - ! Anropet nummer 3 byter namn p} angivet m|te eller person. - - 4=change-what-i-am-doing - what-am-i-doing : HOLLERITH; - ; - ! Den medskickade texten kommer att visas i vilka-listan, - ! se {ven anropet nummer 51. - - 10=create-conf - params : ( name : HOLLERITH; - type : Conf-Type; ) - result : Conf-No; - - 5=create-person - create-person-params : ( name : HOLLERITH; - passwd : HOLLERITH; ) - Pers-No; - ! En ny person skapas med angivet namn och l|senord. - ! Den skapade personens personnummer returneras. - - 28=create-text - ! create-text-return returns text number zero on error - ! NB! Only Misc-Infos 0,1,2,4 can be sent here. - params : ( text : HOLLERITH; - misc-info : ARRAY Misc-Info ) - result : Text-No; - - 11=delete-conf - conf : Conf-No; - ; - ! Utpl}na ett m|te eller en person. - - 29=delete-text - Text-No; - ; - - 55=disconnect - session-no : Session-No; - ; - ! Disconnect a session. You can disconnect your own session - ! (even if you are not logged in) and any session where you - ! are supervisor of the user that is logged in on that - ! session. - - 42=enable - ena-level : INTEGER; - ; - ! This is a privileged call. - ! Set ena-level. Zero means don't use any privileges. - - 50=get-conf-stat - conf-no : Conf-No; - result : Conference; - ! Returnera m|tesstatus f|r angivet m|te - - 13=get-conf-stat-old - params : ( conf-no : Conf-No; - mask : INTEGER; ) - result : Conference - ! Eftersom den mask som ing}r i params f|ga beaktas, - ! har anropet nummer 13 ersatts av anropet 50. - ! M|tesstatusen f|r det angivna m|tet returneras. - ! Om masken {r ett j{mnt tal, s} skickas ett tomt f{lt (0H) - ! name i svaret. Fr}n b|rjan var det t{nkt: - ! mask = name + members + texts + list-sizes -- just use 255 - - 47=get-created-texts - params : ( person : Pers-No; - first : Local-Text-No; - no-of-texts : INTEGER; ) - created-texts : Text-List; - ! NB! first is a text number local to the person who wrote it. - ! It is not a Local-Text-No in his mailbox. - - 34=get-map - params : ( conf-no : Conf-No; - first-local-no : Local-Text-No; - no-of-texts : INTEGER; ) - result : Text-List; - - 23=get-marks - ; - Mark-List; - - 48=get-members - params : ( conf : Conf-No; - first : INTEGER; - no-of-members : INTEGER; ) - members : Member-List; - ! first should perhaps be Local-Conf-No... - - 46=get-membership - params : ( person : Pers-No; - first : INTEGER; - no-of-confs : INTEGER; - mask : BITSTRING (want-read-texts); ) - memberships : Membership-List; - ! first should perhaps be Local-Conf-No... - - 49=get-person-stat - person : Pers-No; - result : Person; - ! Personstatusen f|r den angivna personen returneras. - - 6=get-person-stat-old - params : ( person : Pers-No; - mask : INTEGER; ) - result : Person; - ! Eftersom den mask som ing}r i params f|ga beaktas, - ! har anropet nummer 6 ersatts av anropet 49. - ! Personstatusen f|r den angivna personen returneras. - ! Om masken {r ett j{mnt tal, s} skickas ett tomt f{lt (0H) - ! username i svaret. - - 36=get-server-info - ; - result : Info; - ! Return various information about the server. - ! Anrop 36 hette tidigare get-info med samma semantik. - - 54=get-session-info - session-no : Session-No; - result : Session-Info; - - 25=get-text - params : ( text : Text-No; - start-char : INTEGER; - end-char : INTEGER; ) - result : HOLLERITH; - - 26=get-text-stat - params : Text-No; - result : Text-Stat; - - 35=get-time - ; - Time; - - 52=get-unread-confs - pers-no : Pers-No; - conf-no-list : ARRAY Conf-No; - - 0=login - login-params : ( person : Pers-No; - passwd : HOLLERITH; ) - ; - - 1=logout - ; - ; - ! Anropet nummer 1 misslyckas aldrig. - - 12=lookup-name - name : HOLLERITH; - result : Conf-List-Old; - ! Expandera ett f|rkortat namn och returnera en lista - ! med nummer p} de m|ten och personer som det kan vara. - ! Se kommentaren vid definitionen av Conf-List. - - 27=mark-as-read - params : ( conference : Conf-No; - texts : ARRAY Local-Text-No; ) - ; - - 24=mark-text - params : ( text : Text-No; - mark-type : INTEGER; ) - ! mark-type = permanently-marked -- just use 255 (?) - ! The server only stores (does not act upon) this value. - ; - - 2=pepsi - Conf-No; - ; - ! Anropet nummer 2 anv{nds f|r att g} till det angivna m|tet. - ! Det engelska namnet {r change conference. - ! Namnet "Pepsi" h|r till avdelningen mer krystade vitsar. - - 9=query-read-texts - params : ( pers-no : Pers-No; - conf-no : Conf-No; ) - result : Membership; - ! Man kan fr}ga efter ol{sta utan att logga in. - - 53=send-message - params : ( recipient : Pers-No; - message : HOLLERITH; ) - ; - ! Ett privilegierat anrop. - ! Om mottagaren {r nummer noll, skickas meddlandet till - ! samtliga inloggade personer. Detta kan ers{tta anrop 45. - - 17=set-conf-motd - params : ( conf-no : Conf-No; - text-no : Text-No; ) - ; - ! S{tt lappen text-no p} d|rren till conf-no. - ! Set-presentation och set-etc-motd trollar dessutom - ! med f{ltet no-of-marks i textstatusen f|r den gamla - ! och den nya presentationstexten. - ! Anrop 17 hette f|rr set-etc-motd med samma semantik. - - 21=set-conf-type - params : ( conf-no : Conf-No; - type : Conf-Type ) - ; - ! M|tet conf-no {r av typen type. - - 22=set-garb-nice - params : ( conf-no : Conf-No; - nice : Garb-Nice; ) - ; - ! Inl{gg i m|tet conf-no sparas i nice dagar innan de raderas. - - 41=set-motd-of-lyskom - motd : Text-No; - ; - ! This is a privileged call. - ! The text indicated by the parameter is set to be the message - ! of the day of LysKOM. - - 8=set-passwd - params : ( person : Pers-No; - old-pwd : HOLLERITH; - new-pwd : HOLLERITH; ) - ; - ! Ge personen ett nytt l|senord. Old-pwd {r det (gamla) - ! l|senordet f|r personen som g|r RPC-anropet (inte - ! n|dv{ndigt samma som anges av f|rsta argumentet). - - 19=set-permitted-submitters - params : ( conf-no : Conf-No; - perm-sub : Conf-No; ) - ; - ! M|tet conf-no {r skrivskyddat. - ! Endast medlemmar i perm-sub f}r skriva inl{gg i conf-no. - ! Om perm-sub {r 0 (noll) (???) {r m|tet inte skrivskyddat. - - 16=set-presentation - params : ( conf-no : Conf-No; - text-no : Text-No; ) - ; - ! [ndra presentationen f|r angivet m|te eller person. - ! Ange text-no 0 (noll) f|r att ta bort presentationen. - ! Set-presentation och set-etc-motd trollar dessutom - ! med f{ltet no-of-marks i textstatusen f|r den gamla - ! och den nya presentationstexten. - - 7=set-priv-bits - params : ( person : Pers-No; - privileges : Priv-Bits ) - ; - ! Ge eller ta n}gra bittar f|r den angivna personen. - - 20=set-super-conf - params : ( conf-no : Conf-No; - super-conf : Conf-No; ) - ; - ! G|r super-conf till superm|te (organisat|r?) f|r m|tet - ! conf-no. Om conf-no {r skrivskyddat, s} skickas eventuella - ! brev vidare till superm|tet. - - 18=set-supervisor - params : ( conf-no : Conf-No; - admin : Conf-No; ) - ; - ! G|r alla medlemmar i m|tet admin till administrat|rer (???) - ! f|r m|tet conf-no. Admin {r typiskt en persons brevl}da. - - 40=set-unread - params : ( conference : Conf-No; - no-of-unread : INTEGER; ) - ; - ! Endast l{sa no-of-unread senaste i angivet m|te. - - 57=set-user-area - params : ( pers-no : Pers-No; - user-area : Text-No; ) - ; - ! Angiven text anv{nds f|r att lagra angiven persons - ! variabler. Hur detta g}r till borde kanske behandlas - ! i ett separat kapitel. - - 44=shutdown - exit-val : INTEGER; - ; - ! This is a privileged call. - ! Shutdown server. - ! An old comment says exit-val is not used by the server. - ! Samma effekt n}s genom kill -HUP mot servern. - - 33=sub-comment - params : ( comment : Text-No; - comment-to : Text-No; ) - ; - - 38=sub-footnote - params : ( footnote : Text-No; - footnote-to : Text-No; ) - ; - - 15=sub-member - params : ( conf-no : Conf-No; - pers-no : Pers-No; ) - ; - ! Subtrahera angiven person som medlem i angivet m|te. - - 31=sub-recipient - params : ( text-no : Text-No; - conf-no : Conf-No; ) - ; - - - 43=sync - ; - ; - ! Make LysKOM sync its files. This is a privileged call. - ! Samma effekt n}s med kill -SIGUSR1 mot servern. - - 56=who-am-i - ; - sesson-no : Session-No; - - 39=who-is-on-old - ; - result : Who-Info-List-Old; - ! Anrop nummer 39 {r ersatt av anrop 51, vars svar ger - ! mer information. - - 51=who-is-on - ; - result : Who-Info-List; - ! Svaret {r en lista med information om nu aktiva sessioner. -) - -De anrop vars nummer i listan nedan f|ljs av en asterisk (*) {r -ersatta av modernare verianter i den nuvarande versionen (0.33) av -Elisp-klienten. - - Nummer RPC-Anrop Nummer RPC-Anrop - ------------------------------------------------------ - 0 login 1 logout - 2 pepsi 3 change-name - 4 change-what-i-am-doing - 5 create-person 6* get-person-stat-old - 7 set-priv-bits 8 set-passwd - 9 query-read-texts 10 create-conf - 11 delete-conf 12 lookup-name - 13* get-conf-stat-old 14 add-member - 15 sub-member 16 set-presentation - 17 set-conf-motd 18 set-supervisor - 19 set-permitted-submitters - 20 set-super-conf 21 set-conf-type - 22 set-garb-nice 23 get-marks - 24 mark-text 25 get-text - 26 get-text-stat 27 mark-as-read - 28 create-text 29 delete-text - 30 add-recipient 31 sub-recipient - 32 add-comment 33 sub-comment - 34 get-map 35 get-time - 36 get-server-info 37 add-footnote - 38 sub-footnote 39* who-is-on-old - 40 set-unread 41 set-motd-of-lyskom - 42 enable 43 sync - 44 shutdown 45* broadcast - 46 get-membership 47 get-created-texts - 48 get-members 49 get-person-stat - 50 get-conf-stat 51 who-is-on - 52 get-unread-confs 53 send-message - 54 get-session-info 55 disconnect - 56 who-am-i 57 set-user-area - ------------------------------------------------------ - - - Konstruerade datatyper - -H{r definieras de datatyper som sedan anv{nds i RPC-anrop fr}n -klienten till servern och i asynkrona anrop fr}n servern till -klienten. Datatyperna listas i bokstavsordning. - - -! Pers-no and Conf-no are u_shorts in the same domain. -Conf-No ::= INTEGER; -Conf-No-List ::= ARRAY Conf-No; ! Anv{nds var? - -Conf-List ::= ARRAY ( conference : Conf-No; - type : Conf-Type; ) - -! Som svar p} anrop 12 ges Conf-List-Old, som inte kan formuleras -! med den h{r BNF-grammatiken. Conf-List borde returneras, men d} -! vore inte LysKOM bak}tkompatibelt. -! Conf-List-Old: "3 { 3 45 62 } { 1001 0000 1001 }" -! Conf-List: "3 { 3 1001 45 0000 62 1001 }" - -Conf-Type ::= BITSTRING ( - rd_prot; ! Can anyone become a member? - original; ! Comments forbidden? - secret; ! Secret mailboxes cannot easily login by name - letterbox; ! Mailbox -) - -Conference ::= ( - name : HOLLERITH; - type : Conf-Type; - creation-time : Time; - last-written : Time; - creator : Pers-No; - presentation : Text-No; - supervisor : Conf-No; - permitted-submitters : Conf-No; ! Zero means anybody - super-conf : Conf-No; ! Zero means author - msg-of-day : Text-No; ! Every conf has one - nice : Garb-Nice; - no-of-members : INTEGER; - first-local-no : Local-Text-No; ! Oldest text still stored - no-of-texts : INTEGER; ! How many texts stored -) - -Garb-Nice ::= INTEGER; ! Number of days - -Info ::= ( - version : INTEGER; - conf-pres-conf : Conf-No; ! M|tet Pres (nya) m|ten - pers-pres-conf : Conf-No; ! M|tet Pres (nya) medlemmar - motd-conf : Conf-No; ! M|tet Lappar p} d|rren - kom-news-conf : Conf-No; ! M|tet Nyheter om LysKOM - motd-of-lyskom : Text-No; ! Visas vid login -) - -! kom-types.h defines Info-Datum as the tail in Misc-Info -! kom-types.h defines Info-Type as the selector in Misc-Info - -Local-Text-No ::= INTEGER; - -Mark ::= ( text-no : Text-No; type : INTEGER ) - ! Servern ger sig inte p} att tolka markeringstypen, - ! det {r helt upp till klienten. - -Mark-List ::= ARRAY Mark; - - -Member ::= Pers-No; -Member-List ::= ARRAY Member; -Membership ::= ( - last-time-read : Time; - conference : Conf-No; - priority : INTEGER; - last-text-read : Local-Text-No; - read-texts : ARRAY Local-Text-No; -) - -Membership-List ::= ARRAY Membership; - -Misc-Info ::= SELECTION ( - 0=recpt recipient : Conf-No; ! Mottagare - 1=cc-recpt cc-recipient : Conf-No; ! Extra kopia - 2=comm-to comment-to : Text-No; ! Kommentar till - 3=comm-in commented-in: Text-No; ! Kommentar i - 4=footn-to footnote-to : Text-No; ! Fotnot till - 5=footn-in footnoted-in : Text-No; ! Fotnot i - 6=loc-no local-no : Local-Text-No ! Lokalt textnummer - 7=rec-time received-at : Time; ! Mottaget tid - 8=sent-by sender : Pers-No; ! S{nt av - 9=sent-at sent-at : Time; ! S{nt n{r -! 10=...-recpt ??? ! F|r k{nnedom -) - -Pers-List ::= ARRAY Pers-No; - -Pers-No ::= Conf-no; - -Person ::= ( - username : HOLLERITH; ! E-mail adress - privileges : Priv-Bits; - flags : Personal-Flags; - last-login : Time; ! Eller logout? - user-area : Text-No; - total-time-present : INTEGER; ! I sekunder - sessions : INTEGER; - created-lines : INTEGER; - created-bytes : INTEGER; - read-texts : INTEGER; - no-of-text-fetches : INTEGER; - created-persons : INTEGER; - created-confs : INTEGER; - first-created-local-no : INTEGER; ! Well, local isn't really true but... - no-of-created-texts : INTEGER; ! Numbers of texts in the ARRAY, - ! i.e. not erased ones. - no-of-marks : INTEGER; - no-of-confs : INTEGER; -) ! /mo - -Personal-Flags ::= BITSTRING ( - unread-is-secret; - ! V{rdet 1 betyder att antalet ol{sta texter h}lls hemligt - flg2; flg3; flg4; flg5; flg6; flg7; flg8; -) - -! Se avsnittet ovan om s{kerhetsniv}er och privilegiebittar. -Priv-Bits ::= BITSTRING ( - wheel; admin; statistic; create_pers; create_conf; change_name; - flg7; flg8; flg9; flg10; flg11; flg12; flg13; flg14; flg15; flg16; -) - -! Session-Info {r v{ldigt likt Who-Info. -Session-Info ::= ( - person : Pers-No; - working-conference : Conf-No; - session : Session-No; - what-am-i-doing : HOLLERITH; - username : HOLLERITH; ! user@host - idle-time : INTEGER; ! Sekunder sedan senaste anrop - connection-time : Time; ! Tid och datum f|r uppkoppling - ! Detta {r ej detsamma som login-tid -) - -! Session numbers are unique to each session. A person can have -! more than one session running at the same time. Session numbers -! are assigned starting from 1 up. Session numbers are not reused -! during the lifetime of the server. See Who-Info-List -Session-No ::= INTEGER; - -Text-List ::= ( first-local-no : Local-Text-No; - texts : ARRAY Text-No; ) - -! Text-No is a u_long. -Text-No ::= INTEGER; - -Text-Stat ::= ( - creation-time : Time; - author : Pers-No; - no-of-lines : INTEGER; - no-of-chars : String-Size; - no-of-marks : INTEGER; - misc-info : ARRAY Misc-Info; -) - -! UNIX <time.h> struct tm. No time zone. -Time ::= ( - seconds : INTEGER; ! 0 ... 59 - minutes : INTEGER; ! 0 ... 59 - hours : INTEGER; ! 0 ... 23 - mday : INTEGER; ! 1 ... 31 - month : INTEGER; ! jan = 0 ... dec = 11 - year : INTEGER; ! Sedan 1900 - weekday : INTEGER; ! s|n = 0 ... SAT = 6 - yearday : INTEGER; ! 0 ... 365 - isdst : INTEGER; ! positivt = sommartid, 0 = normaltid -) - -Who-Info-Old ::= ( - person : Pers-No; - what-am-i-doing : HOLLERITH; - working-conference : Conf-No; -) -Who-Info-List-Old ::= ARRAY Who-Info-Old; - -Who-Info ::= ( - person : Pers-No; - working-conference : Conf-No; - session : Session-No; - what-am-i-doing : HOLLERITH; - username : HOLLERITH; ! user@hostname -) - -Who-Info-List ::= ARRAY Who-Info; - - - - Exempel - -Nedan ett exempel fr}n en verklig LysKOM-session. Kommentarer har jag -gett med "!" som i grammatiken. Exemplet {r gammalt och inneh}ller en -del detaljer som senare tagits ur bruk, men det ger {nd} en ide om hur -det r}a protokollet ser ut. - - $ telnet laila 4894 - Trying 130.236.254.12 ... - Connected to laila.lysator.liu.se. - Escape character is '^]'. - A8Haronsson ! Jag k|r protokoll A - LysKOM ! LysKOM svarar - 1 12 13HLars Aronsson ! lookup-name - =1 2 { 8 38 } { 1001 1001 } ! Person 8 eller Person 38 - :3 2 21 7 0H ! Person 21 gick till m|te 7 - :1 1 56 ! Person 56 loggade just ut - 2 0 8 8H******** ! login Person 8 med password - :3 2 8 0 0H ! Person 8 loggade just in - =2 ! login OK - 3 10 23HAntikommunistiskt Forum 0000 - ! Jag skapar ett |ppet m|te - =3 57 ! OK, m|te 57 skapat - 4 1 ! Jag loggar ut - :1 1 8 ! Person 8 loggade just ut - =4 ! logout OK diff --git a/doc/prot-A.slightly-obsolete b/doc/prot-A.slightly-obsolete deleted file mode 100644 index 7664414bed7efc863d16845782bcc1bd610370ad..0000000000000000000000000000000000000000 --- a/doc/prot-A.slightly-obsolete +++ /dev/null @@ -1,230 +0,0 @@ - - - LysKOM-Projektet - -------------------------------- - Beskrivning av server-klient-protokollet, - version A, i LysKOM - -------------------------------- - av Lars Aronsson - <aronsson@lysator.liu.se> - datum ok{nt - - - -Kommunikationen till servern sker i klartext. P} s} vis {r det m|jligt -att provk|ra utan att ha en klient ig}ng. Avlusningen blev ocks} -enklare. - - -UPPKOPPLING - -Vid uppkoppling s{nder klienten ett 'A' f|ljt av login-identiteten f|r -anv{ndaren (en str{ng, se nedan). Servern svarar med att skicka -"LysKOM\n". Sedan {r uppkopplingen gjord. - -FUNKTIONSANROP - -Vid ett funktionsanrop skickas f|ljande data fr}n klienten till -servern: - - ref-nr funktions-nr parametrar - -ref-nr {r ett heltal (unsigned, max 32 bitar) som klienten kan v{lja -fritt, t ex som ett l|pnummer. - -funktions-nr {r ett heltal som anger vilken funktion man vill anropa. -De definieras i isc/com.h. - -Om anropet lyckades ser svaret ut s} h{r: - - =ref-nr svar - -Om det misslyckas: - - %ref-nr kom_errno err_stat - - - -DATAFORMAT - -Allt som skickas (utom m|jligtvis innuti str{ngar) {r ASCII. Bortsett -fr}n innuti str{ngar skickas inga kontrolltecken. Whitespace anv{nds -f|r att skilja olika f{lt }t. Som whitespace r{knas ' ', \r, \n, \t -och \000. (Ett funktionsanrop beh|ver inte avslutas med \n, det g}r -lika bra med vilken whitespace som helst, men det m}ste finnas en -whitespace - det r{cker inte med att paketet tar slut). - -Alla tal, (t ex int, Pers_no, Conf_no) skickas i decimal form. - -Enumar skickas i decimal form. - -Str{ngar skickas som Hollerith-str{ngar, dvs f|rst ett heltal som -anger l{ngden, sen ett H, sen str{ngen. Innuti en str{ng kan vilka -tecken som helst komma. (0-255). - -Arrayer skickas inom m}svingar. T ex kan en Text_list som ser ut s} -h{r: -typedef struct { - Local_text_no first_local_no, - no_of_texts; - Text_no * texts; -} Text_list; - -skickas s} h{r: - 5 3 { 8 9 11 } - -eller, om texts==NULL: - 5 3 * - -Asterisk anv{nds allts} f|r att markera en tom array. (Till exempel om -man inte fr}gar efter Membership). Asterisk-notationen kan bara -anv{ndas i rikting fr}n servern till klienten. - - -EXEMPEL - -S} h{r kan en k|rning se ut. - -Klienten skickar Servern svarar F|rklaring -================ ============== ========== - -A5Hceder LysKOM\n Uppkoppling. -1 37 =1 100 1 2 3 4 5712 Get_info -69 27 5712 =69 {textstat} Get_text_stat -18 26 5712 =18 {textmassa} Get_text -2 1 334 5HaBcdE %2 3 0 0 0 Login, misslyckas. (KOM_PWD) -3 1 334 5HaBcDe =3 Login, lyckas. -... -9 2 =9 Logout (beh|vs eg. ej) - - -FELHANTERING - -Om servern tar emot text som inte st{mmer med det protokoll som f|r -tillf{llet {r implementerat (f|rhoppningsvis, men ej n|dv{ndigtvis, -det som {r beskrivet h{r) skriver den ut "%% LysKOM protocol error.\n" - -ASYNKRONA MEDDELANDEN - -Servern skickar ibland ut meddelanden som clienterna kanske tycker {r -intressanta. Formatet f|r dessa {r: - - :no_of_tokens function < tokens > - -De b|rjar allts} med ":" i st{llet f|r "=" eller "%". Genom att -antalet token alltid s{nds s} kan {ven gamla klienter "|verleva" en ny -klient med nya asynkrona meddelanden. Det {r bara att hoppa |ver r{tt -antal token. - -Termen "asynkrona meddelanden" {r lite oegentlig. Meddelanden {r -synkroniserade med allt annat som skickas ut fr}n servern. Ett -meddelanden kommer bara n{r ett svar skulle ha kommit. - -DATAFORMAT F\R SAMMANSATTA TYPER - -Person - username str{ng - privileges bitstr{ng - personal_flags bitstr{ng - created_texts: - first_local_no - no_of_texts - texts array - marks: - no_of_marks - marks array - conferences: - no_of_confs - confs: array - conf_no - priority - last_time_read - last_text_read - no_of_read - read_texts array - user_area - last_login - total_time_present - sessions - created_lines - created_bytes - read_texts - no_of_text_fetches - created_persons - created_confs - - - -Conference - - name str{ng - members: - no_of_members - members: array - member (Pers_no) - texts: - first_local_no - no_of_texts - texts array (Text_no) - conf_type bitstr{ng - creator - creation_time - presentation - supervisor - permitted_submitters - super_conf - last_written - msg_of_day - nice - - -Text_stat - - author - creation_time - no_of_lines - no_of_marks - no_of_misc - misc_info: array - type 0 recpt - 1 cc_recpt - 2 comm_to - 3 comm_in - 4 footn_to - 5 footn_in - 6 loc_no - 7 rec_time - 8 sent_by - 9 sent_at - datum - - - -Info - version - conf_pres_conf - pers_pres_conf - motd_conf - kom_news_conf - motd_of_lyskom - -Membership - - no_of_confs - confs: array - conf_no - priority - last_time_read - last_text_read - no_of_read - read_texts array - - -Text_list - first_local_no - no_of_texts - texts array - -str{ng - 12HTolv tecken. - diff --git a/doc/vad-aer-olaest.swe b/doc/vad-aer-olaest.swe deleted file mode 100644 index f569262568050985974e0456b28047570d18b26a..0000000000000000000000000000000000000000 --- a/doc/vad-aer-olaest.swe +++ /dev/null @@ -1,145 +0,0 @@ -This swedish text describes how the client knows which texts the user -has not yet read. It is extracted from the LysKOM-server that runs -at lysator.liu.se. -------------------------------------------------------------------- - - -102868 1991-09-07 20:40 /132 rader/ ceder (Per Cederqvist Lysator) -Kommentar till text 102846 av Jonas S Karlsson (@Link ping enl CSN) -Mottagare: LysKOM internals <1804> -Markerad av dig och 2 andra. -[rende: Hur man vet vad som {r ol{st. ------------------------------------------------------------- -Varje person har en lista |ver vilka m|ten han {r med i. F|r varje -m|te han {r med i lagras i en struct som vi kallar Membership: - - * m|tesnumret - * prioriteten p} m|tet - * n{r man senast l{ste en text i m|tet (markerade en text i - m|tet som l{st) - * vilka texter man har l{st (lokala m|tesnummer) - Just nu lagras det som - - Local_text_no last_text_read; - u_short no_of_read_texts; - Local_text_no *read_texts; - - vilket inneb{r att man har l{st alla texter fram till och - med last_text_read, och dessutom alla texter som finns i den - dynamiskt allokerade arrayen read_texts (som inneh}ller - no_of_read_texts texter). - -query_read_texts tar som argument en person och ett m|te (som -eventuellt kan vara en brevl}da) och returnerar den personens -Membership f|r just det m|tet. Till protokoll B kommer vi att d|pa om -funktionen till get_membership. - -> 102846 1991-09-07 17:05 /16 rader/ Jonas S Karlsson (@Link ping enl CSN) -> Mottagare: LysKOM internals <1801> -> [rende: Protokollet fr{ga... - -102846 {r ett globalt textnummer. Vi anv{nder typen Text_no f|r att -lagra och hantera s}dana nummer. 1801 {r ett lokalt nummer f|r m|tet -LysKOM internals. S}dana nummer lagras i en Local_text_no. (B}de -Text_no och Local_text_no {r 32 bittar just nu). - -F|r varje m|te finns en relation MAP : Local_text_no -> Text_no. Med -anropet get_map kan man h{mta en tabell med vars hj{lp man kan g|ra den -|vers{ttningen f|r ett visst m|te. - - -get_created_texts ger en lista som inneh}ller de texter som en viss -person har skrivit. - -F|r att ta reda p} vilka m|ten man har ol{sta inl{gg i g|r man s} h{r: - -1) get_unread_confs (ditt personnummer) - -Du f}r en lista med m|tesnummer. LysKOM garanterar att du inte har -n}got ol{st i n}got annat m|te, men det kan h{nda att den ger tillbaks -n}gra m|ten som du i verkligheten inte har n}got ol{st i. - -De m|ten man f}r tillbaks {r de d{r de existerar (eller har existerat) -en text med ett h|gre lokalt textnummer {n last_text_read i ditt -Membership i m|tet i fr}ga. - -2a) G|r query_read_texts f|r alla m|ten i listan du fick i steg 1. - -2b) Samtidigt h{mtar du m|tesstatusen f|r de m|tena (med -get_conf_stat). - -3) Samla ihop alla svaren och sortera dom s} att man f}r l{sa -inl{ggen i r{tt ordning. - -4) Ta det f|rsta m|tet. J{mf|r det h|gsta lokala numret som existerar -(det kan du f} fram ur m|tesstatusen) med last_text_read i ditt -Membership. Om det visar sig att det finns texter du inte har l{st -m}ste du g|ra ett get_map f|r att ta reda p} vilket globalt textnummer -de ol{sta texterna har. - -5) Sl} upp varje lokalt textnummer som du inte har l{st i mappen. Du -f}r ett Text_no. Om du f}r en nolla inneb{r det att den text som hade -det numret har raderats eller subtraherats fr}n m|tet. Ignorera det -lokala numret och tag n{sta. - -6) N{r du f}r ett textnummer som inte {r noll h{mtar du textstatusen -och textmassan (sj{lva texten) med get_text_stat och get_text, och -visar den p} sk{rmen. N{r anv{ndaren har l{st klart texten talar du om -det f|r servern med mark_as_read (som tar ett m|tesnummer och ett -Local_text_no som argument och uppdaterar ditt Membership f|r det -m|tet). Om texten har flera mottagare som du {r medlem i ska du anropa -mark_as_read en g}ng f|r varje mottagare. - -Repetera steg 5 och 6 tills du har l{st ut m|tet. Se till att du -f|ljer kommentartr{det, om anv{ndaren vill det. - -Repetera steg 4 tills allt {r utl{st. - -Visa alla markerade. - -Se tiden. -================================================================= - -S} g}r det till, grovt sett. Saker och ting kompliceras av att det -hela tiden skrivs nya texter. Servern skickar ut ett asynkront -meddelande n{r en ny text skapas (i ett m|te som man {r medlem i). I -meddelandet finns hela textstatusen (s} att man slipper h{mta den). - -En annan grej som g|r det hela komplicerat {r att man g{rna vill att -klienten ska h{mta saker i f|rv{g n{r man inte har n}got annat att -g|ra. Man vill att klienten inte ska h{mta samma information mer {n en -g}ng. Man vill f} upp den f|rsta texten s} snabbt som m|jligt. Man -vill kunna g|ra Lista Nyheter s} snabbt som m|jligt. Det finns m}nga -saker man kan optimera p} olika s{tt. - -Elispklienten g|r inte riktigt som jag har beskrivit det p} alla -st{llen, men resultatet blir i princip det samma. En del av anropen -(t ex get_unread_confs) har vi inf|rt i efterhand f|r att vi m{rkte -att det var n|dv{ndigt f|r att f} saker och ting att g} n}gorlunda -snabbt. - -Vi har medvetet valt att g|ra s} mycket jobb som m|jligt i klienten, -och s} lite jobb som m|jligt i servern. Nu, n{r det blev s} att -klienten {r skriven i elisp, s} skulle vi nog ha f}tt ett snabbare -system (s{rskilt uppstarten) om servern varit mer intelligent och valt -i vilken ordning texter ska visas. Systemet {r designat med m}let att -det inte ska bli l}ngsammare {ven om m}nga klienter kopplar upp sig -samtidigt, och det m}let har vi nog n}tt. (Att det kan g} l}ngsamt n{r -5-6 personer k|r sin elispklient p} lysator.liu.se beror inte p} -svarstiderna fr}n LysKOM-servern, utan p} att emacsarna blir -l}ngsamma. De som k|r fr}n en obelastad maskin samtidigt m{rker inte -att det g}r l}ngsamt (skryt, skryt:-)). (Nej, det finns inga m{tningar -som bekr{ftar det h{r - men jag t{nker m{ta lite responstider senare i -h|st). - -Med en smart klient skriven i c kommer LysKOM att bli snabbt. Om -c-klienterna k|rs p} varsin maskin (var och en har sin egen -arbetsstation) tror jag att systemet kommer att klara "tillr{ckligt" -m}nga anv{ndare. (LysKOM {r ju ett lokalt media. Om hela v{rlden k|rde -p} samma LysKOM-server i st{llet f|r att skriva news skulle det bli -olidligt att l{sa LysKOM {ven om man bortser fr}n responstider...) - -P}peka g{rna eventuella oklarheter i den h{r texten. Jag t{nker skicka -med den bland dokumentationen vi har i serverreleasen som vi snart -g|r, s} jag vill att texten ska vara begriplig... -(102868) ----------------------------------- diff --git a/fixconfig b/fixconfig deleted file mode 100755 index 1992589ae55117337948c19d306cab9f074cbab1..0000000000000000000000000000000000000000 --- a/fixconfig +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh -sed '/^s%@LIBOBJS@%$LIBOBJS%g$/a\ -" $top_srcdir/${file}.in | sed "\ -$prsub\ -$extrasub\ -' config.status \ -|sed 's/^" $top_srcdir.${file}.in >>/" >>/' > config.newstatus -mv config.newstatus config.status -chmod +x config.status diff --git a/foo b/foo deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/run-support/start_kom.sh b/run-support/start_kom.sh deleted file mode 100644 index c1805358878e9c3d26e1612ecdbba382274fe30e..0000000000000000000000000000000000000000 --- a/run-support/start_kom.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh -rm -f @ETCDIR@/status -if kill -HUP `cat @ETCDIR@/pid` -then true -else @BINDIR@/updateLysKOM -fi diff --git a/run-support/stop_kom.sh b/run-support/stop_kom.sh deleted file mode 100644 index c0077434e8e9169532fe4c8b3e44bc944ab2db36..0000000000000000000000000000000000000000 --- a/run-support/stop_kom.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh -whoami > @ETCDIR@/status -echo "$1" >> @ETCDIR@/status -kill -HUP `cat @ETCDIR@/pid` diff --git a/run-support/updateLysKOM b/run-support/updateLysKOM deleted file mode 100644 index d071a5f74b3e18299c7eab7b5f3c35b5ff94d80a..0000000000000000000000000000000000000000 --- a/run-support/updateLysKOM +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh -cd /usr/lyskom/cores -/bin/kill -USR1 `/bin/cat /usr/lyskom/etc/pid` 2>/dev/null >/dev/null || /usr/lyskom/bin/lyskomd >>/usr/lyskom/etc/stdout.log 2>>/usr/lyskom/etc/stderr.log & diff --git a/scripts/Depend.make b/scripts/Depend.make deleted file mode 100644 index a0468994fd43543a6202c22956df8de420df8b06..0000000000000000000000000000000000000000 --- a/scripts/Depend.make +++ /dev/null @@ -1,43 +0,0 @@ -# -# $Id: Depend.make,v 0.2 1991/09/15 09:58:55 linus Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -depend: - ${SED} '/^# OBJECTS: @@@* #$$/q' Makefile > temp-Makefile - echo '# This line is generated by "make depend"'>>temp-Makefile - echo -n 'OBJECTS = ' >>temp-Makefile - ls *.c | ${AWK} 'BEGIN { pos = 10; } \ - { sub(/\.c$$/, ".o"); \ - pos += length($$0) + 1; \ - if (pos >= 75) \ - { printf("\\\n\t"); \ - pos = 9 + length($$0); \ - } \ - printf ("%s ", $$0); \ - }' >>temp-Makefile - echo >>temp-Makefile - ${SED} '/^# RULES: @@@* #$$/,/^# DEPENDENCIES: @@@* #$$/!d' \ - Makefile >>temp-Makefile - echo >>temp-Makefile - gcc -M -DCLIENT ${INCLUDES} *.c >>temp-Makefile - mv temp-Makefile Makefile diff --git a/scripts/Makefile b/scripts/Makefile deleted file mode 100644 index cca9a7eab26650e1aa8ed2defd90ca3e103c35d4..0000000000000000000000000000000000000000 --- a/scripts/Makefile +++ /dev/null @@ -1,42 +0,0 @@ -# -# $Id: Makefile,v 0.8 1991/09/15 09:58:48 linus Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -include Topdir.make -SCRIPTDIR = $(TOPDIR)/scripts - -include $(SCRIPTDIR)/import.make - -all:; -depend:; -install:; -includes:; -libraries:; -binaries:; - - -clean: - $(RM) $(GENERIC-CLEAN) - -distclean: clean - $(RM) $(GENERIC-DIST-CLEAN) diff --git a/scripts/Parallell-depend.make b/scripts/Parallell-depend.make deleted file mode 100644 index 5d369904d8c50c85ee15b1ff8e6a64e2691bad2c..0000000000000000000000000000000000000000 --- a/scripts/Parallell-depend.make +++ /dev/null @@ -1,53 +0,0 @@ -# -# $Id: Parallell-depend.make,v 0.8 1993/10/16 16:33:06 ceder Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -depend: temp-A-Makefile temp-B-Makefile temp-C-Makefile \ - temp-D-Makefile temp-E-Makefile - rm -f dependencies - cat temp-?-Makefile >dependencies - rm temp-?-Makefile temp-?-files - echo depend ready. - -temp-A-Makefile: c-indexes - -$(CC) $(DEPENDFLAG) $(CFLAGS) `cat temp-A-files` >temp-A-Makefile - -temp-B-Makefile: c-indexes - -$(CC) $(DEPENDFLAG) ${CFLAGS} `cat temp-B-files` >temp-B-Makefile - -temp-C-Makefile: c-indexes - -$(CC) $(DEPENDFLAG) ${CFLAGS} `cat temp-C-files` >temp-C-Makefile - -temp-D-Makefile: c-indexes - -$(CC) $(DEPENDFLAG) ${CFLAGS} `cat temp-D-files` >temp-D-Makefile - -temp-E-Makefile: c-indexes - -$(CC) $(DEPENDFLAG) ${CFLAGS} `cat temp-E-files` >temp-E-Makefile - -c-indexes: specials - ls $(srcdir)/*.c|${AWK} '{ a[i++] = $$1; } \ - END { for ( j = 0; j < i; j++ ) \ - print a[j] > sprintf("temp-%c-files", 65 + j % 5); }' - -dependencies: - touch dependencies diff --git a/scripts/RCS-depend.make b/scripts/RCS-depend.make deleted file mode 100644 index c003347f3636da480ea5e62bd2f64bd1af12e754..0000000000000000000000000000000000000000 --- a/scripts/RCS-depend.make +++ /dev/null @@ -1,51 +0,0 @@ -# -# $Id: RCS-depend.make,v 0.2 1991/09/15 09:58:40 linus Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -depend: temp-A-Makefile temp-B-Makefile temp-C-Makefile temp-D-Makefile \ - temp-E-Makefile - rcs -l dependencies - rm -f dependencies - cat temp-?-Makefile >dependencies - rm temp-?-Makefile temp-?-files - echo " " | ci dependencies - -temp-A-Makefile: c-indexes - gcc -M ${TARGET} ${INCLUDES} `cat temp-A-files` >temp-A-Makefile - -temp-B-Makefile: c-indexes - gcc -M ${TARGET} ${INCLUDES} `cat temp-B-files` >temp-B-Makefile - -temp-C-Makefile: c-indexes - gcc -M ${TARGET} ${INCLUDES} `cat temp-C-files` >temp-C-Makefile - -temp-D-Makefile: c-indexes - gcc -M ${TARGET} ${INCLUDES} `cat temp-D-files` >temp-D-Makefile - -temp-E-Makefile: c-indexes - gcc -M ${TARGET} ${INCLUDES} `cat temp-E-files` >temp-E-Makefile - -c-indexes: sources - echo ${SRCS}|tr " " \\012 |${AWK} '{ a[i++] = $$1; } \ - END { for ( j = 0; j < i; j++ ) \ - print a[j] > sprintf("temp-%c-files", 65 + j % 5); } diff --git a/scripts/Single-depend.make b/scripts/Single-depend.make deleted file mode 100644 index a97523dd549cc743956f07c0e8af009cac1f781d..0000000000000000000000000000000000000000 --- a/scripts/Single-depend.make +++ /dev/null @@ -1,30 +0,0 @@ -# -# $Id: Single-depend.make,v 1.6 1993/10/16 16:33:15 ceder Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -.PHONY: depend -depend: - $(CC) $(DEPENDFLAG) $(CFLAGS) $(srcdir)/*.c >dependencies - -dependencies: - touch dependencies diff --git a/scripts/import.make b/scripts/import.make deleted file mode 100644 index 06f8c61c3f32e0e84aa66f0b637afc7d71f87c80..0000000000000000000000000000000000000000 --- a/scripts/import.make +++ /dev/null @@ -1,60 +0,0 @@ -# This file is included by all Makefiles in the LysKOM hierarchy. -# It gives default values for all variables that is normally used. -# TOPDIR and SCRIPTDIR must be set before this file is included. -# If any of the variables are defined in the environment, that value -# will override the value that is set here. -# -# ceder is guilty. -# - -SHELL=/bin/sh -AWK = gawk -SED = /usr/bin/sed -CC = gcc -ansi -RM = /usr/gnu/bin/rm -vf - -INCLUDEDIR = $(TOPDIR)/include -LIBDIR = $(TOPDIR)/lib -ANSIDIR = $(INCLUDEDIR)/ansi - -INCLUDES = -I$(ANSIDIR) -I$(INCLUDEDIR) -OPTIMIZE-FLAGS = -O -MISC-CFLAGS = -g -Wall -PIPE = -pipe - -# -h flag makes NULL pointer references generate runtime errors -LDFLAGS = -h -L$(LIBDIR) - -CFLAGS = $(INCLUDES) $(OPTIMIZE-FLAGS) $(MISC-CFLAGS) $(PIPE) $(TARGET) - -# LysKOM executables that the typical user don't use go here. -# (The server, dbck, et c) - -LYSKOMSYSBIN = /usr/lyskom/bin - -# User executables (such as lyskom, kompost et c) - -LYSKOMUSRBIN = /usr/local/bin - - - -GENERIC-CLEAN = *~ *.o lib*.a dependencies core TAGS temp-Makefile \ - temp-?-Makefile - -# Too ugly... and it swells... -# -# EXPORTS = CC="${CC}" SHELL="${SHELL}" AWK="${AWK}" SED="${SED}" \ -# RM="${RM}" INCLUDEDIR="${INCLUDEDIR}" LIBDIR="${LIBDIR}" \ -# ANSIDIR="${ANSIDIR}" INCLUDES="${INCLUDES}" \ -# OPTIMIZE-FLAGS="${OPTIMIZE-FLAGS}" \ -# MISC-CFLAGS="${MISC-CFLAGS}" PIPE="${PIPE}" \ -# LDFLAGS="${LDFLAGS}" CFLAGS="${CFLAGS}" \ -# LYSKOMSYSBIN="${LYSKOMSYSBIN}" LYSKOMUSRBIN="${LYSKOMUSRBIN}" \ -# TOPDIR="${TOPDIR}" SCRIPTDIR="${SCRIPTDIR}" AR="${AR}" \ -# ARFLAGS="${ARFLAGS}" GENERIC-CLEAN="${GENERIC-CLEAN}" - -EXPORTS = - -# The Makefiles also dependes on the variables -# AR, ARFLAGS -# that are automatically set by GNU Make. diff --git a/scripts/install-includes.make b/scripts/install-includes.make deleted file mode 100644 index 4e3b874decdc70d89a9770f66ec57a256aa578c0..0000000000000000000000000000000000000000 --- a/scripts/install-includes.make +++ /dev/null @@ -1,33 +0,0 @@ -# -# $Id: install-includes.make,v 1.4 1993/10/10 11:56:49 ceder Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -.PHONY: includes -includes: - for i in $(INSTALL-HDRS);\ - do \ - ( cmp $(srcdir)/$$i $(INCLUDEDIR)/$$i 2>/dev/null ) \ - || ( $(RM) $(INCLUDEDIR)/$$i; \ - cp $(srcdir)/$$i $(INCLUDEDIR)/$$i; \ - chmod a-w $(INCLUDEDIR)/$$i ) \ - done diff --git a/scripts/sub-binaries.make b/scripts/sub-binaries.make deleted file mode 100644 index f80cd9fef3d9353ad6d2b34b08c6b4fae15c98c3..0000000000000000000000000000000000000000 --- a/scripts/sub-binaries.make +++ /dev/null @@ -1,32 +0,0 @@ -# -# $Id: sub-binaries.make,v 1.3 1991/09/15 09:58:25 linus Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -.PHONY: binaries -binaries: - -for i in $(SUBDIRS) ; \ - do \ - [ -d $$i ] && { echo making binaries in directory $$i; \ - (cd $$i; $(MAKE) $(EXPORTS) binaries) } \ - done - diff --git a/scripts/sub-clean.make b/scripts/sub-clean.make deleted file mode 100644 index c3835023c7a092007001ffcc95193f5f113d4bcc..0000000000000000000000000000000000000000 --- a/scripts/sub-clean.make +++ /dev/null @@ -1,40 +0,0 @@ -# -# $Id: sub-clean.make,v 1.4 1991/09/15 09:58:22 linus Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -.PHONY: clean -clean: - $(RM) $(GENERIC-CLEAN) - -for i in $(SUBDIRS); \ - do \ - [ -d $$i ] && { echo making clean in directory $$i; \ - (cd $$i; $(MAKE) $(EXPORTS) clean) } \ - done - -distclean: clean - $(RM) $(GENERIC-DIST-CLEAN) - -for i in $(SUBDIRS); \ - do \ - [ -d $$i ] && { echo making distclean in directory $$i; \ - (cd $$i; $(MAKE) $(EXPORTS) distclean) } \ - done diff --git a/scripts/sub-depend.make b/scripts/sub-depend.make deleted file mode 100644 index ee2548f8931c388a58a4ead14e4adb900e6d278f..0000000000000000000000000000000000000000 --- a/scripts/sub-depend.make +++ /dev/null @@ -1,34 +0,0 @@ -# -# $Id: sub-depend.make,v 1.3 1991/09/15 09:58:18 linus Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -dependencies: - touch dependencies - -.PHONY: depend -depend: - -for i in $(SUBDIRS) ; \ - do \ - [ -d $$i ] && { echo making depend in directory $$i; \ - (cd $$i; $(MAKE) $(EXPORTS) depend) } \ - done diff --git a/scripts/sub-includes.make b/scripts/sub-includes.make deleted file mode 100644 index 39e3596b943f85426ea6a51fcc749a7102f9d950..0000000000000000000000000000000000000000 --- a/scripts/sub-includes.make +++ /dev/null @@ -1,31 +0,0 @@ -# -# $Id: sub-includes.make,v 1.3 1991/09/15 09:58:15 linus Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -.PHONY: includes -includes: - -for i in $(SUBDIRS) ; \ - do \ - [ -d $$i ] && { echo making includes in directory $$i; \ - (cd $$i; $(MAKE) $(EXPORTS) includes) } \ - done diff --git a/scripts/sub-install.make b/scripts/sub-install.make deleted file mode 100644 index ccf3c82afc05d4ecfa606ad97645296e0c740989..0000000000000000000000000000000000000000 --- a/scripts/sub-install.make +++ /dev/null @@ -1,31 +0,0 @@ -# -# $Id: sub-install.make,v 1.3 1991/09/15 09:58:11 linus Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -.PHONY: install -install: - -for i in $(SUBDIRS) ; \ - do \ - [ -d $$i ] && { echo making install in directory $$i; \ - (cd $$i; $(MAKE) $(EXPORTS) install) } \ - done diff --git a/scripts/sub-libraries.make b/scripts/sub-libraries.make deleted file mode 100644 index dbde07dcc6ee9126a695cfad03c15fa208bacf9a..0000000000000000000000000000000000000000 --- a/scripts/sub-libraries.make +++ /dev/null @@ -1,31 +0,0 @@ -# -# $Id: sub-libraries.make,v 1.3 1991/09/15 09:58:07 linus Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -.PHONY: libraries -libraries: - -for i in $(SUBDIRS) ; \ - do \ - [ -d $$i ] && { echo making libraries in directory $$i; \ - (cd $$i; $(MAKE) $(EXPORTS) libraries) } \ - done diff --git a/src/Makefile b/src/Makefile deleted file mode 100644 index 89cd06e93e79890cb0e1b80c6fe8bab00791a403..0000000000000000000000000000000000000000 --- a/src/Makefile +++ /dev/null @@ -1,46 +0,0 @@ -# -# $Id: Makefile,v 0.8 1991/09/15 09:59:02 linus Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -include Topdir.make -SCRIPTDIR = $(TOPDIR)/scripts - -include $(SCRIPTDIR)/import.make - -# All directories that make should traverse to when doing clean etc. - -SUBDIRS = include libraries server komutils clients - -all: includes libraries binaries - -include $(SCRIPTDIR)/sub-includes.make -include $(SCRIPTDIR)/sub-libraries.make -include $(SCRIPTDIR)/sub-binaries.make -include $(SCRIPTDIR)/sub-install.make -include $(SCRIPTDIR)/sub-clean.make -include $(SCRIPTDIR)/sub-depend.make - - - - - diff --git a/src/include/Makefile b/src/include/Makefile deleted file mode 100644 index f223909e51605097987c251b7c04ab65b976790b..0000000000000000000000000000000000000000 --- a/src/include/Makefile +++ /dev/null @@ -1,70 +0,0 @@ -# -# $Id: Makefile,v 0.11 1993/01/16 23:12:32 ceder Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -include Topdir.make -SCRIPTDIR = $(TOPDIR)/scripts - -include $(SCRIPTDIR)/import.make - -SUBDIRS = ansi server - -INSTALL-HDRS = compiler.h debug.h kom-types.h config.h kom-errno.h \ - misc-types.h services.h rcs.h - -all: includes libraries binaries - -libraries:; -binaries:; - - -.PHONY : includes -includes: - for i in $(INSTALL-HDRS) ; \ - do \ - ( cmp $$i $(INCLUDEDIR)/$$i 2>/dev/null ) \ - || cp $$i $(INCLUDEDIR)/$$i; \ - done; - for i in $(SUBDIRS); \ - do \ - [ -d $$i ] && ( echo making includes in directory $$i; \ - (cd $$i; $(MAKE) $(EXPORTS) includes); ) \ - done; - -clean: - $(RM) $(GENERIC-CLEAN) - for i in $(SUBDIRS); \ - do \ - [ -d $$i ] && { echo making clean in directory $$i; \ - (cd $$i; $(MAKE) $(EXPORTS) clean); } \ - done - -distclean: clean - $(RM) $(GENERIC-DIST-CLEAN) - for i in $(SUBDIRS); \ - do \ - [ -d $$i ] && { echo making distclean in directory $$i; \ - (cd $$i; $(MAKE) $(EXPORTS) distclean); } \ - done - -depend:; diff --git a/src/include/com.h b/src/include/com.h deleted file mode 100644 index cc1ed5fbfb5dcb753d011934454569cd4e7ee40b..0000000000000000000000000000000000000000 --- a/src/include/com.h +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Don't edit this file! It is generated from fncdef.txt - * and com-h.awk. - */ - -enum call_header { - call_fnc_login_old = 0, - call_fnc_logout = 1, - call_fnc_pepsi = 2, - call_fnc_change_name = 3, - call_fnc_change_what_i_am_doing = 4, - call_fnc_create_person = 5, - call_fnc_get_person_stat_old = 6, - call_fnc_set_priv_bits = 7, - call_fnc_set_passwd = 8, - call_fnc_query_read_texts = 9, - call_fnc_create_conf = 10, - call_fnc_delete_conf = 11, - call_fnc_lookup_name = 12, - call_fnc_get_conf_stat_old = 13, - call_fnc_add_member = 14, - call_fnc_sub_member = 15, - call_fnc_set_presentation = 16, - call_fnc_set_etc_motd = 17, - call_fnc_set_supervisor = 18, - call_fnc_set_permitted_submitters = 19, - call_fnc_set_super_conf = 20, - call_fnc_set_conf_type = 21, - call_fnc_set_garb_nice = 22, - call_fnc_get_marks = 23, - call_fnc_mark_text_old = 24, - call_fnc_get_text = 25, - call_fnc_get_text_stat = 26, - call_fnc_mark_as_read = 27, - call_fnc_create_text = 28, - call_fnc_delete_text = 29, - call_fnc_add_recipient = 30, - call_fnc_sub_recipient = 31, - call_fnc_add_comment = 32, - call_fnc_sub_comment = 33, - call_fnc_get_map = 34, - call_fnc_get_time = 35, - call_fnc_get_info = 36, - call_fnc_add_footnote = 37, - call_fnc_sub_footnote = 38, - call_fnc_who_is_on_old = 39, - call_fnc_set_unread = 40, - call_fnc_set_motd_of_lyskom = 41, - call_fnc_enable = 42, - call_fnc_sync = 43, - call_fnc_shutdown = 44, - call_fnc_broadcast = 45, - call_fnc_get_membership = 46, - call_fnc_get_created_texts = 47, - call_fnc_get_members = 48, - call_fnc_get_person_stat = 49, - call_fnc_get_conf_stat = 50, - call_fnc_who_is_on = 51, - call_fnc_get_unread_confs = 52, - call_fnc_send_message = 53, - call_fnc_get_session_info = 54, - call_fnc_disconnect = 55, - call_fnc_who_am_i = 56, - call_fnc_set_user_area = 57, - call_fnc_get_last_text = 58, - call_fnc_create_anonymous_text = 59, - call_fnc_find_next_text_no = 60, - call_fnc_find_previous_text_no = 61, - call_fnc_login = 62, - call_fnc_who_is_on_ident = 63, - call_fnc_get_session_info_ident = 64, - call_fnc_re_lookup_person = 65, - call_fnc_re_lookup_conf = 66, - call_fnc_lookup_person = 67, - call_fnc_lookup_conf = 68, - call_fnc_set_client_version = 69, - call_fnc_get_client_name = 70, - call_fnc_get_client_version = 71, - call_fnc_mark_text = 72, - call_fnc_unmark_text = 73 -}; - -typedef enum call_header Call_header; diff --git a/src/include/dependencies b/src/include/dependencies deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/src/include/server/Makefile b/src/include/server/Makefile deleted file mode 100644 index d35c56373874824c6a863ec7d80c91b53fcb75ac..0000000000000000000000000000000000000000 --- a/src/include/server/Makefile +++ /dev/null @@ -1,54 +0,0 @@ -# -# $Id: Makefile,v 0.11 1992/02/10 02:53:56 linus Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -include Topdir.make -SCRIPTDIR = $(TOPDIR)/scripts - -include $(SCRIPTDIR)/import.make - -TARGET = -DCLIENT - -INSTALL-HDRS = smalloc.h - -all: includes libraries binaries - -libraries:; -binaries:; - -.PHONY : includes -includes: - -$(MKDIR) $(INCLUDEDIR)/server - for i in $(INSTALL-HDRS);\ - do \ - ( cmp $$i $(INCLUDEDIR)/server/$$i 2>/dev/null ) \ - || cp $$i $(INCLUDEDIR)/server/$$i; \ - done - -clean: - $(RM) $(GENERIC-CLEAN) - -distclean: clean - $(RM) $(GENERIC-DIST-CLEAN) - -depend:; diff --git a/src/include/server/dependencies b/src/include/server/dependencies deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/src/libraries/Makefile b/src/libraries/Makefile deleted file mode 100644 index 3aef192e3a9cc9606340abe6148a6be173a7b008..0000000000000000000000000000000000000000 --- a/src/libraries/Makefile +++ /dev/null @@ -1,44 +0,0 @@ -# -# $Id: Makefile,v 0.11 1992/12/19 00:25:19 ceder Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -include Topdir.make -SCRIPTDIR = $(TOPDIR)/scripts - -include $(SCRIPTDIR)/import.make - -# All directories that make should traverse to when doing clean etc. -# Note that client-support depends on libmisc. - -SUBDIRS = libansi libmisc libisc libcommon client-support laclib libisc-new \ - regex - -all: includes libraries binaries - -include $(SCRIPTDIR)/sub-includes.make -include $(SCRIPTDIR)/sub-libraries.make -include $(SCRIPTDIR)/sub-clean.make -include $(SCRIPTDIR)/sub-depend.make -include $(SCRIPTDIR)/sub-install.make - -binaries:; diff --git a/src/libraries/libansi/Makefile b/src/libraries/libansi/Makefile deleted file mode 100644 index b809cba6a1f2ed6da0617787cfb2e67e865ee73d..0000000000000000000000000000000000000000 --- a/src/libraries/libansi/Makefile +++ /dev/null @@ -1,63 +0,0 @@ -# -# $Id: Makefile,v 0.14 1992/04/14 19:20:21 ceder Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -include Topdir.make -SCRIPTDIR = $(TOPDIR)/scripts - -include $(SCRIPTDIR)/import.make - -LIBNAME = libansi$(PROFILE-LIB-SUFFIX).a - -LIBOBJS = strerror.o vprintf.o - -all: $(LIBNAME) - -$(LIBNAME): $(LIBOBJS) - $(AR) $(ARFLAGS) $(LIBNAME) $? - $(RANLIB) $(LIBNAME) - -includes:; - -libraries: $(LIBNAME) - $(RM) $(LIBDIR)/$(LIBNAME) - cp $(LIBNAME) $(LIBDIR)/$(LIBNAME) - $(RANLIB) $(LIBDIR)/$(LIBNAME) - -binaries:; - -clean: - $(RM) ${LIBOBJS} $(GENERIC-CLEAN) - -distclean: clean - $(RM) $(GENERIC-DIST-CLEAN) - - -# Recreate the Makefile -include $(SCRIPTDIR)/Single-depend.make - - -tags: - etags -t *.[hc] - -include dependencies diff --git a/src/libraries/libansi/README b/src/libraries/libansi/README deleted file mode 100644 index e721d6dd83cf552b0ba584869d15fb17f1883c8f..0000000000000000000000000000000000000000 --- a/src/libraries/libansi/README +++ /dev/null @@ -1,5 +0,0 @@ -Detta {r t{nkt att bli ett bibliotek med divers rutiner som beh|vs -f|r de stackare utan ANSI bibliotek.. (Alla n{stan). - -/pen - diff --git a/src/libraries/libansi/config.h b/src/libraries/libansi/config.h deleted file mode 100644 index 80afad6651a9097ddbd68090017595f1c8d833a1..0000000000000000000000000000000000000000 --- a/src/libraries/libansi/config.h +++ /dev/null @@ -1,8 +0,0 @@ -/* -** config.h -** -** System: SunOS 4.1.1 -*/ - - -/* #define HAVE_STRERROR */ diff --git a/src/libraries/libansi/dependencies b/src/libraries/libansi/dependencies deleted file mode 100644 index 00b32730b77072831534c7517dc2c393a9df1e19..0000000000000000000000000000000000000000 --- a/src/libraries/libansi/dependencies +++ /dev/null @@ -1 +0,0 @@ -strerror.o : strerror.c config.h diff --git a/src/libraries/libansi/difftime.c b/src/libraries/libansi/difftime.c deleted file mode 100644 index b3b65a3df80366c2823d286259632eda42ab2ea7..0000000000000000000000000000000000000000 --- a/src/libraries/libansi/difftime.c +++ /dev/null @@ -1,38 +0,0 @@ -/* - * $Id: difftime.c,v 1.3 1994/03/06 19:41:33 ceder Exp $ - * Copyright (C) 1993, 1994 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ - -static char *rcsid = "$Id: difftime.c,v 1.3 1994/03/06 19:41:33 ceder Exp $"; -#include "rcs.h" -USE(rcsid); - -#include <time.h> -#include <sys/types.h> /* Needed for time_t on dynix.*/ -#include "tmp-difftime.h" - -extern double -difftime(time_t t1, time_t t2) -{ - return (double) t1 - (double) t2; -} diff --git a/src/libraries/libansi/libansi.a b/src/libraries/libansi/libansi.a deleted file mode 100644 index da20a4f3e62e290cd2381b772fd4d11db21625e9..0000000000000000000000000000000000000000 Binary files a/src/libraries/libansi/libansi.a and /dev/null differ diff --git a/src/libraries/libansi/mktime.c b/src/libraries/libansi/mktime.c deleted file mode 100644 index c217285904cff34a4ecf99aeed7c5a9b07230dec..0000000000000000000000000000000000000000 --- a/src/libraries/libansi/mktime.c +++ /dev/null @@ -1,28 +0,0 @@ -#if 0 -/* mktime is no longer used in LysKOM. This fact was discovered by - ceder 1993-10-02. */ -#include <time.h> - -/* - * This version in NOT 100 % ANSI-conformant, but it is enough to run LysKOM - * (I hope) /ceder - */ - -extern time_t -mktime (const struct tm * temeptr ) -{ - int nyears; - int nleaps; - int ndays; - - nyears = temeptr->tm_year - 70; - nleaps = (nyears+2) / 4; - - ndays = 365 * nyears + nleaps + temeptr->tm_yday; - - return (time_t) ( temeptr->tm_sec - + 60 * ( temeptr->tm_min - + 60 * ( temeptr->tm_hour - + 24 * ndays ))); -} -#endif diff --git a/src/libraries/libansi/strchr.c b/src/libraries/libansi/strchr.c deleted file mode 100644 index 817e53d4f3b34e68f324cc594d341b8632d409e9..0000000000000000000000000000000000000000 --- a/src/libraries/libansi/strchr.c +++ /dev/null @@ -1,42 +0,0 @@ -/* - * $Id: strchr.c,v 1.1 1993/10/14 22:13:37 ceder Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ - -static char *rcsid = "$Id: strchr.c,v 1.1 1993/10/14 22:13:37 ceder Exp $"; -#include "rcs.h" -USE(rcsid); - -#ifdef HAVE_STRING_H -# include <string.h> -#endif -#ifdef HAVE_STRINGS_H -# include <strings.h> -#endif - -int -strchr(const char *s, - int c) -{ - return index(s, c); -} diff --git a/src/libraries/libansi/tmp-difftime.h b/src/libraries/libansi/tmp-difftime.h deleted file mode 100644 index d93ae2e21d61ce5a10f599304339202e053ce8e4..0000000000000000000000000000000000000000 --- a/src/libraries/libansi/tmp-difftime.h +++ /dev/null @@ -1,8 +0,0 @@ -/* Provide a prototype for difftime. Since it returns a double, and - not an int, it is essential that we always have a prototype for - difftime in scope when we use it. All files in the LysKOM server - which use difftime includes this file. - - This file is hereby placed in the public domain. */ - -extern double difftime(time_t t1, time_t t2); diff --git a/src/libraries/libansi/vprintf.c b/src/libraries/libansi/vprintf.c deleted file mode 100644 index 00f910501612806bfbd4e672cfab854c3bf0a370..0000000000000000000000000000000000000000 --- a/src/libraries/libansi/vprintf.c +++ /dev/null @@ -1,3 +0,0 @@ -#ifdef __vax__ -#error "No vfprinf supported yet. Tell bug-lyskom@lysator.liu.se to fix this." -#endif diff --git a/src/libraries/libclient/.cvsignore b/src/libraries/libclient/.cvsignore deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/src/libraries/libclient/Makefile.in b/src/libraries/libclient/Makefile.in deleted file mode 100644 index 3a5268750cd3e701a040f9731fc5f060023a0e30..0000000000000000000000000000000000000000 --- a/src/libraries/libclient/Makefile.in +++ /dev/null @@ -1,109 +0,0 @@ -AR = @AR@ -RANLIB = @RANLIB@ -srcdir = @srcdir@ -VPATH = @srcdir@ -CC = @CC@ -ansi -DEFS = @DEFS@ - -CFLAGS = -g -Wall ${OPTFLAGS} ${DEFS} \ - -I${srcdir}/../../include \ - -I${srcdir}/../libmisc - -../libclient-sup.a: input.o \ - async.o client.o send.o parse.o \ - kom-types.o output.o services.o - $(AR) $(ARFLAGS) $@ $? - $(RANLIB) $@ - -# dependencies - -async.o : async.c \ - ../../include/kom-errno.h \ - ../../include/kom-types.h \ - ../../include/misc-types.h \ - ../../include/services.h \ - ../libmisc/s-collat-tabs.h \ - ../libmisc/s-string.h \ - async.h \ - client-malloc.h \ - client.h \ - parse.h \ - services.h - -client.o : client.c \ - ../../include/kom-types.h \ - ../../include/misc-types.h \ - ../libmisc/s-collat-tabs.h \ - ../libmisc/s-string.h \ - client-malloc.h \ - client.h - -input.o : input.c \ - ../../include/config.h \ - ../../include/kom-errno.h \ - ../../include/kom-types.h \ - ../../include/m-config.h \ - ../../include/misc-types.h \ - ../../include/services.h \ - ../libmisc/s-collat-tabs.h \ - ../libmisc/s-string.h \ - async.h \ - client.h \ - input.h \ - parse.h - -kom-types.o : kom-types.c \ - ../../include/config.h \ - ../../include/kom-types.h \ - ../../include/m-config.h \ - ../../include/misc-types.h \ - ../libmisc/s-collat-tabs.h \ - ../libmisc/s-string.h - -output.o : output.c \ - ../../include/com.h \ - ../../include/config.h \ - ../../include/kom-types.h \ - ../../include/m-config.h \ - ../../include/misc-types.h \ - ../../include/services.h \ - ../libmisc/s-collat-tabs.h \ - ../libmisc/s-string.h \ - client.h \ - output.h \ - send.h \ - services.h - -parse.o : parse.c \ - ../../include/kom-errno.h \ - ../../include/kom-types.h \ - ../../include/misc-types.h \ - ../../include/services.h \ - ../libmisc/s-collat-tabs.h \ - ../libmisc/s-string.h \ - async.h \ - client-malloc.h \ - parse.h - -send.o : send.c \ - ../../include/kom-types.h \ - ../../include/misc-types.h \ - ../libmisc/s-collat-tabs.h \ - ../libmisc/s-string.h \ - send.h - -services.o : services.c \ - ../../include/config.h \ - ../../include/kom-errno.h \ - ../../include/kom-types.h \ - ../../include/m-config.h \ - ../../include/misc-types.h \ - ../../include/services.h \ - ../libmisc/s-collat-tabs.h \ - ../libmisc/s-string.h \ - client.h \ - input.h \ - output.h \ - parse.h \ - services.h - diff --git a/src/libraries/libclient/async.c b/src/libraries/libclient/async.c deleted file mode 100644 index b6973a33d790bf6e3b8e33f4202eb158875b544e..0000000000000000000000000000000000000000 --- a/src/libraries/libclient/async.c +++ /dev/null @@ -1,524 +0,0 @@ -/* - * $Id: async.c,v 1.1 1993/10/06 12:09:28 linus Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* - * async.c -- Receive asynchronous messages and call a handler. - * - * Written by Per Cederqvist 1990-07-24 - */ - -static char *rcsid = "$Id: async.c,v 1.1 1993/10/06 12:09:28 linus Exp $"; - -#include <stdio.h> -#include <ctype.h> -#include <sys/types.h> -#include <sys/ioctl.h> -/* #include <sys/time.h> is included from kom-types.h */ -#include <sys/types.h> -#if defined(__svr4__) && defined(__sparc__) -/* Solaris */ -#include <stropts.h> -#include <sys/conf.h> -#define POLLINGREAD I_NREAD -#else -#define POLLINGREAD FIONREAD -#endif -#include <netinet/in.h> -#include <sys/socket.h> -#include <unistd.h> - -#include <kom-types.h> -#include <kom-errno.h> -#include <services.h> - -#include "async.h" -#include "client-malloc.h" -#include "parse.h" -#include "client.h" -#include "services.h" - -/* - * The handlers. - */ -static void (*new_text_handler)(Text_no text_no, - Text_stat text_s) = NULL; -static void (*i_am_on_handler)(Who_info info) = NULL; -static void (*i_am_off_handler)(Pers_no pers_no) = NULL; -static void (*new_name_handler)(Conf_no conf_no, - String old_name, - String new_name) = NULL; -static void (*directed_message_handler)(Conf_no to, - Conf_no from, - String message) = NULL; -static void (*saving_handler)(void) = NULL; - -/* Forward declarators for this file. */ - -static Success skip_one_token(FILE *fp); - -/* - * Functions that skip tokens. A token is: - * a number, - * a string or - * an array - * - * An array is - * the character '*' or - * the character '{' followed by any number of tokens followed by '}' - */ - -/* - * skip_array is used when the first '{' of an array has been detected. - * It skips all tokens to the closing '}'. - */ -static Success -skip_array(FILE *fp) -{ - int c; - - while ( skipwhite(fp), (c=getc(fp)) != '}' ) - { - ungetc(c, fp); - if ( skip_one_token(fp) != OK ) - return FAILURE; - } - return OK; -} - - -/* - * Skips the next token. Returns FAILURE if it isn't a token. - */ -static Success -skip_one_token(FILE *fp) -{ - int c; - u_long strlen; - - skipwhite(fp); - - switch(c=getc(fp)) - { - case '{': - if ( skip_array(fp) != OK ) - return FAILURE; - - break; - - case '*': - break; - - default: - if ( !isdigit(c) ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - - ungetc(c, fp); - strlen = parse_long(fp); - - if ( (c = getc(fp)) == 'H' ) - { - /* It was a string. Read it. */ - while ( strlen-- > 0 ) - getc(fp); - } - else - { - /* It was a number. Ignore it. */ - if ( ! isspace(c) ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - } - } - return OK; -} - - - -/* - * Skip no_of_tokens token. - */ -static Success /* FIXME+++ - should this be exported? */ -skip_token(FILE *fp, - int no_of_tokens) -{ - while ( no_of_tokens-- > 0 ) - { - if ( skip_one_token(fp) != OK ) - return FAILURE; - } - - return OK; -} - - - -/* - * Functions which gather the arguments for a handler and - * calls that handler. - * - * A handler is always responsible for free:ing everything - * which is given to it as a pointer. If no handler is registered - * these functions of course free everything they have malloced. - */ -static Success -call_new_text(FILE *fp) -{ - Text_no text_no; - Text_stat text = EMPTY_TEXT_STAT; - - text_no = parse_long(fp); - if ( parse_text_stat(fp, &text) != OK ) - return FAILURE; - - if ( new_text_handler == NULL ) - { - if ( text.misc_items != NULL ) - isc_free(text.misc_items); - } - else - new_text_handler(text_no, text); - - return OK; -} - - -static Success -call_i_am_on(FILE *fp) -{ - Who_info info = EMPTY_WHO_INFO; - - if ( parse_who_info(fp, &info) != OK ) - return FAILURE; - - if ( i_am_on_handler == NULL ) - { - s_clear (&info.what_am_i_doing); - s_clear (&info.username); - } - else - i_am_on_handler(info); - - return OK; -} - -static Success -call_i_am_off(FILE *fp) -{ - Pers_no pers_no; - - pers_no = parse_long(fp); - - if ( i_am_off_handler != NULL ) - i_am_off_handler(pers_no); - - return OK; -} - -static Success -call_new_name(FILE *fp) -{ - Conf_no conf_no; - String old_name = EMPTY_STRING; - String new_name = EMPTY_STRING; - - conf_no = parse_long(fp); - - if ( parse_string(fp, &old_name) != OK - || parse_string(fp, &new_name) != OK ) - { - return FAILURE; - } - - if ( new_name_handler == NULL ) - { - s_clear (&old_name); - s_clear (&new_name); - } - else - new_name_handler(conf_no, old_name, new_name); - - return OK; -} - - -static Success -call_directed_message(FILE *fp) -{ - Conf_no to, from; - String message = EMPTY_STRING; - - to = parse_long(fp); - from = parse_long(fp); - - if ( parse_string(fp, &message) != OK ) - { - return FAILURE; - } - - if ( directed_message_handler == NULL ) - { - s_clear (&message); - } - else - directed_message_handler(to, from, message); - - return OK; -} - -/* - * Call function telling that the server is syncing. - */ -static Success -call_saving(FILE *fp) -{ - if (saving_handler == NULL) - { - /* Do nothing */ - } - else - { - saving_handler(); - } - - return OK; -} - -/* - * Parse an asynchronous message and call the appropriate function. - */ -Success -async(FILE *fp) -{ - int tokens_to_skip; - Async fnc; - - tokens_to_skip = parse_long(fp); - fnc = parse_long(fp); - - switch(fnc) - { - case ay_new_text: - return call_new_text(fp); - - case ay_i_am_on: - return call_i_am_on(fp); - - case ay_i_am_off: - return call_i_am_off(fp); - - case ay_new_name: - return call_new_name(fp); - - case ay_directed_message: - return call_directed_message(fp); - - case ay_saving: - return call_saving(fp); - - default: - /* - * Messages that are not implemented. Since the server - * tells how long the message is it is possible to skip it. - */ - return skip_token(fp, tokens_to_skip); - } -} - - -/* - * Use the following functions to say that you want to catch a - * certain type of message. The default action is to ignore all - * messages. - */ -void -register_new_text(void (*async_new_text)(Text_no text_no, - Text_stat text_s)) -{ - new_text_handler = async_new_text; -} - -void -register_i_am_on(void (*async_i_am_on)(Who_info info)) -{ - i_am_on_handler = async_i_am_on; -} - - -void -register_i_am_off (void (*async_i_am_off)(Pers_no pers_no)) -{ - i_am_off_handler = async_i_am_off; -} - - -void -register_new_name(void (*async_new_name)(Conf_no conf_no, - String old_name, - String new_name)) -{ - new_name_handler = async_new_name; -} - - -void -register_directed_message(void (*async_message)(Conf_no to, - Conf_no from, - String message)) -{ - directed_message_handler = async_message; -} - - -void -register_saving(void (*saving_fun)(void)) -{ - saving_handler = saving_fun; -} - - -static enum { poll_err, poll_got_msg, poll_no_msg } -poll_server(void) -{ - int c; - long nread; - - while ( 1 ) - { - if ( ioctl(kom_server->fd, POLLINGREAD, (caddr_t) &nread) != 0) - { - kom_errno = KOM_NO_CONNECT; - return poll_err; - } - - if ( nread == 0 ) - return poll_no_msg; - - if ( (c=getc(kom_server->in)) == ':' ) - return (async(kom_server->in) == OK) ? poll_got_msg : poll_err; - - if ( !isspace(c) ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return poll_err; - } - } -} - - -/* - * Wait for asynchronous message from client, or input on any of - * the file-descriptors in opt_set. Returns FAILURE if nothing - * happened in msec milliseconds or an error occurs. (kom_errno == - * KOM_NO_ERR if the return was due to a timeout). Returns OK if - * there was an asynchronous message or input on any of the fd's in - * opt_set. - * - * Set opt_set to NULL if you don't want to wait on any other input - * than a message. - * - * To wait for a message or input on stdin the following code can be used: - * - * fd_set read_set; - * - * FD_ZERO(&read_set); - * FD_SET(fileno(stdin), &read_set); - * if ( kom_wait(read_set, 1000) == OK ) - * { - * if ( FD_ISSET(fileno(stdio), &read_set) ) - * handle_stdin_input(); - * else - * handle_asynchronous_message(); - * } - * else - * time_out(); - * - * (The handler is called from kom_wait and not handle_asynchronous_message, - * but there might be more to do afterwards since a handler cannot call - * functions that communicate with the server.) - */ -extern Success -kom_wait (fd_set *opt_set, - int msec) -{ - struct timeval wait; - fd_set read_set; - int nfds; - - kom_errno = KOM_NO_ERROR; - - switch(poll_server()) - { - case poll_err: - FD_ZERO(opt_set); - return FAILURE; - - case poll_got_msg: - FD_ZERO(opt_set); - return OK; - - case poll_no_msg: - break; - } - - /* No waiting message, so wait a while or two. */ - - /* Setup timeout structure */ - wait.tv_sec = msec / 1000; - wait.tv_usec = (msec % 1000) * 1000; - - /* Setup file descriptor set */ - if ( opt_set == NULL ) - { - FD_ZERO(&read_set); - opt_set = &read_set; - } - FD_SET(kom_server->fd, opt_set); - - - nfds = select(FD_SETSIZE, - opt_set, - (fd_set *) NULL, - (fd_set *) NULL, - &wait); - - if ( nfds < 0 ) - { - kom_errno = KOM_NO_CONNECT; - return FAILURE; - } - - if ( FD_ISSET(kom_server->fd, opt_set) - && poll_server() == poll_err ) - { - return FAILURE; - } - - return nfds == 0 ? FAILURE : OK; -} - diff --git a/src/libraries/libclient/async.h b/src/libraries/libclient/async.h deleted file mode 100644 index 519476347f391cd52a61109853698fb958cb99fc..0000000000000000000000000000000000000000 --- a/src/libraries/libclient/async.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * $Id: async.h,v 1.1 1993/10/06 12:09:36 linus Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* - * $Id: async.h,v 1.1 1993/10/06 12:09:36 linus Exp $ - * - * This file contains the parts of the async protocol that are common - * to the server and the client. - */ - - -/* - * What does this packet contain? (See doc/com-spec) - */ -typedef enum { - ay_new_text = 0, - ay_i_am_off = 1, - ay_i_am_on_obsolete = 2, /* Sends a Who_info_old. */ - ay_conf_deleted = 3, - ay_conf_created = 4, - ay_new_name = 5, - ay_i_am_on = 6, /* Sends a Who_info. */ - ay_saving = 7, - ay_forced_leave_conf = 8, - ay_login = 9, - /* ay_broadcast_message = 10, */ - ay_crowded = 11, - ay_directed_message = 12, - ay_logout = 13 -} Async; - -/* - * Parse an asynchronous message and call the appropriate function. - */ -extern Success -async(FILE *fp); diff --git a/src/libraries/libclient/client-Makefile.in b/src/libraries/libclient/client-Makefile.in deleted file mode 100644 index 3a5268750cd3e701a040f9731fc5f060023a0e30..0000000000000000000000000000000000000000 --- a/src/libraries/libclient/client-Makefile.in +++ /dev/null @@ -1,109 +0,0 @@ -AR = @AR@ -RANLIB = @RANLIB@ -srcdir = @srcdir@ -VPATH = @srcdir@ -CC = @CC@ -ansi -DEFS = @DEFS@ - -CFLAGS = -g -Wall ${OPTFLAGS} ${DEFS} \ - -I${srcdir}/../../include \ - -I${srcdir}/../libmisc - -../libclient-sup.a: input.o \ - async.o client.o send.o parse.o \ - kom-types.o output.o services.o - $(AR) $(ARFLAGS) $@ $? - $(RANLIB) $@ - -# dependencies - -async.o : async.c \ - ../../include/kom-errno.h \ - ../../include/kom-types.h \ - ../../include/misc-types.h \ - ../../include/services.h \ - ../libmisc/s-collat-tabs.h \ - ../libmisc/s-string.h \ - async.h \ - client-malloc.h \ - client.h \ - parse.h \ - services.h - -client.o : client.c \ - ../../include/kom-types.h \ - ../../include/misc-types.h \ - ../libmisc/s-collat-tabs.h \ - ../libmisc/s-string.h \ - client-malloc.h \ - client.h - -input.o : input.c \ - ../../include/config.h \ - ../../include/kom-errno.h \ - ../../include/kom-types.h \ - ../../include/m-config.h \ - ../../include/misc-types.h \ - ../../include/services.h \ - ../libmisc/s-collat-tabs.h \ - ../libmisc/s-string.h \ - async.h \ - client.h \ - input.h \ - parse.h - -kom-types.o : kom-types.c \ - ../../include/config.h \ - ../../include/kom-types.h \ - ../../include/m-config.h \ - ../../include/misc-types.h \ - ../libmisc/s-collat-tabs.h \ - ../libmisc/s-string.h - -output.o : output.c \ - ../../include/com.h \ - ../../include/config.h \ - ../../include/kom-types.h \ - ../../include/m-config.h \ - ../../include/misc-types.h \ - ../../include/services.h \ - ../libmisc/s-collat-tabs.h \ - ../libmisc/s-string.h \ - client.h \ - output.h \ - send.h \ - services.h - -parse.o : parse.c \ - ../../include/kom-errno.h \ - ../../include/kom-types.h \ - ../../include/misc-types.h \ - ../../include/services.h \ - ../libmisc/s-collat-tabs.h \ - ../libmisc/s-string.h \ - async.h \ - client-malloc.h \ - parse.h - -send.o : send.c \ - ../../include/kom-types.h \ - ../../include/misc-types.h \ - ../libmisc/s-collat-tabs.h \ - ../libmisc/s-string.h \ - send.h - -services.o : services.c \ - ../../include/config.h \ - ../../include/kom-errno.h \ - ../../include/kom-types.h \ - ../../include/m-config.h \ - ../../include/misc-types.h \ - ../../include/services.h \ - ../libmisc/s-collat-tabs.h \ - ../libmisc/s-string.h \ - client.h \ - input.h \ - output.h \ - parse.h \ - services.h - diff --git a/src/libraries/libclient/client-malloc.h b/src/libraries/libclient/client-malloc.h deleted file mode 100644 index bbba9be93d975131ca8cdda40bc454ca0b9d6a69..0000000000000000000000000000000000000000 --- a/src/libraries/libclient/client-malloc.h +++ /dev/null @@ -1,28 +0,0 @@ -/* - * $Id: client-malloc.h,v 1.1 1993/10/06 12:09:44 linus Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* $Id: client-malloc.h,v 1.1 1993/10/06 12:09:44 linus Exp $ */ -extern malloc_function isc_malloc; -extern realloc_function isc_realloc; -extern free_function isc_free; diff --git a/src/libraries/libclient/client.c b/src/libraries/libclient/client.c deleted file mode 100644 index 5aaf4b74882c7fdc859b9f01741149f889c08dcc..0000000000000000000000000000000000000000 --- a/src/libraries/libclient/client.c +++ /dev/null @@ -1,203 +0,0 @@ -/* - * $Id: client.c,v 1.1 1993/10/06 12:09:51 linus Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* -** client.c definitions of ISC client support routines -** -** history: -** 900509 pen initial coding -** 930829 linus changed name. -*/ - -static char *rcsid = "$Id: client.c,v 1.1 1993/10/06 12:09:51 linus Exp $"; - -#include <stdio.h> -/* #include <sys/time.h> is included from kom-types.h */ -#include <sys/types.h> -#include <netinet/in.h> -#include <sys/socket.h> -#include <sys/file.h> -#include <sys/ioctl.h> -#include <arpa/inet.h> -#include <netdb.h> -#ifdef HAVE_STRING_H -#include <string.h> -#else -#include <strings.h> -#endif -#include <unistd.h> - -#include <kom-types.h> - -#include "client-malloc.h" -#include "client.h" - -/* - * Open a connection to a server. host == NULL means this machine. - */ -ISC * -isc_connect(const char *host, - int port) -{ - ISC *isc_si; - char buf[100]; -#ifdef HAVE_STRUCT_LINGER - struct linger lingonsylt; -#endif - int intbuf; - struct sockaddr_in server; - struct hostent *hp; - - - - /* Allocate storage for the ISC structure */ - isc_si = (ISC *) isc_malloc(sizeof(ISC)); - - - /* Local connection? */ - if (host == NULL) - { - gethostname(buf, sizeof(buf)); - host = buf; - } - - if ((hp = gethostbyname(host)) != NULL) - { - memset((char *) &server, 0, sizeof(server)); -#ifdef NETDB_DIFF - memcpy((char *) &server.sin_addr, hp->h_addr_list, hp->h_length); -#else - memcpy((char *) &server.sin_addr, hp->h_addr, hp->h_length); -#endif - server.sin_family = hp->h_addrtype; - } - else - { - perror("gethostbyname failed:"); - server.sin_family = AF_INET; - server.sin_addr.s_addr = inet_addr(host); - if (server.sin_addr.s_addr == -1) - return NULL; - } - - server.sin_port = (int) htons(port); - if ((isc_si->fd = socket(AF_INET, SOCK_STREAM, 0)) < 0) - return NULL; - -#ifdef HAVE_STRUCT_LINGER - lingonsylt.l_onoff = 0; - lingonsylt.l_linger = 0; - if (setsockopt(isc_si->fd, SOL_SOCKET, SO_LINGER, - (char *)&lingonsylt, sizeof(lingonsylt)) < 0) - { - perror("Can't turn off linger"); - } -#endif - - intbuf = 0; - if (setsockopt(isc_si->fd, SOL_SOCKET, SO_REUSEADDR, - (char *)&intbuf, sizeof(intbuf)) < 0) - { - perror("Can't turn of reuse of local addr"); - } - - intbuf = 1; - if (setsockopt(isc_si->fd, SOL_SOCKET, SO_KEEPALIVE, - (char *)&intbuf, sizeof(intbuf)) < 0) - { - perror("Can't turn on KEEPALIVE"); - } - - if (connect(isc_si->fd, (struct sockaddr *)&server, sizeof(server)) < 0 - || (isc_si->in = fdopen(isc_si->fd, "r" )) == NULL - || (isc_si->out = fdopen(isc_si->fd, "w")) == NULL ) - { - close(isc_si->fd); - return NULL; - } - setbuf(isc_si->in, NULL); - setbuf(isc_si->out, NULL); - - return isc_si; -} - - -/* - * Shut down the connection - */ -Success -isc_disconnect(ISC *isc_si) -{ - fclose(isc_si->in); /* *** check retval */ - fclose(isc_si->out); /* *** check retval */ - isc_free(isc_si); - return OK; -} - - - -/* - * Wait for a message from the server. I opt_readset != NULL also wait for - * messages on those fds. - * - * Return value: - * < 0 error - * > 0 there is a message from the server (and maybe also - * in opt_readset) - * = 0 there is a message in the opt_readset. - */ -int -isc_wait(ISC *isc_si, - int timeout, - fd_set *opt_readset) -{ - fd_set read_set; - struct timeval wait; - int nfds; - - - /* Setup timeout structure */ - wait.tv_sec = timeout / 1000; - wait.tv_usec = (timeout * 1000) % 1000000; - - /* Setup file descriptor set */ - if ( opt_readset == NULL ) - { - FD_ZERO(&read_set); - opt_readset = &read_set; - } - FD_SET(isc_si->fd, opt_readset); - - - nfds = select(FD_SETSIZE, - opt_readset, - (fd_set *) NULL, - (fd_set *) NULL, - &wait); - - - return (nfds < 0 ? nfds : FD_ISSET(isc_si->fd, opt_readset)); -} - - diff --git a/src/libraries/libclient/client.h b/src/libraries/libclient/client.h deleted file mode 100644 index 1bd311200cb28ac8388ca26f12767b9b0604b3a5..0000000000000000000000000000000000000000 --- a/src/libraries/libclient/client.h +++ /dev/null @@ -1,82 +0,0 @@ -/* - * $Id: client.h,v 1.1 1993/10/06 12:09:57 linus Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* - * $Id: client.h,v 1.1 1993/10/06 12:09:57 linus Exp $ - * -** isc/client.h structures and defines used in a ISC client -** -** history: -** 900509 pen initial coding -*/ - -#ifndef _CLIENT_H_INCLUDED__ -#define _CLIENT_H_INCLUDED__ - -typedef struct -{ - int fd; /* Server TCP/IP file descriptor. */ - FILE *in; /* FILE * for things from the server */ - FILE *out; /* FILE * for things to the server */ -} ISC; - - -#define KS kom_server /* I know I'm lazy :-) /ceder */ -extern ISC *kom_server; /* The server that is used. */ - - -/* - * Open a connection to a server. host == NULL means this machine. - */ -extern ISC * -isc_connect(const char *host, - int port); - - - -/* - * Shut down the connection - */ -extern Success -isc_disconnect(ISC *isc_si); - - - -/* - * Wait for a message from the server. I opt_readset != NULL also wait for - * messages on those fds. - * - * Return value: - * < 0 error - * > 0 there is a message from the server (and maybe also - * in opt_readset) - * = 0 there is a message in the opt_readset. - */ -extern int -isc_wait(ISC *isc_si, - int timeout, - fd_set *opt_readset); - - -#endif diff --git a/src/libraries/libclient/input.c b/src/libraries/libclient/input.c deleted file mode 100644 index 5b7d161a8fe53761880851bfe604d007c23029ce..0000000000000000000000000000000000000000 --- a/src/libraries/libclient/input.c +++ /dev/null @@ -1,283 +0,0 @@ -/* - * $Id: input.c,v 1.1 1993/10/06 12:10:02 linus Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* - * services.c -- All the services the LysKOM server makes available - * for clients. - * - * Created by ceder 1990-07-17 - */ - -static char *rcsid = "$Id: input.c,v 1.1 1993/10/06 12:10:02 linus Exp $"; - -#include <kom-types.h> -#include <config.h> -#include <services.h> -#include <kom-errno.h> -#include "parse.h" -#include "client.h" -#include "async.h" -#include "input.h" - - -extern Success -input_header(void) -{ - int c; - - skipwhite(KS->in); - - while ( (c=getc(KS->in)) == ':' ) - { - if ( async(KS->in) != OK ) - return FAILURE; - - skipwhite(KS->in); - } - - switch(c) - { - case '=': - (void)parse_long(KS->in); /* Don't care abot ref_no */ - kom_errno = KOM_NO_ERROR; - return OK; - case '%': - if ( (c=getc(KS->in)) == '%' ) - { - /* The server is sending '%% LysKOM protocol error.' */ - /* BUG: Since the line is not discarded it is harder - * than it ought to be to recover from this error. */ - kom_errno = KOM_CLIENT_IS_CRAZY; - return FAILURE; - } - ungetc(c, KS->in); - (void)parse_long(KS->in); - kom_errno = parse_long(KS->in); - err_stat = parse_long(KS->in); - return FAILURE; - - default: - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } -} - - - -extern Pers_no -input_create_person (const String name, - const String passwd ) -{ - if ( input_header() != OK ) - return 0; - - return parse_long(KS->in); -} - - -extern Success -input_get_person_stat (Person * result ) -{ - if ( input_header() != OK ) - return FAILURE; - - return parse_person(KS->in, result); -} - -extern Success -input_get_created_texts(Text_list * result) -{ - if ( input_header() != OK ) - return FAILURE; - - return parse_text_list(KS->in, result); -} - - -extern Success -input_get_membership(Membership_list * memberships) -{ - if ( input_header() != OK ) - return FAILURE; - - return parse_membership_list(KS->in, memberships); -} - - -extern Success -input_query_read_texts ( Membership * result ) -{ - if ( input_header() != OK ) - return FAILURE; - - return parse_membership(KS->in, result ); -} - - -extern Conf_no -input_create_conf (const String name, - Conf_type type ) -{ - if ( input_header() != OK ) - return 0; - - return parse_long(KS->in); -} - - - - -extern Success -input_lookup_name (Conf_list *result) -{ - if ( input_header() != OK ) - return FAILURE; - - return parse_conf_list(KS->in, result ); -} - - - -extern Success -input_get_conf_stat (Conference * result ) -{ - if ( input_header() != OK ) - return FAILURE; - - return parse_conference(KS->in, result ); -} - -extern Success -input_get_members (Member_list * members) -{ - if ( input_header() != OK ) - return FAILURE; - - return parse_member_list(KS->in, members); -} - - -extern Success -input_get_marks (Mark_list *result ) -{ - if ( input_header() != OK ) - return FAILURE; - - return parse_mark_list(KS->in, result); -} - - - -extern Success -input_get_text (String *result) -{ - if ( input_header() != OK ) - return FAILURE; - - return parse_string(KS->in, result); -} - - - -extern Success -input_get_text_stat (Text_stat *result) -{ - if ( input_header() != OK ) - return FAILURE; - - return parse_text_stat(KS->in, result); -} - - - -extern Text_no -input_create_text (void) -{ - if ( input_header() != OK ) - return 0; - - return parse_long(KS->in); -} - - -extern Text_no -input_create_anonymous_text (void) -{ - if ( input_header() != OK ) - return 0; - - return parse_long(KS->in); -} - -extern Success -input_get_map (Text_list * result) -{ - if ( input_header() != OK ) - return FAILURE; - - return parse_text_list(KS->in, result); -} - - - -extern Success -input_get_time ( struct tm *time ) -{ - if ( input_header() != OK || parse_time(KS->in, time) != OK ) - return FAILURE; - - return OK; -} - - -extern Success -input_who_is_on (Who_info_list *result) -{ - if ( input_header() != OK ) - return FAILURE; - - return parse_who_info_list(KS->in, result); -} - - -extern Success -input_get_info (Info *result ) -{ - if ( input_header() != OK ) - return FAILURE; - - return parse_info(KS->in, result); -} - - -extern Success -input_get_unread_confs (Conf_no_list *result ) -{ - if ( input_header() != OK ) - return FAILURE; - - return parse_conf_no_list (KS->in, result); -} - - diff --git a/src/libraries/libclient/input.h b/src/libraries/libclient/input.h deleted file mode 100644 index c0bc3a15709496397c608c3443a2fe7778506067..0000000000000000000000000000000000000000 --- a/src/libraries/libclient/input.h +++ /dev/null @@ -1,104 +0,0 @@ -/* - * $Id: input.h,v 1.1 1993/10/06 12:10:08 linus Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* - * $Id: input.h,v 1.1 1993/10/06 12:10:08 linus Exp $ - * - * Created by ceder 1990-07-18 - */ - - -extern Success -input_header(void); - - -extern Pers_no -input_create_person (const String name, - const String passwd ); - -extern Success -input_get_person_stat (Person * result ); - -extern Success -input_get_created_texts(Text_list * result); - -extern Success -input_get_membership(Membership_list * memberships); - -extern Success -input_query_read_texts ( Membership * result ); - -extern Conf_no -input_create_conf (const String name, - Conf_type type ); - - - -extern Success -input_lookup_name (Conf_list *result); - - -extern Success -input_get_conf_stat (Conference * result ); - - -extern Success -input_get_members (Member_list * members); - - -extern Success -input_get_marks (Mark_list *result ); - - -extern Success -input_get_text (String *result); - - -extern Success -input_get_text_stat (Text_stat *result); - - -extern Text_no -input_create_text (void); - -extern Text_no -input_create_anonymous_text (void); - - -extern Success -input_get_map (Text_list * result); - - -extern Success -input_get_time ( struct tm * clock ); - - -extern Success -input_who_is_on (Who_info_list * result); - -extern Success -input_get_unread_confs (Conf_no_list *result ); - -extern Success -input_get_info (Info *result ); diff --git a/src/libraries/libclient/kom-types.c b/src/libraries/libclient/kom-types.c deleted file mode 100644 index f8629954df2a2dbf76fb43ab1be179b376a1ec2a..0000000000000000000000000000000000000000 --- a/src/libraries/libclient/kom-types.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * $Id: kom-types.c,v 1.1 1993/10/06 12:10:16 linus Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* - * kom-types.c - * Definition of constants and other thing that - * can't or shouldn't be defined in header files. - * - * - * Copyright (C) 1990 Lysator Computer Club - * Linkoping University, Sweden - * - * Everyone is granted permission to copy, modify and redistribute - * this code, provided the people they give it to can. - * - * - * Author: Thomas Bellman - * Lysator Computer Club - * Linkoping University - * Sweden - * - * email: bellman@Lysator.LiU.SE - */ - -static char *rcsid = "$Id: kom-types.c,v 1.1 1993/10/06 12:10:16 linus Exp $"; - -#include <stdio.h> -#include <kom-types.h> -#include <config.h> - -#define EXPORT - - -EXPORT const Conf_list EMPTY_CONF_LIST = EMPTY_CONF_LIST_i; - -EXPORT const Pers_list EMPTY_PERS_LIST = EMPTY_PERS_LIST_i; - -EXPORT const Mark_list EMPTY_MARK_LIST = EMPTY_MARK_LIST_i; - -EXPORT const Conf_no_list EMPTY_CONF_NO_LIST = EMPTY_CONF_NO_LIST_i; - -EXPORT const Conf_type NULL_CONF_TYPE = NULL_CONF_TYPE_i; - -EXPORT const Membership EMPTY_MEMBERSHIP = EMPTY_MEMBERSHIP_i; - -EXPORT const Membership_list EMPTY_MEMBERSHIP_LIST = EMPTY_MEMBERSHIP_LIST_i; - -EXPORT const Text_list EMPTY_TEXT_LIST = EMPTY_TEXT_LIST_i; - -EXPORT const Member_list EMPTY_MEMBER_LIST = EMPTY_MEMBER_LIST_i; - -EXPORT const Who_info EMPTY_WHO_INFO = EMPTY_WHO_INFO_i; - -EXPORT const Who_info_ident EMPTY_WHO_INFO_IDENT = EMPTY_WHO_INFO_IDENT_i; - -EXPORT const Who_info_list EMPTY_WHO_INFO_LIST = EMPTY_WHO_INFO_LIST_i; - -EXPORT const Priv_bits DEFAULT_PRIV_BITS = DEFAULT_PRIV_BITS_i; - -EXPORT const Personal_flags DEFAULT_PERSONAL_FLAGS = DEFAULT_PERSONAL_FLAGS_i; - - -EXPORT const Person EMPTY_PERSON = EMPTY_PERSON_i; - -EXPORT const Conference EMPTY_CONFERENCE = EMPTY_CONFERENCE_i; - -EXPORT const Text_stat EMPTY_TEXT_STAT = EMPTY_TEXT_STAT_i; diff --git a/src/libraries/libclient/output.c b/src/libraries/libclient/output.c deleted file mode 100644 index ce8530a007467fd9458618c4b3af7f4ec9ccf8d2..0000000000000000000000000000000000000000 --- a/src/libraries/libclient/output.c +++ /dev/null @@ -1,675 +0,0 @@ -/* - * $Id: output.c,v 1.1 1993/10/06 12:10:23 linus Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* - * output.c -- initiate call to client. - * - * Created by ceder 1990-07-17 - */ - -static char *rcsid = "$Id: output.c,v 1.1 1993/10/06 12:10:23 linus Exp $"; - -#include <stdio.h> - -#include <kom-types.h> -#include <config.h> -#include <services.h> - -#include "client.h" -#include "output.h" -#include "services.h" -#include <com.h> - -#include "send.h" - -static void -output_packet_header(Call_header fnc) -{ - fprintf(KS->out, "0 %lu", (u_long)fnc); -} - - -extern void -output_login_old (Pers_no person, - const String passwd) -{ - output_packet_header(call_fnc_login_old); - fprintf(KS->out, " %lu", (u_long)person); - output_string(KS->out, passwd); - putc('\n', KS->out); - fflush(KS->out); -} - -extern void -output_login (Pers_no person, - const String passwd, - Bool visible) -{ - output_packet_header(call_fnc_login); - fprintf(KS->out, " %lu", (u_long)person); - output_string(KS->out, passwd); - fprintf(KS->out, " %lu", (u_long)visible); - putc('\n', KS->out); - fflush(KS->out); -} - - - -extern void -output_logout (void) /* can never fail */ -{ - output_packet_header(call_fnc_logout); - putc('\n', KS->out); - fflush(KS->out); -} - - - -extern void -output_pepsi (Conf_no conference ) -{ - output_packet_header(call_fnc_pepsi); - fprintf(KS->out, " %lu\n", (u_long)conference); - fflush(KS->out); -} - - - - -extern void -output_change_name (Conf_no conf_no, - const String new_name) -{ - output_packet_header(call_fnc_change_name); - fprintf(KS->out, " %lu", (u_long)conf_no); - output_string(KS->out, new_name ); - putc('\n', KS->out); - fflush(KS->out); -} - - -extern void -output_change_what_i_am_doing (const String what_am_i_doing ) -{ - output_packet_header(call_fnc_change_what_i_am_doing); - output_string(KS->out, what_am_i_doing ); - putc('\n', KS->out); - fflush(KS->out); -} - - - - -/****************************** -* Person-related calls * -******************************/ - -/* - * Create a new person. Returns 0 if any error occured. - */ -extern void -output_create_person (const String name, - const String passwd ) -{ - output_packet_header(call_fnc_create_person); - output_string(KS->out, name ); - output_string( KS->out, passwd ); - putc('\n', KS->out); - fflush(KS->out); -} - - -extern void -output_get_person_stat (Pers_no person) -{ - output_packet_header(call_fnc_get_person_stat); - fprintf(KS->out, " %lu\n", (u_long) person); - fflush(KS->out); -} - -extern void -output_get_created_texts(Pers_no pers_no, - Local_text_no first, - u_long len ) -{ - output_packet_header(call_fnc_get_created_texts); - fprintf(KS->out, " %lu %lu %lu\n", - (u_long) pers_no, - (u_long) first, - (u_long) len); - fflush(KS->out); -} - - -extern void -output_get_membership (Pers_no person, - u_short first, - u_short no_of_confs, - Bool want_read_texts ) -{ - output_packet_header(call_fnc_get_membership); - fprintf(KS->out, " %lu %lu %lu %lu\n", - (u_long)person, - (u_long)first, - (u_long)no_of_confs, - (u_long)want_read_texts); - fflush(KS->out); -} - - -extern void -output_set_priv_bits (Pers_no person, - Priv_bits privileges ) -{ - output_packet_header(call_fnc_set_priv_bits); - fprintf(KS->out, " %lu", (u_long) person); - output_priv_bits( KS->out, privileges ); - putc('\n', KS->out); - fflush(KS->out); -} - - - -extern void -output_set_passwd (Pers_no person, - const String old_pwd, - const String new_pwd ) -{ - output_packet_header(call_fnc_set_passwd); - fprintf(KS->out, " %lu", (u_long) person); - output_string( KS->out, old_pwd ); - output_string( KS->out, new_pwd ); - putc('\n', KS->out); - fflush(KS->out); -} - - -extern void -output_query_read_texts (Pers_no pers_no, - Conf_no conf_no) -{ - output_packet_header(call_fnc_query_read_texts); - fprintf(KS->out, " %lu %lu\n", (u_long) pers_no, (u_long) conf_no); - fflush(KS->out); -} - - - - -/**************************************** -* Conference-related calls * -****************************************/ - - -extern void -output_create_conf (const String name, - Conf_type type ) -{ - output_packet_header(call_fnc_create_conf); - output_string( KS->out, name ); - output_conf_type( KS->out, type ); - putc('\n', KS->out); - fflush(KS->out); -} - - - -extern void -output_delete_conf (Conf_no conf ) -{ - output_packet_header(call_fnc_delete_conf); - fprintf(KS->out, " %lu\n", (u_long) conf); - fflush(KS->out); -} - - - -extern void -output_lookup_name (const String name) -{ - output_packet_header(call_fnc_lookup_name); - output_string( KS->out, name ); - putc('\n', KS->out); - fflush(KS->out); -} - - - - -extern void -output_get_conf_stat (Conf_no conf_no) -{ - output_packet_header(call_fnc_get_conf_stat); - fprintf(KS->out, " %lu\n", (u_long) conf_no); - fflush(KS->out); -} - -extern void -output_get_members (Conf_no conf, - u_short first, - u_short no_of_members) -{ - output_packet_header(call_fnc_get_members); - fprintf(KS->out, " %lu %lu %lu\n", (u_long) conf, (u_long) first, - (u_long) no_of_members); - fflush(KS->out); -} - - -extern void -output_add_member (Conf_no conf_no, - Pers_no pers_no, - u_char priority, - u_short where ) -{ - output_packet_header(call_fnc_add_member); - fprintf(KS->out, " %lu %lu %lu %lu\n", (u_long) conf_no, (u_long) pers_no, - (u_long) priority, (u_long) where); - fflush(KS->out); -} - - - -extern void -output_sub_member (Conf_no conf_no, - Pers_no pers_no ) -{ - output_packet_header(call_fnc_sub_member); - fprintf(KS->out, " %lu %lu\n", (u_long) conf_no, (u_long) pers_no); - fflush(KS->out); -} - - -extern void -output_set_unread (Conf_no conf_no, - Text_no no_of_unread) -{ - output_packet_header(call_fnc_set_unread); - fprintf(KS->out, " %lu %lu\n", (u_long) conf_no, (u_long) no_of_unread); - fflush(KS->out); -} - - - -extern void -output_set_presentation (Conf_no conf_no, - Text_no text_no ) -{ - output_packet_header(call_fnc_set_presentation); - fprintf(KS->out, " %lu %lu\n", (u_long) conf_no, (u_long) text_no); - fflush(KS->out); -} - - -extern void -output_set_etc_motd (Conf_no conf_no, - Text_no text_no ) -{ - output_packet_header(call_fnc_set_etc_motd); - fprintf(KS->out, " %lu %lu\n", (u_long) conf_no, (u_long) text_no); - fflush(KS->out); -} - - - -extern void -output_set_supervisor (Conf_no conf_no, - Conf_no admin ) -{ - output_packet_header(call_fnc_set_supervisor); - fprintf(KS->out, " %lu %lu\n", (u_long) conf_no, (u_long) admin); - fflush(KS->out); -} - - -extern void -output_set_permitted_submitters (Conf_no conf_no, - Conf_no perm_sub ) -{ - output_packet_header(call_fnc_set_permitted_submitters); - fprintf(KS->out, " %lu %lu\n", (u_long) conf_no, (u_long) perm_sub); - fflush(KS->out); -} - - -extern void -output_set_super_conf (Conf_no conf_no, - Conf_no super_conf ) -{ - output_packet_header(call_fnc_set_super_conf); - fprintf(KS->out, " %lu %lu\n", (u_long) conf_no, (u_long) super_conf); - fflush(KS->out); -} - - -extern void -output_set_conf_type (Conf_no conf_no, - Conf_type type ) -{ - output_packet_header(call_fnc_set_conf_type); - fprintf(KS->out, " %lu", (u_long) conf_no); - output_conf_type(KS->out, type); - putc('\n', KS->out); - fflush(KS->out); -} - - -extern void -output_set_garb_nice (Conf_no conf_no, - Garb_nice nice ) -{ - output_packet_header(call_fnc_set_garb_nice); - fprintf(KS->out, " %lu %lu\n", (u_long) conf_no, (u_long) nice); - fflush(KS->out); -} - - - - -/******************************** -* Calls to handle marks * -********************************/ - - -extern void -output_get_marks (void) -{ - output_packet_header(call_fnc_get_marks); - putc('\n', KS->out); - fflush(KS->out); -} - - - - -extern void -output_mark_text (Text_no text, - u_char mark_type ) -{ - output_packet_header(call_fnc_mark_text); - fprintf(KS->out, " %lu %lu\n", (u_long) text, (u_long) mark_type); - fflush(KS->out); -} - - - - - -/******************************* -* Calls to handle texts * -*******************************/ - - -extern void -output_get_text (Text_no text, - String_size start_char, - String_size end_char) -{ - output_packet_header(call_fnc_get_text); - fprintf(KS->out, " %lu %lu %lu\n", (u_long)text, - (u_long)start_char, (u_long)end_char); - fflush(KS->out); -} - - - -extern void -output_get_text_stat (Text_no text) -{ - output_packet_header(call_fnc_get_text_stat); - fprintf(KS->out, " %lu\n", (u_long)text); - fflush(KS->out); -} - - -extern void -output_mark_as_read (Conf_no conference, - int no_of_texts, - const Local_text_no * text_arr ) -{ - int i; - - output_packet_header(call_fnc_mark_as_read); - fprintf(KS->out, " %lu %lu", (u_long) conference, (u_long) no_of_texts); - fprintf(KS->out, " {"); - for ( i = 0; i < no_of_texts; i++ ) - fprintf(KS->out, " %lu", (u_long)text_arr[ i ]); - fprintf(KS->out, " }\n"); - fflush(KS->out); -} - - - -extern void -output_create_text (const String message, - u_short no_of_misc, - const Misc_info * misc ) -{ - int i; - - output_packet_header(call_fnc_create_text); - output_string( KS->out, message ); - fprintf(KS->out, " %lu {", (u_long)no_of_misc); - for ( i = 0; i < no_of_misc; i++ ) - output_misc_info(KS->out, misc[ i ]); - fprintf(KS->out, " }\n"); - fflush(KS->out); -} - -extern void -output_create_anonymous_text (const String message, - u_short no_of_misc, - const Misc_info * misc ) -{ - int i; - - output_packet_header(call_fnc_create_text); - output_string( KS->out, message ); - fprintf(KS->out, " %lu {", (u_long)no_of_misc); - for ( i = 0; i < no_of_misc; i++ ) - output_misc_info(KS->out, misc[ i ]); - fprintf(KS->out, " }\n"); - fflush(KS->out); -} - - -extern void -output_delete_text( Text_no text_no ) -{ - output_packet_header(call_fnc_delete_text); - fprintf(KS->out, " %lu\n", (u_long) text_no); - fflush(KS->out); -} - - - - -extern void -output_add_recipient (Text_no text_no, - Conf_no conf_no, - Info_type type ) -{ - output_packet_header(call_fnc_add_recipient); - fprintf(KS->out, " %lu %lu %lu\n", (u_long) text_no, - (u_long) conf_no, (u_long) type); - fflush(KS->out); -} - - -extern void -output_sub_recipient (Text_no text_no, - Conf_no conf_no ) -{ - output_packet_header(call_fnc_sub_recipient); - fprintf(KS->out, " %lu %lu\n", (u_long) text_no, (u_long) conf_no); - fflush(KS->out); -} - - - -extern void -output_add_comment (Text_no comment, - Text_no comment_to ) -{ - output_packet_header(call_fnc_add_comment); - fprintf(KS->out, " %lu %lu\n", (u_long) comment, (u_long) comment_to); - fflush(KS->out); -} - - - -extern void -output_sub_comment (Text_no comment, - Text_no comment_to ) -{ - output_packet_header(call_fnc_sub_comment); - fprintf(KS->out, " %lu %lu\n", (u_long) comment, (u_long) comment_to); - fflush(KS->out); -} - -extern void -output_add_footnote (Text_no footnote, - Text_no footnote_to ) -{ - output_packet_header(call_fnc_add_footnote); - fprintf(KS->out, " %lu %lu\n", (u_long) footnote, (u_long) footnote_to); - fflush(KS->out); -} - - - -extern void -output_sub_footnote (Text_no footnote, - Text_no footnote_to ) -{ - output_packet_header(call_fnc_sub_footnote); - fprintf(KS->out, " %lu %lu\n", (u_long) footnote, (u_long) footnote_to); - fflush(KS->out); -} - - - -extern void -output_get_map (Conf_no conf_no, - Local_text_no first_local_no, - Local_text_no no_of_texts) -{ - output_packet_header(call_fnc_get_map); - fprintf(KS->out, " %lu %lu %lu\n", (u_long) conf_no, - (u_long) first_local_no, (u_long) no_of_texts); - fflush(KS->out); -} - - - -extern void -output_get_time ( void ) -{ - output_packet_header(call_fnc_get_time); - putc('\n', KS->out); - fflush(KS->out); -} - -extern void -output_who_is_on ( void ) -{ - output_packet_header(call_fnc_who_is_on); - putc('\n', KS->out); - fflush(KS->out); -} - - -extern void -output_get_info ( void ) -{ - output_packet_header(call_fnc_get_info); - putc('\n', KS->out); - fflush(KS->out); -} - - -extern void -output_set_motd_of_lyskom (Text_no motd) -{ - output_packet_header(call_fnc_set_motd_of_lyskom); - fprintf(KS->out, " %lu\n", (u_long) motd); - fflush(KS->out); -} - - -extern void -output_enable (u_char ena_level) -{ - output_packet_header(call_fnc_enable); - fprintf(KS->out, " %lu\n", (u_long) ena_level); - fflush(KS->out); -} - - -extern void -output_sync (void) -{ - output_packet_header(call_fnc_sync); - putc('\n', KS->out); - fflush(KS->out); -} - - -extern void -output_shutdown (int exit_val) -{ - output_packet_header(call_fnc_shutdown); - fprintf(KS->out, " %lu\n", (u_long) exit_val); - fflush(KS->out); -} - - -extern void -output_broadcast (const String message) -{ - output_packet_header(call_fnc_broadcast); - output_string(KS->out, message); - putc('\n', KS->out); - fflush(KS->out); -} - -extern void -output_send_message (Pers_no recipient, - const String message) -{ - output_packet_header(call_fnc_send_message); - fprintf(KS->out, " %lu\n", (u_long) recipient); - output_string(KS->out, message); - putc('\n', KS->out); - fflush(KS->out); -} - -void -output_get_unread_confs (Pers_no pers_no) -{ - output_packet_header(call_fnc_get_unread_confs); - fprintf(KS->out, " %lu\n", (u_long) pers_no); - fflush(KS->out); -} - diff --git a/src/libraries/libclient/output.h b/src/libraries/libclient/output.h deleted file mode 100644 index 18d3c706afff2196147551883885fd6e2c71973a..0000000000000000000000000000000000000000 --- a/src/libraries/libclient/output.h +++ /dev/null @@ -1,299 +0,0 @@ -/* - * $Id: output.h,v 1.1 1993/10/06 12:10:29 linus Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* - * $Id: output.h,v 1.1 1993/10/06 12:10:29 linus Exp $ - * - * output.h -- initiate call to client. - * - * Created by ceder 1990-07-17 - */ - -#ifndef _OUTPUT_H_ALREADY_INCLUDED__ -#define _OUTPUT_H_ALREADY_INCLUDED__ - -extern void -output_login_old (Pers_no person, - const String passwd ); - -extern void -output_login (Pers_no person, - const String passwd, - Bool visible); - - -extern void -output_logout (void); - - -extern void -output_pepsi (Conf_no conference ); - - - -extern void -output_change_name (Conf_no conf_no, - const String new_name); - -extern void -output_change_what_i_am_doing (const String what_am_i_doing ); - - - -/****************************** -* Person-related calls * -******************************/ - -/* - * Create a new person. Returns 0 if any error occured. - */ -extern void -output_create_person (const String name, - const String passwd ); - -extern void -output_get_person_stat (Pers_no person); - -extern void -output_get_created_texts(Pers_no pers_no, - Local_text_no first, - u_long len ); - -extern void -output_get_membership (Pers_no person, - u_short first, - u_short no_of_confs, - Bool want_read_texts ); - -extern void -output_set_priv_bits (Pers_no person, - Priv_bits privileges ); - - -extern void -output_set_passwd (Pers_no person, - const String old_pwd, - const String new_pwd ); - -extern void -output_query_read_texts (Pers_no pers_no, - Conf_no conf_no); - - - -/**************************************** -* Conference-related calls * -****************************************/ - - -extern void -output_create_conf (const String name, - Conf_type type ); - - -extern void -output_delete_conf (Conf_no conf ); - - -extern void -output_lookup_name (const String name); - - - -extern void -output_get_conf_stat (Conf_no conf_no); - - -extern void -output_get_members (Conf_no conf, - u_short first, - u_short no_of_members); - -extern void -output_add_member (Conf_no conf_no, - Pers_no pers_no, - u_char priority, - u_short where ); - - -extern void -output_sub_member (Conf_no conf_no, - Pers_no pers_no ); - - -extern void -output_set_unread (Conf_no conf_no, - Text_no no_of_unread); - -extern void -output_set_presentation (Conf_no conf_no, - Text_no text_no ); - -extern void -output_set_etc_motd (Conf_no conf_no, - Text_no text_no ); - - -extern void -output_set_supervisor (Conf_no conf_no, - Conf_no admin ); - -extern void -output_set_permitted_submitters (Conf_no conf_no, - Conf_no perm_sub ); - -extern void -output_set_super_conf (Conf_no conf_no, - Conf_no super_conf ); - -extern void -output_set_conf_type (Conf_no conf_no, - Conf_type type ); - -extern void -output_set_garb_nice (Conf_no conf_no, - Garb_nice nice ); - - - -/******************************** -* Calls to handle marks * -********************************/ - - -extern void -output_get_marks (void); - - - -extern void -output_mark_text (Text_no text, - u_char mark_type ); - - - - -/******************************* -* Calls to handle texts * -*******************************/ - - -extern void -output_get_text (Text_no text, - String_size start_char, - String_size end_char); - - -extern void -output_get_text_stat (Text_no text); - -extern void -output_mark_as_read (Conf_no conference, - int no_of_texts, - const Local_text_no * text_arr ); - - -extern void -output_create_text (const String message, - u_short no_of_misc, - const Misc_info * misc ); - -extern void -output_create_anonymous_text (const String message, - u_short no_of_misc, - const Misc_info * misc ); - -extern void -output_delete_text( Text_no text_no ); - - - -extern void -output_add_recipient (Text_no text_no, - Conf_no conf_no, - Info_type type ); - -extern void -output_sub_recipient (Text_no text_no, - Conf_no conf_no ); - - -extern void -output_add_comment (Text_no comment, - Text_no comment_to ); - - -extern void -output_sub_comment (Text_no comment, - Text_no comment_to ); - - -extern void -output_add_footnote (Text_no footnote, - Text_no footnote_to ); - - -extern void -output_sub_footnote (Text_no footnote, - Text_no footnote_to ); - -extern void -output_get_map (Conf_no conf_no, - Local_text_no first_local_no, - Local_text_no no_of_texts); - - -extern void -output_get_time ( void ); - -extern void -output_who_is_on ( void ); - -extern void -output_get_info ( void ); - - -extern void -output_set_motd_of_lyskom (Text_no motd); - -extern void -output_enable (u_char ena_level); - -extern void -output_sync (void); - -extern void -output_shutdown (int exit_val); - -extern void -output_broadcast (const String message); - -extern void -output_send_message (Pers_no recipient, - const String message); - -void -output_get_unread_confs (Pers_no pers_no); - -#endif /* _OUTPUT_H_ALREADY_INCLUDED__ */ diff --git a/src/libraries/libclient/parse.c b/src/libraries/libclient/parse.c deleted file mode 100644 index 92b306fc43b80ad0663b3cf84a938b1c2c0ba6fc..0000000000000000000000000000000000000000 --- a/src/libraries/libclient/parse.c +++ /dev/null @@ -1,1052 +0,0 @@ -/* - * $Id: parse.c,v 1.1 1993/10/06 12:10:35 linus Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* - * parse.c - receive objects from an isc connection. - * - * Written by ceder 1990-07-13 - */ - -static char *rcsid = "$Id: parse.c,v 1.1 1993/10/06 12:10:35 linus Exp $"; - -/* - * KNOWN BUGS: Does not read in the array when returning KOM_SERVER_NO_MEM. - * Thus the client will be out of sync after that error. - * SOLUTION: Use skip_token from parse-async.c (not yet written). - */ -/* Error checking is poor. */ - -#include <stdio.h> -#include <ctype.h> -#include <sys/types.h> -#include <sys/file.h> -#ifdef HAVE_STDLIB_H -#include <stdlib.h> -#endif -/* #include <time.h> included from kom-types.h */ - -#include <kom-types.h> -#include <kom-errno.h> -#include <services.h> - -#include "client-malloc.h" -#include "parse.h" -#include "async.h" - - -#define REALLOC(ptr, size) (((ptr) == NULL) ? \ - isc_malloc (size) \ - : isc_realloc ((ptr), (size))) - - -/* +++ Should have some error checking here. */ - -u_long -parse_long(FILE *fp) -{ - u_long res=0; - - fscanf(fp, " %lu", &res); - return res; -} - - -void -skipwhite(FILE *fp) -{ - int c; - - while ( isspace(c = getc(fp)) ) - ; - - ungetc(c, fp); -} - - -Success -parse_person (FILE *fp, - Person *person) -{ - if ( parse_string(fp, &person->username) != OK - || parse_priv_bits (fp, &person->privileges) != OK - || parse_personal_flags (fp, &person->flags) != OK ) - { - return FAILURE; - } - - parse_time(fp, &person -> last_login); - - person -> user_area = parse_long(fp); - person -> total_time_present = parse_long(fp); - person -> sessions = parse_long(fp); - person -> created_lines = parse_long(fp); - person -> created_bytes = parse_long(fp); - person -> read_texts = parse_long(fp); - person -> no_of_text_fetches = parse_long(fp); - person -> created_persons = parse_long(fp); - person -> created_confs = parse_long(fp); - person -> first_created_text = parse_long (fp); - person -> no_of_created_texts = parse_long (fp); - person -> no_of_marks = parse_long (fp); - person -> no_of_confs = parse_long (fp); - - return OK; -} - -Success -parse_membership(FILE *fp, - Membership *mship) -{ - int i; - - parse_time(fp, &mship->last_time_read); - - mship->conf_no = parse_long(fp); - mship->priority = parse_long(fp); - mship->last_text_read = parse_long(fp); - mship->no_of_read = parse_long(fp); - - if ( mship->no_of_read > 0) - { - skipwhite(fp); - switch(getc(fp)) - { - case '{': - mship->read_texts = REALLOC(mship->read_texts, - (mship->no_of_read - * sizeof(Local_text_no))); - - if ( mship->read_texts == NULL ) - { - kom_errno = KOM_OUT_OF_MEMORY; - return FAILURE; - } - - for ( i = 0; i < mship->no_of_read; i++) - mship->read_texts[ i ] = parse_long(fp); - - skipwhite(fp); - if ( getc(fp) != '}' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - break; - - case '*': - isc_free(mship->read_texts); - mship->read_texts = NULL; - break; - - default: - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - } - else - { - skipwhite(fp); - if ( getc(fp) != '*' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - - isc_free(mship->read_texts); - mship->read_texts = NULL; - } - - return OK; -} - - -extern Success -parse_membership_list(FILE *fp, - Membership_list *result) -{ - int i; - - /* First free all the read_texts. */ - - if ( result->confs != NULL ) - { - for ( i = 0; i < result->no_of_confs; i++) - isc_free(result->confs[ i ].read_texts); - } - - result->no_of_confs = parse_long(fp); - - if ( result->no_of_confs > 0 ) - { - skipwhite(fp); - switch(getc(fp)) - { - case '{': - result->confs = REALLOC(result->confs, - (result->no_of_confs - * sizeof(Membership))); - if ( result->confs == NULL ) - { - kom_errno = KOM_OUT_OF_MEMORY; - return FAILURE; - } - - for ( i = 0; i < result->no_of_confs; i++) - { - result->confs[ i ] = EMPTY_MEMBERSHIP; - if ( parse_membership(fp, &result->confs[i]) != OK ) - return FAILURE; - } - - skipwhite(fp); - if ( getc(fp) != '}' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - - break; - case '*': - if ( result->confs != NULL ) - { - isc_free(result->confs); - result->confs = NULL; - } - break; - default: - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - } - else - { - skipwhite(fp); - if ( getc(fp) != '*' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - if ( result->confs != NULL ) - { - isc_free(result->confs); - result->confs = NULL; - } - } - return OK; -} - - -extern Success -parse_conf_list(FILE *fp, - Conf_list *result) -{ - int i; - - result->no_of_confs = parse_long(fp); - if ( result->no_of_confs > 0 ) - { - skipwhite(fp); - switch(getc(fp)) - { - case '{': - result->confs = REALLOC(result->confs, - (result->no_of_confs - * sizeof(Micro_conf))); - if ( result->confs == NULL ) - { - kom_errno = KOM_OUT_OF_MEMORY; - return FAILURE; - } - - for ( i = 0; i < result->no_of_confs; i++) - result->confs[ i ].conf_no = parse_long(fp); - - skipwhite(fp); - if ( getc(fp) != '}' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - - break; - case '*': - if ( result->confs != NULL ) - { - isc_free(result->confs); - result->confs = NULL; - } - break; - default: - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - } - else - { - skipwhite(fp); - if ( getc(fp) != '*' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - if ( result->confs != NULL ) - { - isc_free(result->confs); - result->confs = NULL; - } - } - - if ( result->no_of_confs > 0 ) - { - skipwhite(fp); - switch(getc(fp)) - { - case '{': - if ( result->confs == NULL ) - { /* Always both conf_no and conf_type, - nicht wahr? */ - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - - for ( i = 0; i < result->no_of_confs; i++) - if ( parse_conf_type(fp, &result->confs[i].type) != OK ) - { - return FAILURE; - } - - skipwhite(fp); - if ( getc(fp) != '}' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - - break; - case '*': - if ( result->confs != NULL ) - { - isc_free(result->confs); - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - break; - default: - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - } - else - { - skipwhite(fp); - if ( getc(fp) != '*' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - if ( result->confs != NULL ) - { - isc_free(result->confs); - result->confs = NULL; - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - } - return OK; -} - -extern Success -parse_conference(FILE *fp, - Conference *result) -{ - if ( parse_string(fp, &result->name) != OK - || parse_conf_type(fp, &result->type) != OK) - { - return FAILURE; - } - - parse_time (fp, &result -> creation_time); - parse_time (fp, &result -> last_written ); - - result -> creator = parse_long (fp); - result -> presentation = parse_long (fp); - result -> supervisor = parse_long (fp); - result -> permitted_submitters = parse_long (fp); - result -> super_conf = parse_long (fp); - result -> msg_of_day = parse_long (fp); - result -> nice = parse_long (fp); - result -> no_of_members = parse_long (fp); - result -> first_local_no = parse_long (fp); - result -> no_of_texts = parse_long (fp); - - return OK; -} - -extern Success -parse_mark_list(FILE *fp, - Mark_list *result) -{ - int i; - - result->no_of_marks = parse_long(fp); - - if ( result->no_of_marks > 0 ) - { - skipwhite(fp); - switch(getc(fp)) - { - case '{': - result->marks = REALLOC(result->marks, - (result->no_of_marks - * sizeof(Mark))); - - if ( result->marks == NULL ) - { - kom_errno = KOM_OUT_OF_MEMORY; - return FAILURE; - } - - for ( i = 0; i < result->no_of_marks; i++) - if ( parse_mark(fp, &result->marks[ i ] ) != OK ) - { - return FAILURE; - } - - skipwhite(fp); - if ( getc(fp) != '}' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - - break; - - case '*': - if ( result->marks != NULL ) - { - isc_free(result->marks); - result->marks = NULL; - } - break; - - default: - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - } - else - { - skipwhite(fp); - if ( getc(fp) != '*' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - if ( result->marks != NULL ) - { - isc_free(result->marks); - result->marks = NULL; - } - } - return OK; -} - - -extern Success -parse_text_stat(FILE *fp, - Text_stat *result) -{ - int i; - - parse_time(fp, &result->creation_time); - - result->author = parse_long(fp); - result->no_of_lines = parse_long(fp); - result->no_of_chars = parse_long(fp); - result->no_of_marks = parse_long(fp); - result->no_of_misc = parse_long(fp); - - if ( result->no_of_misc > 0 ) - { - skipwhite(fp); - switch(getc(fp)) - { - case '{': - result->misc_items = REALLOC(result->misc_items, - (result->no_of_misc - * sizeof(Misc_info))); - - if ( result->misc_items == NULL ) - { - kom_errno = KOM_OUT_OF_MEMORY; - return FAILURE; - } - - for ( i = 0; i < result->no_of_misc; i++) - if ( parse_misc_info(fp, &result->misc_items[ i ]) != OK ) - { - return FAILURE; - } - - skipwhite(fp); - if ( getc(fp) != '}' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - - break; - - case '*': - if ( result->misc_items != NULL ) - { - isc_free(result->misc_items); - result->misc_items = NULL; - } - break; - - default: - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - } - else - { - skipwhite(fp); - if ( getc(fp) != '*' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - if ( result->misc_items != NULL ) - { - isc_free(result->misc_items); - result->misc_items = NULL; - } - } - return OK; -} - - -extern Success -parse_text_list(FILE *fp, - Text_list *result) -{ - int i; - - result->first_local_no = parse_long(fp); - result->no_of_texts = parse_long(fp); - - if ( result->no_of_texts > 0 ) - { - skipwhite(fp); - switch(getc(fp)) - { - case '{': - result->texts = REALLOC(result->texts, - (result->no_of_texts - * sizeof(Text_no))); - - if ( result->texts == NULL ) - { - kom_errno = KOM_OUT_OF_MEMORY; - return FAILURE; - } - - for ( i = 0; i < result->no_of_texts; i++) - result->texts[ i ] = parse_long(fp); - - skipwhite(fp); - if ( getc(fp) != '}' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - - break; - - case '*': - if ( result->texts != NULL ) - { - isc_free(result->texts); - result->texts = NULL; - } - break; - - default: - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - } - else - { - skipwhite(fp); - if ( getc(fp) != '*' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - if ( result->texts != NULL ) - { - isc_free(result->texts); - result->texts = NULL; - } - } - return OK; -} - - -extern Success -parse_info(FILE *fp, - Info *result) -{ - result->version = parse_long(fp); - result->conf_pres_conf = parse_long(fp); - result->pers_pres_conf = parse_long(fp); - result->motd_conf = parse_long(fp); - result->kom_news_conf = parse_long(fp); - result->motd_of_lyskom = parse_long(fp); - return OK; -} - - -extern Success -parse_string(FILE *fp, - String *result) -{ - String_size i; - int c; - - result->len = parse_long(fp); - - if ( getc(fp) != 'H' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - - result->string = REALLOC(result->string, result->len); - - if ( result->string == NULL ) - { - kom_errno = KOM_OUT_OF_MEMORY; - return FAILURE; - } - - for ( i = 0; i < result->len; i++ ) - { - if ( (c=getc(fp)) == EOF ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - result->string[ i ] = c; - } - - - return OK; -} - - -extern Success -parse_member_list(FILE *fp, - Member_list *result) -{ - int i; - - result->no_of_members = parse_long(fp); - if ( result->no_of_members > 0 ) - { - skipwhite(fp); - switch(getc(fp)) - { - case '{': - result->members = REALLOC(result->members, - (result->no_of_members - * sizeof(Member))); - - if ( result->members == NULL ) - { - kom_errno = KOM_OUT_OF_MEMORY; - return FAILURE; - } - - for ( i = 0; i < result->no_of_members; i++) - if ( parse_member(fp, &result->members[ i ]) != OK ) - { - return FAILURE; - } - - - skipwhite(fp); - if ( getc(fp) != '}' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - - break; - - case '*': - if ( result->members != NULL ) - { - isc_free(result->members); - result->members = NULL; - } - break; - - default: - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - } - else - { - skipwhite(fp); - if ( getc(fp) != '*' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - if ( result->members != NULL ) - { - isc_free(result->members); - result->members = NULL; - } - } - return OK; -} - - -extern Success -parse_member(FILE *fp, - Member *result) -{ - result->member = parse_long(fp); - return OK; -} - -extern Success -parse_mark(FILE *fp, - Mark *result) -{ - result->text_no = parse_long(fp); - result->mark_type = parse_long(fp); - return OK; -} - -extern Success -parse_misc_info(FILE *fp, - Misc_info *result) -{ - result->type = parse_long(fp); - - switch(result->type) - { - case recpt: - result->datum.recipient = parse_long(fp); - break; - - case cc_recpt: - result->datum.cc_recipient = parse_long(fp); - break; - - case loc_no: - result->datum.local_no = parse_long(fp); - break; - - case rec_time: - parse_time(fp, &result->datum.received_at); - break; - - case comm_to: - result->datum.comment_to = parse_long(fp); - break; - - case comm_in: - result->datum.commented_in = parse_long(fp); - break; - - case footn_to: - result->datum.footnote_to = parse_long(fp); - break; - - case footn_in: - result->datum.footnoted_in = parse_long(fp); - break; - - case sent_by: - result->datum.sender = parse_long(fp); - break; - - case sent_at: - parse_time(fp, &result->datum.sent_at); - break; - - default: - fprintf(stderr, "parse_misc_info: Illegal misc\n"); - fflush(stdout); - fflush(stderr); - abort(); - } - return OK; -} - -extern Success -parse_priv_bits(FILE *fp, - Priv_bits *result) -{ - skipwhite(fp); - - result->wheel = getc(fp) != '0'; - result->admin = getc(fp) != '0'; - result->statistic = getc(fp) != '0'; - result->create_pers = getc(fp) != '0'; - result->create_conf = getc(fp) != '0'; - result->change_name = getc(fp) != '0'; - result->extern_gw = getc(fp) != '0'; - result->flg8 = getc(fp) != '0'; - result->flg9 = getc(fp) != '0'; - result->flg10 = getc(fp) != '0'; - result->flg11 = getc(fp) != '0'; - result->flg12 = getc(fp) != '0'; - result->flg13 = getc(fp) != '0'; - result->flg14 = getc(fp) != '0'; - result->flg15 = getc(fp) != '0'; - result->flg16 = getc(fp) != '0'; - - return OK; -} - - -extern Success -parse_personal_flags(FILE *fp, - Personal_flags *result) -{ - skipwhite(fp); - - result->unread_is_secret = getc(fp) != '0'; - result->flg2 = getc(fp) != '0'; - result->flg3 = getc(fp) != '0'; - result->flg4 = getc(fp) != '0'; - result->flg5 = getc(fp) != '0'; - result->flg6 = getc(fp) != '0'; - result->flg7 = getc(fp) != '0'; - result->flg8 = getc(fp) != '0'; - - return OK; -} - -extern Success -parse_conf_type(FILE *fp, - Conf_type *result) -{ - skipwhite(fp); - - result->rd_prot = getc(fp) != '0'; - result->original = getc(fp) != '0'; - result->secret = getc(fp) != '0'; - result->letter_box = getc(fp) != '0'; - - return OK; -} - - -extern Success -parse_who_info(FILE *fp, - Who_info *result) -{ - result->person = parse_long(fp); - result->working_conference = parse_long(fp); - result->session_no = parse_long(fp); - - if ( parse_string(fp, &result->what_am_i_doing) != OK - || parse_string(fp, &result->username) != OK ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - - return OK; -} - - -extern Success -parse_who_info_list(FILE *fp, - Who_info_list *result) -{ - int i; - - skipwhite(fp); - - result->no_of_persons = parse_long(fp); - - if ( result->no_of_persons > 0 ) - { - skipwhite(fp); - switch(getc(fp)) - { - case '{': - result->info = REALLOC(result->info, - (result->no_of_persons - * sizeof(Who_info))); - - if ( result->info == NULL ) - { - kom_errno = KOM_OUT_OF_MEMORY; - return FAILURE; - } - - for ( i = 0; i < result->no_of_persons; i++) - { - result->info[ i ] = EMPTY_WHO_INFO; - if ( parse_who_info(fp, &result->info[ i ]) != OK ) - return FAILURE; - } - - - skipwhite(fp); - if ( getc(fp) != '}' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - - break; - - case '*': - if ( result->info != NULL ) - { - isc_free(result->info); - result->info = NULL; - } - break; - - default: - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - } - else - { - skipwhite(fp); - if ( getc(fp) != '*' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - if ( result->info != NULL ) - { - isc_free(result->info); - result->info = NULL; - } - } - return OK; -} - -extern Success -parse_conf_no_list(FILE *fp, - Conf_no_list *result) -{ - int i; - - skipwhite(fp); - - result->no_of_confs = parse_long(fp); - - if ( result->no_of_confs > 0 ) - { - skipwhite(fp); - switch(getc(fp)) - { - case '{': - result->conf_nos = REALLOC(result->conf_nos, - (result->no_of_confs - * sizeof(Conf_no))); - - if ( result->conf_nos == NULL ) - { - kom_errno = KOM_OUT_OF_MEMORY; - return FAILURE; - } - - for ( i = 0; i < result->no_of_confs; i++) - { - result->conf_nos[ i ] = parse_long(fp); - } - - skipwhite(fp); - if ( getc(fp) != '}' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - - break; - - case '*': - if ( result->conf_nos != NULL ) - { - isc_free(result->conf_nos); - result->conf_nos = NULL; - } - break; - - default: - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - } - else - { - skipwhite(fp); - if ( getc(fp) != '*' ) - { - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - if ( result->conf_nos != NULL ) - { - isc_free(result->conf_nos); - result->conf_nos = NULL; - } - } - return OK; -} - -extern Success -parse_time(FILE *fp, struct tm *timeptr) -{ - timeptr->tm_sec = parse_long(fp); - timeptr->tm_min = parse_long(fp); - timeptr->tm_hour = parse_long(fp); - timeptr->tm_mday = parse_long(fp); - timeptr->tm_mon = parse_long(fp); - timeptr->tm_year = parse_long(fp); - timeptr->tm_wday = parse_long(fp); - timeptr->tm_yday = parse_long(fp); - timeptr->tm_isdst = parse_long(fp); - - return OK; -} diff --git a/src/libraries/libclient/parse.h b/src/libraries/libclient/parse.h deleted file mode 100644 index 8773229e69c40a7af3a09c445ef5c44d78a7c3d8..0000000000000000000000000000000000000000 --- a/src/libraries/libclient/parse.h +++ /dev/null @@ -1,131 +0,0 @@ -/* - * $Id: parse.h,v 1.1 1993/10/06 12:10:41 linus Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* - * $Id: parse.h,v 1.1 1993/10/06 12:10:41 linus Exp $ - * - * parse.h - parse objects from an isc connection. - * - * Written by ceder 1990-07-13 - */ -/* BUGS: Return values from realloc are not checked. */ -/* %lu ain't always correct. */ - -extern u_long -parse_long(FILE *fp); - -extern Success -parse_time(FILE *fp, struct tm *timeptr); - -extern void -skipwhite(FILE *fp); - - -extern Success -parse_person(FILE *fp, - Person *person); - - -extern Success -parse_membership(FILE *fp, - Membership *mship); - - -extern Success -parse_membership_list(FILE *fp, - Membership_list *result); - - -extern Success -parse_conf_list(FILE *fp, - Conf_list *result); - - -extern Success -parse_conference(FILE *fp, - Conference *result); - - -extern Success -parse_mark_list(FILE *fp, - Mark_list *result); - -extern Success -parse_text_stat(FILE *fp, - Text_stat *result); - -extern Success -parse_text_list(FILE *fp, - Text_list *result); - -extern Success -parse_info(FILE *fp, - Info *result); - -extern Success -parse_string(FILE *fp, - String *result); - - -extern Success -parse_member_list(FILE *fp, - Member_list *result); - -extern Success -parse_member(FILE *fp, - Member *result); - -extern Success -parse_mark(FILE *fp, - Mark *result); - - -extern Success -parse_misc_info(FILE *fp, - Misc_info *result); - - -extern Success -parse_priv_bits(FILE *fp, - Priv_bits *result); - -extern Success -parse_personal_flags(FILE *fp, - Personal_flags *result); - -extern Success -parse_conf_type(FILE *fp, - Conf_type *result); - -extern Success -parse_who_info_list(FILE *fp, - Who_info_list *result); - -extern Success -parse_conf_no_list(FILE *fp, - Conf_no_list *result); - -extern Success -parse_who_info(FILE *fp, - Who_info *result); diff --git a/src/libraries/libclient/send.c b/src/libraries/libclient/send.c deleted file mode 100644 index b648ab89bdaf4a56c0f51c5b895ed8d6ca43c4ea..0000000000000000000000000000000000000000 --- a/src/libraries/libclient/send.c +++ /dev/null @@ -1,168 +0,0 @@ -/* - * $Id: send.c,v 1.1 1993/10/06 12:10:46 linus Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* - * send.c - write objects throug an isc connection. - * - * Written by ceder 1990-07-13 - */ - -static char *rcsid = "$Id: send.c,v 1.1 1993/10/06 12:10:46 linus Exp $"; - -#include <stdio.h> -#ifdef HAVE_STDLIB_H -#include <stdlib.h> -#endif -#include <sys/types.h> -#include <sys/file.h> -#include <unistd.h> - -#include <kom-types.h> - -#include "send.h" - -extern void -output_string(FILE *fp, - String str) -{ - fprintf(fp, " %luH", (u_long)str.len); - fflush(fp); - write(fileno(fp), str.string, str.len); -} - - -extern void -output_priv_bits(FILE *fp, - Priv_bits bits) -{ - putc(' ', fp); - putc(bits.wheel + '0', fp); - putc(bits.admin + '0', fp); - putc(bits.statistic + '0', fp); - putc(bits.create_pers + '0', fp); - putc(bits.create_conf + '0', fp); - putc(bits.change_name + '0', fp); - putc(bits.extern_gw + '0', fp); - putc(bits.flg8 + '0', fp); - putc(bits.flg9 + '0', fp); - putc(bits.flg10 + '0', fp); - putc(bits.flg11 + '0', fp); - putc(bits.flg12 + '0', fp); - putc(bits.flg13 + '0', fp); - putc(bits.flg14 + '0', fp); - putc(bits.flg15 + '0', fp); - putc(bits.flg16 + '0', fp); -} - - -extern void -output_personal_flags(FILE *fp, - Personal_flags flags) -{ - putc(' ', fp); - putc(flags.unread_is_secret + '0', fp); - putc(flags.flg2 + '0', fp); - putc(flags.flg3 + '0', fp); - putc(flags.flg4 + '0', fp); - putc(flags.flg5 + '0', fp); - putc(flags.flg6 + '0', fp); - putc(flags.flg7 + '0', fp); - putc(flags.flg8 + '0', fp); -} - -extern void -output_conf_type(FILE *fp, - Conf_type type) -{ - putc(' ', fp); - putc(type.rd_prot + '0', fp); - putc(type.original + '0', fp); - putc(type.secret + '0', fp); - putc(type.letter_box + '0', fp); -} - - - -extern void -output_misc_info(FILE *fp, - Misc_info misc) -{ - fprintf(fp, " %lu", (u_long)misc.type); - - switch(misc.type) - { - case recpt: - fprintf(fp, " %lu", (u_long)misc.datum.recipient); - break; - - case cc_recpt: - fprintf(fp, " %lu", (u_long)misc.datum.cc_recipient); - break; - - case loc_no: - fprintf(fp, " %lu", (u_long)misc.datum.local_no); - break; - - case rec_time: - fprintf(stderr, "Internal error in LysKOM-klient: output_misc_info(): can't send a rec_time.\n"); - abort(); - break; - - case comm_to: - fprintf(fp, " %lu", (u_long)misc.datum.comment_to); - break; - - case comm_in: - fprintf(fp, " %lu", (u_long)misc.datum.commented_in); - break; - - case footn_to: - fprintf(fp, " %lu", (u_long)misc.datum.footnote_to); - break; - - case footn_in: - fprintf(fp, " %lu", (u_long)misc.datum.footnoted_in); - break; - - case sent_by: - fprintf(fp, " %lu", (u_long)misc.datum.sender); - break; - - case sent_at: - fprintf(stderr, "Internal error in LysKOM-klient: output_misc_info(): can't send a sent_at.\n"); - abort(); - break; - - default: -#ifdef CLIENT - fprintf(stderr, "output_misc_info: Illegal misc\n"); - fflush(stdout); - fflush(stderr); - abort(); -#else - restart_kom("output_misc_info: Illegal misc\n"); -#endif - } -} - diff --git a/src/libraries/libclient/send.h b/src/libraries/libclient/send.h deleted file mode 100644 index 3dfca551838c8bab39fad47c9d147709c8b88689..0000000000000000000000000000000000000000 --- a/src/libraries/libclient/send.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * $Id: send.h,v 1.1 1993/10/06 12:10:51 linus Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* - * $Id: send.h,v 1.1 1993/10/06 12:10:51 linus Exp $ - * - * output.h - write objects throug an isc connection. - * - * Written by ceder 1990-07-13 - */ - - -extern void -output_string(FILE *fp, - String str); - -extern void -output_priv_bits(FILE *fp, - Priv_bits bits); - -extern void -output_personal_flags(FILE *fp, - Personal_flags flags); -extern void -output_conf_type(FILE *fp, - Conf_type type); - - -extern void -output_misc_info(FILE *fp, - Misc_info misc); diff --git a/src/libraries/libclient/services.c b/src/libraries/libclient/services.c deleted file mode 100644 index 9f9a8e19bf4263dc71499d778666c0f6fc46bc54..0000000000000000000000000000000000000000 --- a/src/libraries/libclient/services.c +++ /dev/null @@ -1,627 +0,0 @@ -/* - * $Id: services.c,v 1.1 1993/10/06 12:10:55 linus Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* - * services.c -- All the services the LysKOM server makes available - * for clients. - * - * Created by ceder 1990-07-17 - */ - -static char *rcsid = "$Id: services.c,v 1.1 1993/10/06 12:10:55 linus Exp $"; - -#ifdef HAVE_STRING_H -#include <string.h> -#else -#include <strings.h> -#endif -#include <stdio.h> -#ifdef HAVE_STDLIB_H -#include <stdlib.h> -#endif -#include <ctype.h> - -#include <kom-types.h> -#include <config.h> -#include <services.h> -#include <kom-errno.h> - -#include "client.h" -#include "parse.h" -#include "output.h" -#include "services.h" -#include "input.h" - -ISC *kom_server = NULL; -#define KS kom_server - - -free_function isc_free = NULL; -malloc_function isc_malloc = NULL; -realloc_function isc_realloc = NULL; - -/* - * Session control - */ -extern Success -kom_open_connection (const char * server ) -{ - char *user; - char reply[7]; - int i, c; - - user = cuserid(NULL); - if ( user == NULL ) - { - fprintf(stderr, "Can't get user id with cuserid().\n"); - fflush(stdout); - fflush(stderr); - abort(); - } - - if ( (kom_server = isc_connect(server, 4894)) == NULL ) - { - kom_errno = KOM_NO_CONNECT; - return FAILURE; - } - - fprintf(KS->out, "A%dH%s\n", strlen(user), user); - fflush(KS->out); - - reply[ 6 ] = '\0'; - for ( i = 0; i < 6; i++) - { - if ( !isascii(c = getc(KS->in))) - { - isc_disconnect(KS); - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - reply[ i ] = c; - } - - if ( strcmp(reply, "LysKOM") != 0 ) - { - isc_disconnect(KS); - kom_errno = KOM_SERVER_IS_CRAZY; - return FAILURE; - } - return OK; -} - - -/* - * Set the functions to use for storage management. These must - * be call compatible with the normal functions malloc(), - * realloc() and free(). - */ -extern void -kom_set_storage_management (malloc_function new_malloc, - realloc_function new_realloc, - free_function new_free) -{ - isc_malloc = new_malloc; - isc_realloc = new_realloc; - isc_free = new_free; -} - - -extern Success -kom_login_old (Pers_no person, - const String passwd ) -{ - output_login_old(person, passwd); - return input_header(); -} - -extern Success -kom_login (Pers_no person, - const String passwd, - Bool visible) -{ - output_login(person, passwd, visible); - return input_header(); -} - - -extern Success -kom_logout (void) /* can never fail */ -{ - output_logout( ); - return input_header( ); -} - - -extern Success -kom_pepsi (Conf_no conference ) -{ - output_pepsi( conference ); - return input_header( ); -} - - - -extern Success -kom_change_name (Conf_no conf_no, - const String new_name) -{ - output_change_name( conf_no, new_name ); - return input_header( ); -} - -extern Success -kom_change_what_i_am_doing (const String what_am_i_doing ) -{ - output_change_what_i_am_doing( what_am_i_doing ); - return input_header(); -} - - - -/****************************** -* Person-related calls * -******************************/ - -/* - * Create a new person. Returns 0 if any error occured. - */ -extern Pers_no -kom_create_person (const String name, - const String passwd ) -{ - output_create_person( name, passwd ); - if ( input_header( ) != OK ) - return 0; - - return parse_long( KS->in ); -} - -extern Success -kom_get_person_stat (Pers_no person, - Person * result ) -{ - output_get_person_stat( person ); - return input_get_person_stat( result ); -} - -extern Success -kom_get_created_texts(Pers_no pers_no, - Local_text_no first, - u_long len, - Text_list * result) -{ - output_get_created_texts( pers_no, first, len ); - return input_get_created_texts( result ); -} - - -extern Success -kom_get_membership (Pers_no person, - u_short first, - u_short no_of_confs, - Bool want_read_texts, - Membership_list * memberships ) -{ - output_get_membership( person, first, no_of_confs, want_read_texts); - return input_get_membership( memberships ); -} - -extern Success -kom_set_priv_bits (Pers_no person, - Priv_bits privileges ) -{ - output_set_priv_bits( person, privileges ); - return input_header( ); -} - - -extern Success -kom_set_passwd (Pers_no person, - const String old_pwd, - const String new_pwd ) -{ - output_set_passwd( person, old_pwd, new_pwd ); - return input_header( ); -} - - -extern Success -kom_query_read_texts (Pers_no pers_no, - Conf_no conf_no, - Membership * result ) -{ - output_query_read_texts( pers_no, conf_no ); - return input_query_read_texts( result ); -} - - - -/**************************************** -* Conference-related calls * -****************************************/ - - -extern Conf_no -kom_create_conf (const String name, - Conf_type type ) -{ - output_create_conf( name, type ); - if ( input_header( ) != OK ) - return 0; - - return parse_long( KS->in ); -} - - -extern Success -kom_delete_conf (Conf_no conf ) -{ - output_delete_conf( conf ); - return input_header( ); -} - - -extern Success -kom_lookup_name (const String name, - Conf_list *result) -{ - output_lookup_name( name ); - return input_lookup_name( result ); -} - - - -extern Success -kom_get_conf_stat (Conf_no conf_no, - Conference * result ) -{ - output_get_conf_stat( conf_no ); - return input_get_conf_stat( result ); -} - -extern Success -kom_get_members (Conf_no conf, - u_short first, - u_short no_of_members, - Member_list * members ) -{ - output_get_members(conf, first, no_of_members); - return input_get_members( members ); -} - - -extern Success -kom_add_member (Conf_no conf_no, - Pers_no pers_no, - u_char priority, - u_short where ) -{ - output_add_member( conf_no, pers_no, priority, where ); - return input_header( ); -} - - -extern Success -kom_sub_member (Conf_no conf_no, - Pers_no pers_no ) -{ - output_sub_member( conf_no, pers_no ); - return input_header( ); -} - -extern Success -kom_set_unread (Conf_no conf_no, - Text_no no_of_unread) -{ - output_set_unread( conf_no, no_of_unread ); - return input_header( ); -} - -extern Success -kom_set_presentation (Conf_no conf_no, - Text_no text_no ) /* 0 to delete pres. */ -{ - output_set_presentation( conf_no, text_no ); - return input_header( ); -} - -extern Success -kom_set_etc_motd (Conf_no conf_no, - Text_no text_no ) -{ - output_set_etc_motd( conf_no, text_no ); - return input_header( ); -} - - -extern Success -kom_set_supervisor (Conf_no conf_no, - Conf_no admin ) -{ - output_set_supervisor( conf_no, admin ); - return input_header( ); -} - -extern Success -kom_set_permitted_submitters (Conf_no conf_no, - Conf_no perm_sub ) -{ - output_set_permitted_submitters( conf_no, perm_sub ); - return input_header( ); -} - -extern Success -kom_set_super_conf (Conf_no conf_no, - Conf_no super_conf ) -{ - output_set_super_conf( conf_no, super_conf ); - return input_header( ); -} - -extern Success -kom_set_conf_type (Conf_no conf_no, - Conf_type type ) -{ - output_set_conf_type( conf_no, type ); - return input_header( ); -} - -extern Success -kom_set_garb_nice (Conf_no conf_no, - Garb_nice nice ) -{ - output_set_garb_nice( conf_no, nice ); - return input_header( ); -} - - - -/******************************** -* Calls to handle marks * -********************************/ - - -extern Success -kom_get_marks (Mark_list *result ) -{ - output_get_marks( ); - return input_get_marks( result ); -} - - - -extern Success -kom_mark_text (Text_no text, - u_char mark_type ) -{ - output_mark_text( text, mark_type ); - return input_header( ); -} - - - - -/******************************* -* Calls to handle texts * -*******************************/ - - -extern Success -kom_get_text (Text_no text, - String_size start_char, - String_size end_char, - String *result) -{ - output_get_text( text, start_char, end_char ); - return input_get_text( result ); -} - - -extern Success -kom_get_text_stat (Text_no text, - Text_stat *result) -{ - output_get_text_stat( text ); - return input_get_text_stat( result ); -} - -extern Success -kom_mark_as_read (Conf_no conference, - int no_of_texts, - const Local_text_no * text_arr ) -{ - output_mark_as_read( conference, no_of_texts, text_arr ); - return input_header( ); -} - - -extern Text_no -kom_create_text (const String message, - u_short no_of_misc, - const Misc_info * misc ) -{ - output_create_text( message, no_of_misc, misc ); - return input_create_text( ); -} - -extern Text_no -kom_create_anonymous_text (const String message, - u_short no_of_misc, - const Misc_info * misc ) -{ - output_create_anonymous_text( message, no_of_misc, misc ); - return input_create_anonymous_text( ); -} - -extern Success -kom_delete_text( Text_no text_no ) -{ - output_delete_text( text_no ); - return input_header( ); -} - - - -extern Success -kom_add_recipient (Text_no text_no, - Conf_no conf_no, - Info_type type ) -{ - output_add_recipient( text_no, conf_no, type ); - return input_header( ); -} - -extern Success -kom_sub_recipient (Text_no text_no, - Conf_no conf_no ) -{ - output_sub_recipient( text_no, conf_no); - return input_header( ); -} - - -extern Success -kom_add_comment (Text_no comment, - Text_no comment_to ) -{ - output_add_comment( comment, comment_to ); - return input_header( ); -} - - -extern Success -kom_sub_comment (Text_no comment, - Text_no comment_to ) -{ - output_sub_comment( comment, comment_to ); - return input_header( ); -} - - -extern Success -kom_add_footnote (Text_no footnote, - Text_no footnote_to ) -{ - output_add_footnote( footnote, footnote_to ); - return input_header(); -} - - -extern Success -kom_sub_footnote (Text_no footnote, - Text_no parent ) -{ - output_sub_footnote( footnote, parent ); - return input_header(); -} - - -extern Success -kom_get_map (Conf_no conf_no, - Local_text_no first_local_no, - Local_text_no no_of_texts, - Text_list * result) -{ - output_get_map( conf_no, first_local_no, no_of_texts ); - return input_get_map( result ); -} - - -extern Success -kom_get_time ( struct tm * clock ) -{ - output_get_time( ); - return input_get_time( clock ); -} - -extern Success -kom_who_is_on( Who_info_list *result ) -{ - output_who_is_on( ); - return input_who_is_on( result ); -} - - -extern Success -kom_get_info (Info *result ) -{ - output_get_info( ); - return input_get_info( result ); -} - - -extern Success -kom_set_motd_of_lyskom (Text_no motd) -{ - output_set_motd_of_lyskom( motd ); - return input_header( ); -} - - -extern Success -kom_enable (u_char ena_level) -{ - output_enable( ena_level ); - return input_header( ); -} - - -extern Success -kom_sync (void) -{ - output_sync( ); - return input_header( ); -} - - -extern Success -kom_shutdown (int exit_val) -{ - output_shutdown( exit_val ); - return input_header( ); -} - - -extern Success -kom_broadcast (const String message) -{ - output_broadcast( message ); - return input_header( ); -} - -extern Success -kom_send_message (Pers_no recipient, - const String message) -{ - output_send_message( recipient, message ); - return input_header( ); -} - -extern Success -kom_get_unread_confs(Pers_no pers_no, - Conf_no_list *result) -{ - output_get_unread_confs( pers_no ); - return input_get_unread_confs( result ); -} diff --git a/src/libraries/libclient/services.h b/src/libraries/libclient/services.h deleted file mode 100644 index 73676196625346d3520a06a041150e0bc7862642..0000000000000000000000000000000000000000 --- a/src/libraries/libclient/services.h +++ /dev/null @@ -1,26 +0,0 @@ -/* - * $Id: services.h,v 1.1 1993/10/06 12:10:59 linus Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* $Id: services.h,v 1.1 1993/10/06 12:10:59 linus Exp $ */ -extern ISC *kom_server; diff --git a/src/libraries/libcommon/Makefile b/src/libraries/libcommon/Makefile deleted file mode 100644 index 87b5f898eff94de2b9b0985222876c151349d994..0000000000000000000000000000000000000000 --- a/src/libraries/libcommon/Makefile +++ /dev/null @@ -1,97 +0,0 @@ -# -# $Id: Makefile,v 0.12 1992/07/06 13:36:11 linus Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -include Topdir.make -SCRIPTDIR = $(TOPDIR)/scripts - -include $(SCRIPTDIR)/import.make - -TARGET = -DCLIENT - - -LIBOBJS = kom-errno.o misc-parser.o parser.o -INSTALL-HDRS = misc-parser.h parser.h -LIBRARIES = liblyskom-server$(PROFILE-LIB-SUFFIX).a \ - liblyskom-client$(PROFILE-LIB-SUFFIX).a - -all: $(LIBRARIES) - -client-dir: - $(MKDIR) client-dir - ln -s `echo $(LIBOBJS) $(INSTALL-HDRS) dependencies Topdir.make | \ - tr ' ' '\012' | sed 's/.o$$/.c/' | sed 's:^:\.\./:' ` client-dir/ - -server-dir: - $(MKDIR) server-dir - ln -s `echo $(LIBOBJS) $(INSTALL-HDRS) dependencies Topdir.make | \ - tr ' ' '\012' | sed 's/.o$$/.c/' | sed 's:^:\.\./:' ` server-dir/ - -.PHONY: liblyskom-server$(PROFILE-LIB-SUFFIX).a -liblyskom-server$(PROFILE-LIB-SUFFIX).a: server-dir - (cd server-dir;$(MAKE) $(EXPORTS) -f ../Makefile ../$@ TARGET=-DSERVER) - $(RANLIB) $@ - - -../liblyskom-server$(PROFILE-LIB-SUFFIX).a: $(LIBOBJS) - $(AR) $(ARFLAGS) $@ $? - -.PHONY: liblyskom-client$(PROFILE-LIB-SUFFIX).a -liblyskom-client$(PROFILE-LIB-SUFFIX).a: client-dir - (cd client-dir;$(MAKE) $(EXPORTS) -f ../Makefile ../$@ TARGET=-DCLIENT) - $(RANLIB) $@ - - -../liblyskom-client$(PROFILE-LIB-SUFFIX).a: $(LIBOBJS) - $(AR) $(ARFLAGS) $@ $? - - -clean: - $(RM) $(GENERIC-CLEAN) $(LIBRARIES) - -for i in client-dir server-dir; \ - do \ - [ -d $$i ] && { echo cleaning directory $$i ; \ - (cd $$i; $(RM) $(GENERIC-CLEAN)) } \ - done - -distclean: clean - $(RM) $(GENERIC-DIST-CLEAN) - $(RM) -r client-dir server-dir - -libraries: includes all - (cd $(LIBDIR); $(RM) $(LIBRARIES)) - cp $(LIBRARIES) $(LIBDIR) - (cd $(LIBDIR); $(TOUCHLIB) $(LIBRARIES)) - -include $(SCRIPTDIR)/install-includes.make - -binaries:; - -tags: - etags -t $(INCLUDEDIR)/*.h *.[hc] - -# Recreate the Makefile from Makefile - -include $(SCRIPTDIR)/Single-depend.make - -include dependencies diff --git a/src/libraries/libcommon/client-Makefile.in b/src/libraries/libcommon/client-Makefile.in deleted file mode 100644 index be64a59589d59644ebb479db8f239111db309d57..0000000000000000000000000000000000000000 --- a/src/libraries/libcommon/client-Makefile.in +++ /dev/null @@ -1,41 +0,0 @@ -AR = @AR@ -RANLIB = @RANLIB@ -srcdir = @srcdir@ -VPATH = @srcdir@ -CC = @CC@ -ansi -DEFS = @DEFS@ - -CFLAGS = -g -Wall ${OPTFLAGS} ${DEFS} \ - -I${srcdir}/../../include \ - -I${srcdir}/../libmisc - -../liblyskom-client.a: kom-errno.o misc-parser.o parser.o - $(AR) $(ARFLAGS) $@ $? - $(RANLIB) $@ - -# dependencies - -kom-errno.o : kom-errno.c \ - ../../include/config.h \ - ../../include/kom-errno.h \ - ../../include/m-config.h \ - ../../include/rcs.h - -misc-parser.o : misc-parser.c \ - misc-parser.h \ - ../../include/kom-types.h \ - ../../include/misc-types.h \ - ../../include/rcs.h \ - ../libmisc/s-collat-tabs.h \ - ../libmisc/s-string.h - -parser.o : parser.c \ - parser.h \ - ../../include/compiler.h \ - ../../include/misc-types.h \ - ../../include/rcs.h \ - ../libmisc/s-collat-tabs.h \ - ../libmisc/s-string.h \ - ../libmisc/zmalloc.h - - diff --git a/src/libraries/libcommon/dependencies b/src/libraries/libcommon/dependencies deleted file mode 100644 index dc0646a6b97eb0f0764249f99e0803fa8e63abcd..0000000000000000000000000000000000000000 --- a/src/libraries/libcommon/dependencies +++ /dev/null @@ -1,26 +0,0 @@ -kom-errno.o : kom-errno.c /users/ceder/lyskom/include/ansi/stdio.h \ - /users/ceder/lyskom/include/config.h \ - /users/ceder/lyskom/include/kom-errno.h \ - /users/ceder/lyskom/include/ansi/sys/types.h /usr/include/sys/types.h \ - /usr/gnu/lib/gcc-include/sys/stdtypes.h /usr/include/sys/stdtypes.h \ - /usr/include/sys/sysmacros.h -misc-parser.o : misc-parser.c misc-parser.h \ - /users/ceder/lyskom/include/kom-types.h \ - /users/ceder/lyskom/include/ansi/sys/types.h /usr/include/sys/types.h \ - /usr/gnu/lib/gcc-include/sys/stdtypes.h /usr/include/sys/stdtypes.h \ - /usr/include/sys/sysmacros.h /usr/gnu/lib/gcc-include/limits.h \ - /users/ceder/lyskom/include/ansi/time.h /usr/include/time.h \ - /users/ceder/lyskom/include/s-string.h \ - /users/ceder/lyskom/include/ansi/stdio.h \ - /users/ceder/lyskom/include/ansi/stddef.h \ - /users/ceder/lyskom/include/misc-types.h \ - /users/ceder/lyskom/include/s-collat-tabs.h -parser.o : parser.c /users/ceder/lyskom/include/ansi/stddef.h \ - /users/ceder/lyskom/include/ansi/sys/types.h /usr/include/sys/types.h \ - /usr/gnu/lib/gcc-include/sys/stdtypes.h /usr/include/sys/stdtypes.h \ - /usr/include/sys/sysmacros.h /users/ceder/lyskom/include/s-string.h \ - /usr/gnu/lib/gcc-include/limits.h /users/ceder/lyskom/include/ansi/stdio.h \ - /users/ceder/lyskom/include/misc-types.h \ - /users/ceder/lyskom/include/s-collat-tabs.h parser.h \ - /users/ceder/lyskom/include/zmalloc.h \ - /users/ceder/lyskom/include/compiler.h diff --git a/src/libraries/libisc-new/Makefile b/src/libraries/libisc-new/Makefile deleted file mode 100644 index 59cc0034f2c5b5f81012ec1ce3013376148616e6..0000000000000000000000000000000000000000 --- a/src/libraries/libisc-new/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -# -# $Id: Makefile,v 1.1 1992/04/15 22:41:37 ceder Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -include Topdir.make -SCRIPTDIR = $(TOPDIR)/scripts - -include $(SCRIPTDIR)/import.make - -# All directories that make should traverse to when doing clean etc. -# Note that client-support depends on libmisc. - -SUBDIRS = src - -all: includes libraries binaries - -include $(SCRIPTDIR)/sub-includes.make -include $(SCRIPTDIR)/sub-libraries.make -include $(SCRIPTDIR)/sub-clean.make -include $(SCRIPTDIR)/sub-depend.make -include $(SCRIPTDIR)/sub-install.make - -binaries:; diff --git a/src/libraries/libisc-new/demo/Makefile b/src/libraries/libisc-new/demo/Makefile deleted file mode 100644 index 8d7bd39b08dac187c22f5a3a0a88e75c9f7db5e7..0000000000000000000000000000000000000000 --- a/src/libraries/libisc-new/demo/Makefile +++ /dev/null @@ -1,19 +0,0 @@ -INCDIRS=-I$(HOME)/include -LIBDIRS=-L$(HOME)/lib -SOURCES=tcp.c udp.c -CFLAGS= -g $(LIBDIRS) $(INCDIRS) -CC=gcc - -tcp: tcp.c $(HOME)/include/isc.h $(HOME)/lib/libisc.a - gcc $(CFLAGS) -o tcp tcp.c -lisc -lansi - -udp: udp.c $(HOME)/include/isc.h $(HOME)/lib/libisc.a - gcc $(CFLAGS) -o udp udp.c -lisc -lansi - -clean: - rm -f *~ *.o a.out core tcp udp \#*\# - -depend: - gmkdep $(INCDIRS) $(SOURCES) - -# DO NOT DELETE THIS LINE -- mkdep uses it. diff --git a/src/libraries/libisc-new/man/Makefile b/src/libraries/libisc-new/man/Makefile deleted file mode 100644 index 15b12eff02a30102e80451d72053076511f1e890..0000000000000000000000000000000000000000 --- a/src/libraries/libisc-new/man/Makefile +++ /dev/null @@ -1,20 +0,0 @@ -# -# Makefile - for Manual pages -# -INSTROOT=/usr/local -MANROOT=$(INSTROOT)/man -MANSECT=man3 -MANDIR=$(MANROOT)/$(MANSECT) -# -FILES= isc.3x isc_initialize.3x isc_shutdown.3x isc_openfd.3x \ - isc_openfile.3x isc_opentcp.3x isc_close.3x isc_listentcp.3x \ - isc_unlisten.3x -# -install: - cp $(FILES) $(MANDIR) - -clean: - rm -f *~ \#*\# - -all: - @echo "Nothing done." diff --git a/src/libraries/libisc-new/src/Makefile b/src/libraries/libisc-new/src/Makefile deleted file mode 100644 index 5aaac806fb6e1920977bf5a0d61d51293a1355f4..0000000000000000000000000000000000000000 --- a/src/libraries/libisc-new/src/Makefile +++ /dev/null @@ -1,61 +0,0 @@ -# -# Makefile for libisc -# -# Copyright (c) 1992 Peter Eriksson and Per Cederqvist of the -# Lysator Academic Computer Association. -# -# -# -# -include Topdir.make -SCRIPTDIR = $(TOPDIR)/scripts - -include $(SCRIPTDIR)/import.make - - -SOURCES=isc_event.c isc_session.c isc_abort.c isc_alloc.c isc_master.c\ - isc_output.c isc_queue.c isc_message.c isc_handler.c\ - isc_stdout.c isc_socket.c isc_tcp.c isc_udp.c printf.c -LIBOBJS=isc_event.o isc_session.o isc_abort.o isc_alloc.o isc_master.o\ - isc_output.o isc_queue.o isc_message.o isc_handler.o\ - isc_stdout.o isc_socket.o isc_tcp.o isc_udp.o printf.o - - -LIBNAME = libisc-new$(PROFILE-LIB-SUFFIX).a - -INSTALL-HDRS = isc.h - -all: $(LIBNAME) - -binaries:; - -libraries: $(LIBDIR)/$(LIBNAME) - -includes: - ( cmp isc.h $(INCLUDEDIR)/isc-new.h 2>/dev/null ) \ - || ( $(RM) $(INCLUDEDIR)/isc-new.h; \ - cp isc.h $(INCLUDEDIR)/isc-new.h; \ - chmod a-w $(INCLUDEDIR)/isc-new.h ) \ - -$(LIBDIR)/$(LIBNAME): $(LIBNAME) - $(RM) $(LIBDIR)/$(LIBNAME) - cp $(LIBNAME) $(LIBDIR)/$(LIBNAME) - $(TOUCHLIB) $(LIBDIR)/$(LIBNAME) - -tags: - etags -t *.[hc] - - -clean: - $(RM) ${OBJECTS} $(GENERIC-CLEAN) Distfile testnumlist - -distclean: clean - $(RM) $(GENERIC-DIST-CLEAN) - -include $(SCRIPTDIR)/Single-depend.make - -include dependencies - -$(LIBNAME): $(LIBOBJS) - $(AR) $(ARFLAGS) $(LIBNAME) $? - $(RANLIB) $(LIBNAME) diff --git a/src/libraries/libmisc/Makefile b/src/libraries/libmisc/Makefile deleted file mode 100644 index 7a282aab0a9652c466486d9c39641729c3431b4d..0000000000000000000000000000000000000000 --- a/src/libraries/libmisc/Makefile +++ /dev/null @@ -1,71 +0,0 @@ -# -# $Id: Makefile,v 0.12 1992/04/14 15:43:20 ceder Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -include Topdir.make -SCRIPTDIR = $(TOPDIR)/scripts - -include $(SCRIPTDIR)/import.make - -TARGET = -DCLIENT - -LIBNAME = libmisc$(PROFILE-LIB-SUFFIX).a - -LIBOBJS = pom.o s-collat-tabs.o s-string.o zmalloc.o - -INSTALL-HDRS = pom.h s-collat-tabs.h s-string.h zmalloc.h - -all: $(LIBNAME) - -$(LIBNAME): $(LIBOBJS) - $(AR) $(ARFLAGS) $(LIBNAME) $? - $(RANLIB) $(LIBNAME) - -libraries: $(LIBNAME) - $(RM) $(LIBDIR)/$(LIBNAME) - cp $(LIBNAME) $(LIBDIR)/$(LIBNAME) - $(TOUCHLIB) $(LIBDIR)/$(LIBNAME) - -include $(SCRIPTDIR)/install-includes.make - -binaries:; - -testnumlist: testnumlist.o numlist.o - $(CC) -o testnumlist testnumlist.o numlist.o - - -clean: - $(RM) ${OBJECTS} $(GENERIC-CLEAN) Distfile testnumlist - -distclean: clean - $(RM) $(GENERIC-DIST-CLEAN) - - -# Recreate the Makefile -include $(SCRIPTDIR)/Single-depend.make - - -tags: - etags -t $(INCLUDEDIR)/*.h *.[hc] - -include dependencies diff --git a/src/libraries/libmisc/client-Makefile.in b/src/libraries/libmisc/client-Makefile.in deleted file mode 100644 index 401767b24d940586041928485ea9b5781b97761d..0000000000000000000000000000000000000000 --- a/src/libraries/libmisc/client-Makefile.in +++ /dev/null @@ -1,50 +0,0 @@ -AR = @AR@ -RANLIB = @RANLIB@ -srcdir = @srcdir@ -VPATH = @srcdir@ -CC = @CC@ -ansi -DEFS = @DEFS@ - -CFLAGS = -g -Wall ${OPTFLAGS} ${DEFS} \ - -I${srcdir}/../../include - -../libmisc.a: pom.o s-collat-tabs.o s-string.o zmalloc.o missing.o - $(AR) $(ARFLAGS) $@ $? - $(RANLIB) $@ - - -# dependencies - -missing.o : missing.c - -numlist.o : numlist.c \ - numlist.h \ - ../../include/misc-types.h - -numlist2.o : numlist2.c \ - ../../include/misc-types.h \ - numlist2.h - -pom.o : pom.c \ - pom.h \ - ../../include/rcs.h - -s-collat-tabs.o : s-collat-tabs.c \ - s-collat-tabs.h \ - ../../include/rcs.h - -s-string.o : s-string.c \ - ../../include/misc-types.h \ - ../../include/rcs.h \ - s-collat-tabs.h \ - s-string.h - -testnumlist.o : testnumlist.c \ - numlist.h \ - ../../include/misc-types.h - -zmalloc.o : zmalloc.c \ - zmalloc.h \ - ../../include/compiler.h \ - ../../include/rcs.h - diff --git a/src/libraries/libmisc/dependencies b/src/libraries/libmisc/dependencies deleted file mode 100644 index 123b2966a93630b3d3b4ba701826cfdc9f161c27..0000000000000000000000000000000000000000 --- a/src/libraries/libmisc/dependencies +++ /dev/null @@ -1,46 +0,0 @@ -numlist.o : numlist.c /users/ceder/lyskom/include/ansi/stdio.h \ - /users/ceder/lyskom/include/ansi/stdlib.h \ - /users/ceder/lyskom/include/ansi/stddef.h \ - /users/ceder/lyskom/include/ansi/sys/types.h /usr/include/sys/types.h \ - /usr/gnu/lib/gcc-include/sys/stdtypes.h /usr/include/sys/stdtypes.h \ - /usr/include/sys/sysmacros.h /users/ceder/lyskom/include/misc-types.h \ - numlist.h -testnumlist.o : testnumlist.c /users/ceder/lyskom/include/ansi/stdio.h \ - /users/ceder/lyskom/include/ansi/stdlib.h \ - /users/ceder/lyskom/include/ansi/stddef.h \ - /users/ceder/lyskom/include/ansi/sys/types.h /usr/include/sys/types.h \ - /usr/gnu/lib/gcc-include/sys/stdtypes.h /usr/include/sys/stdtypes.h \ - /usr/include/sys/sysmacros.h /users/ceder/lyskom/include/misc-types.h \ - numlist.h -numlist2.o : numlist2.c /users/ceder/lyskom/include/ansi/stdio.h \ - /users/ceder/lyskom/include/ansi/stdlib.h \ - /users/ceder/lyskom/include/ansi/stddef.h \ - /users/ceder/lyskom/include/ansi/sys/types.h /usr/include/sys/types.h \ - /usr/gnu/lib/gcc-include/sys/stdtypes.h /usr/include/sys/stdtypes.h \ - /usr/include/sys/sysmacros.h /users/ceder/lyskom/include/misc-types.h \ - numlist2.h -zmalloc.o : zmalloc.c /users/ceder/lyskom/include/ansi/stddef.h \ - /users/ceder/lyskom/include/ansi/sys/types.h /usr/include/sys/types.h \ - /usr/gnu/lib/gcc-include/sys/stdtypes.h /usr/include/sys/stdtypes.h \ - /usr/include/sys/sysmacros.h /users/ceder/lyskom/include/ansi/malloc.h \ - /users/ceder/lyskom/include/ansi/string.h \ - /users/ceder/lyskom/include/compiler.h zmalloc.h -pom.o : pom.c /users/ceder/lyskom/include/ansi/sys/types.h \ - /usr/include/sys/types.h /usr/gnu/lib/gcc-include/sys/stdtypes.h \ - /usr/include/sys/stdtypes.h /usr/include/sys/sysmacros.h \ - /users/ceder/lyskom/include/ansi/time.h /usr/include/time.h \ - /users/ceder/lyskom/include/ansi/math.h /usr/include/math.h \ - /usr/include/floatingpoint.h /usr/include/sys/ieeefp.h \ - /users/ceder/lyskom/include/ansi/stdio.h pom.h -s-collat-tabs.o : s-collat-tabs.c s-collat-tabs.h \ - /usr/gnu/lib/gcc-include/limits.h -s-string.o : s-string.c /users/ceder/lyskom/include/ansi/sys/types.h \ - /usr/include/sys/types.h /usr/gnu/lib/gcc-include/sys/stdtypes.h \ - /usr/include/sys/stdtypes.h /usr/include/sys/sysmacros.h \ - /users/ceder/lyskom/include/ansi/stdio.h \ - /users/ceder/lyskom/include/ansi/string.h \ - /users/ceder/lyskom/include/ansi/ctype.h /usr/include/ctype.h \ - /users/ceder/lyskom/include/ansi/stdlib.h \ - /users/ceder/lyskom/include/ansi/stddef.h /usr/gnu/lib/gcc-include/assert.h \ - /users/ceder/lyskom/include/misc-types.h s-collat-tabs.h \ - /usr/gnu/lib/gcc-include/limits.h s-string.h diff --git a/src/libraries/libmisc/missing.c b/src/libraries/libmisc/missing.c deleted file mode 100644 index 8a5f3492ca2b8ab31181966d494a3acd2c495ef8..0000000000000000000000000000000000000000 --- a/src/libraries/libmisc/missing.c +++ /dev/null @@ -1,137 +0,0 @@ -/* - * $Id: missing.c,v 1.3 1993/10/10 17:11:07 ceder Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* - * Missing functions. - */ - -static char *rcsid = "$Id: missing.c,v 1.3 1993/10/10 17:11:07 ceder Exp $"; - -#ifdef __sequent__ - -#include <stdio.h> -#include <strings.h> -#include <time.h> - -char * -cuserid(char *s) -{ - char *tmp; - - tmp = getenv("USER"); - if ( tmp == NULL ) - { - if ( s != NULL ) - *s = '\n'; - return NULL; - } - else - { - if ( s != NULL ) - strcpy(s, tmp); - return tmp; - } -} - - -void * -memcpy (void * s1, const void * s2, unsigned int n) -{ - extern bcopy(const char *b1, char *b2, unsigned int length); - - bcopy(s2, s1, n); - return s1; -} - -char *memchr(s, c, n) -char *s; -int c, n; -{ - int r = 0; - - while (r <= n) { - if (s[r] == c) - return s + r; - r++; - } - return NULL; -} - -char *strchr(s, c) -char *s; -int c; -{ - return memchr(s, c, strlen(s)); -} - - -char * memset(s, c, n) -char *s; -int c, n; -{ - while(n>=0) { - s[n] = c; - n--; - } - return s; -} - -#if 0 -extern struct tm -mktime (const struct tm * temeptr ) -{ - int nyears; - int nleaps; - int ndays; - - nyears = temeptr->tm_year - 70; - nleaps = (nyears+2) / 4; - - ndays = 365 * nyears + nleaps + temeptr->tm_yday; - - return (struct tm) ( temeptr->tm_sec - + 60 * ( temeptr->tm_min - + 60 * ( temeptr->tm_hour - + 24 * ndays ))); -} -#endif - - -/* Mathematical things. */ - -#include <math.h> - -double fmod(double t, double n) -{ - double lastt = t; - while((n > 0.0 && t > n) - || (n < 0.0 && t < n)) - if (t == lastt) - return HUGE; - else - t = t - n; - return t; -} - -#endif diff --git a/src/libraries/libmisc/testnumlist b/src/libraries/libmisc/testnumlist deleted file mode 100755 index 103245d0a3816fd38dda3481d15c1add2871998a..0000000000000000000000000000000000000000 Binary files a/src/libraries/libmisc/testnumlist and /dev/null differ diff --git a/src/server/FileList b/src/server/FileList deleted file mode 100644 index d08e0d917764c918c691d186a4e3119d64368bca..0000000000000000000000000000000000000000 --- a/src/server/FileList +++ /dev/null @@ -1,126 +0,0 @@ -This is a list of all files in the server directory. - -Atomic calls ------------- -* services.h -* manipulate.h -* admin.c -* admin.h -* conference.c -* membership.c -* person.c -* session.c -* text.c - -* version.incl - Inkluderas av admin.c. Inneh}ller versionsnummret multiplicerat med 100. - I b-server blir det en str{ng. - -* parser.c@ -* parser.h@ - Matchar namn. Samma fil som anv{nds i tty-klienten. Ska bort till b-server. - - -Data cache ----------- -* cache.c -* cache.h - H{r skulle det ha legat en fungerande cache om inte mud funnits... - -Highest level of I/O --------------------- -* async.h -* send-async.c -* send-async.h -* call-switch.incl -* com-h.awk -* com.h -* connections.c -* connections.h -* end-of-atomic.c -* end-of-atomic.h -* fnc-def-init.awk -* fnc-def-init.incl -* fncdef-no-str-limit.txt -* fncdef.txt -* isc-parse.c -* isc-parse.h - -Low-level I/O -------------- -* isc-server.c -* isc-server.h -* printf.c - -Awk scripts ------------ -* call-switch.awk - -Misc ----- -* config.c -* kom-types.c -* kom-errno.c@ -* log.c -* log.h -* minmax.h -* missing-ansi.c -* smalloc.c -* smalloc.h -* std-disclaimer.h - -Dbck ----- -* dbck -* dbck-cache.c -* dbck.c -* misc-parser.c@ -* misc-parser.h@ - -Non-sources ------------ -* ChangeLog -* FileList -* Makefile -* TAGS -* To-do - -Main ----- -* lyskomd.c -* lyskomd.h -* text-garb.c -* text-garb.h - -Protocol A ----------- -* prot-a-output.c -* prot-a-output.h -* prot-a-parse-arg-c.awk -* prot-a-parse-arg-h.awk -* prot-a-parse-arg.c -* prot-a-parse-arg.h -* prot-a-parse.c -* prot-a-parse.h -* prot-a-send-async.c -* prot-a-send-async.h -* prot-a.c -* prot-a.h - -String packet -------------- -* s-collat-tables.c@ -* s-string.c@ - -Ramkomd -------- -* ram-cache.c -* ram-output.c -* ram-output.h -* ram-output2.c -* ram-parse.c -* ram-parse.h -* ram-smalloc.c -* ramkomd -* ramkomd.c - diff --git a/src/server/Makefile b/src/server/Makefile deleted file mode 100755 index 05e8b6a7ca0d4864265e25dadede5bb8fe5cc99f..0000000000000000000000000000000000000000 --- a/src/server/Makefile +++ /dev/null @@ -1,179 +0,0 @@ -# -# $Id: Makefile,v 0.28 1992/12/19 01:56:20 ceder Exp $ -# Copyright (C) 1991 Lysator Academic Computer Association. -# -# This file is part of the LysKOM server. -# -# LysKOM is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. -# -# LysKOM is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with LysKOM; see the file COPYING. If not, write to -# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, -# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, -# MA 02139, USA. -# -# Please mail bug reports to bug-lyskom@lysator.liu.se. -# -# $Id: Makefile,v 0.28 1992/12/19 01:56:20 ceder Exp $ - -include Topdir.make -SCRIPTDIR = $(TOPDIR)/scripts - -include $(SCRIPTDIR)/import.make - -HDRS = admin.h isc-parse.h prot-a-output.h async.h isc-interface.h \ - prot-a-parse.h cache.h tmp-limits.h prot-a-send-async.h connections.h \ - log.h prot-a.h dbck-cache.h lyskomd.h ram-output.h disk-cache.h \ - manipulate.h ram-parse.h end-of-atomic.h memory.h send-async.h exp.h \ - minmax.h internal-connections.h mux-parse.h \ - internal-services.h mux.h text-garb.h \ - version.incl cache-node.h - -# See config/sun4os4-defs.make about LIBRESOLV if you are running SunOS 4.1.1. - -LIBS = -lisc-new$(PROFILE-LIB-SUFFIX) -lmisc$(PROFILE-LIB-SUFFIX) \ - -llyskom-server$(PROFILE-LIB-SUFFIX) -lansi$(PROFILE-LIB-SUFFIX) \ - $(LIBRESOLV) $(LIBIDENT) -lregex - -TARGET = -DSERVER - - -# Files that implements protocol A. -PROTA = prot-a-output.o prot-a-parse-arg.o prot-a-parse.o prot-a.o \ - prot-a-send-async.o - -PROTA_SRCS = prot-a-output.c prot-a-parse-arg.c prot-a-parse.c prot-a.c \ - prot-a-send-async.c - -MUX = mux.o mux-parse.o - -MUX_SRCS = mux.c mux-parse.c -# Implementations of the atomic calls. - -ATOMS = text.o membership.o person.o conference.o session.o admin.o \ - regex-match.o -ATOMS_SRCS = text.c membership.c person.c conference.c session.c admin.c \ - regex-match.o - -# These files are needed by all versions of the LysKOM server. -GENOBJS = connections.o log.o $(ATOMS) \ - kom-types.o \ - send-async.o server-config.o text-garb.o \ - missing-ansi.o isc-parse.o memory.o $(PROTA) $(MUX) \ - internal-connections.o rfc931.o isc-malloc.o - -GEN_SRCS = connections.c log.c $(ATOMS_SRCS) \ - kom-types.c \ - send-async.c server-config.c text-garb.c \ - missing-ansi.c isc-parse.c memory.c $(PROTA_SRCS) $(MUX_SRCS) \ - internal-connections.c rfc931.c isc-malloc.c - -# Files for lyskomd. - -DISKOBJS = ramkomd.o ram-smalloc.o simple-cache.o ram-parse.o ram-output.o \ - disk-end-of-atomic.o cache-node.o string-malloc.o - -DISK_SRCS = ramkomd.c ram-smalloc.c simple-cache.c ram-parse.c ram-output.c \ - disk-end-of-atomic.c cache-node.c string-malloc.c - - -DBCK = dbck.o dbck-cache.o ram-smalloc.o ram-parse.o server-config.o\ - kom-types.o\ - missing-ansi.o ram-output.o memory.o - -DBCK_SRCS = dbck.c dbck-cache.c ram-smalloc.c ram-parse.c server-config.c\ - kom-types.c\ - missing-ansi.c ram-output.c memory.c - -ENCRYPT = encrypt-passwd.o dbck-cache.o ram-smalloc.o ram-parse.o server-config.o\ - kom-types.o\ - missing-ansi.o ram-output.o memory.o - -SPECIALS = call-switch.incl com.h fnc-def-init.incl prot-a-parse-arg.c\ - prot-a-parse-arg.h fncdef-no-str-limit.txt .gdbinit - -SRCS = $(GEN_SRCS) $(RAM_SRCS) $(DISK_SRCS) $(LYS_SRCS) $(DBCK_SRCS) - -PROGRAMS = lyskomd dbck - - -all binaries: $(PROGRAMS) - -includes: com.h - cp com.h $(INCLUDEDIR) - -libraries:; - -lyskomd: $(DISKOBJS) $(GENOBJS) - $(CC) $(LDFLAGS) -o lyskomd $(DISKOBJS) $(GENOBJS) $(LIBS) - -encrypt: $(ENCRYPT) - $(CC) $(LDFLAGS) -o enrypt $(ENCRYPT) $(LIBS) - -dbck: $(DBCK) - $(CC) $(LDFLAGS) -o dbck $(DBCK) $(LIBS) - -call-switch.incl: call-switch.awk fncdef-no-str-limit.txt - $(AWK) -f call-switch.awk fncdef-no-str-limit.txt > call-switch.incl - -com.h: com-h.awk fncdef-no-str-limit.txt - $(AWK) -f com-h.awk fncdef-no-str-limit.txt > com.h - -fnc-def-init.incl: fnc-def-init.awk fncdef-no-str-limit.txt - $(AWK) -f fnc-def-init.awk fncdef-no-str-limit.txt > fnc-def-init.incl - -prot-a-parse-arg.c: prot-a-parse-arg-c.awk fncdef.txt prot-a-parse-arg.h - $(AWK) -f prot-a-parse-arg-c.awk fncdef.txt > prot-a-parse-arg.c - -prot-a-parse-arg.h: prot-a-parse-arg-h.awk fncdef-no-str-limit.txt - $(AWK) -f prot-a-parse-arg-h.awk fncdef-no-str-limit.txt > \ - prot-a-parse-arg.h - -fncdef-no-str-limit.txt: fncdef.txt - (echo \# Do not edit this file! It is generated from fncdef.txt.;\ - cat fncdef.txt) | sed 's/([^)]*)//g' > fncdef-no-str-limit.txt - -.gdbinit: Topdir.make - $(RM) -f .gdbinit - echo handle 13 nostop noprint >.gdbinit - echo dir $(TOPDIR)/src/libraries/libcommon >>.gdbinit - echo dir $(TOPDIR)/src/libraries/libansi >>.gdbinit - echo dir $(TOPDIR)/src/libraries/libisc >>.gdbinit - echo dir $(TOPDIR)/src/libraries/libmisc >>.gdbinit - - -install: $(PROGRAMS) - echo Server not installed. -# cp lyskomd $(DESTDIR)/ramkomd # The utilites wants ramkomd. -# cp dbck $(DESTDIR)/ -# strip $(DESTDIR)/dbck -# Don't strip ramkomd - we want debugging info! - -clean: - $(RM) $(GENERIC-CLEAN) $(PROGRAMS) - -distclean: clean - $(RM) $(GENERIC-DIST-CLEAN) $(SPECIALS) - -specials: $(SPECIALS) - -tags: - $(RM) TAGS - etags -t $(INCLUDEDIR)/*.h *.h \ - $(TOPDIR)/src/libraries/libisc-new/src/*.h \ - $(TOPDIR)/src/libraries/lib*/*.h \ - *.c \ - $(TOPDIR)/src/libraries/libisc-new/src/*.c \ - $(TOPDIR)/src/libraries/lib*/*.c - -include $(SCRIPTDIR)/Parallell-depend.make - -include dependencies diff --git a/src/server/getopt.h b/src/server/getopt.h deleted file mode 100644 index 0157e8da65e09bcb5c3b16faf361d0577545ddff..0000000000000000000000000000000000000000 --- a/src/server/getopt.h +++ /dev/null @@ -1,113 +0,0 @@ -/* Declarations for getopt. - Copyright (C) 1989, 1990, 1991, 1992 Free Software Foundation, Inc. - - 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 - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ - -#ifndef _GETOPT_H_ -#define _GETOPT_H_ - -/* For communication from `getopt' to the caller. - When `getopt' finds an option that takes an argument, - the argument value is returned here. - Also, when `ordering' is RETURN_IN_ORDER, - each non-option ARGV-element is returned here. */ - -extern char *optarg; - -/* Index in ARGV of the next element to be scanned. - This is used for communication to and from the caller - and for communication between successive calls to `getopt'. - - On entry to `getopt', zero means this is the first call; initialize. - - When `getopt' returns EOF, this is the index of the first of the - non-option elements that the caller should itself scan. - - Otherwise, `optind' communicates from one call to the next - how much of ARGV has been scanned so far. */ - -extern int optind; - -/* Callers store zero here to inhibit the error message `getopt' prints - for unrecognized options. */ - -extern int opterr; - -/* Describe the long-named options requested by the application. - The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector - of `struct option' terminated by an element containing a name which is - zero. - - The field `has_arg' is: - no_argument (or 0) if the option does not take an argument, - required_argument (or 1) if the option requires an argument, - optional_argument (or 2) if the option takes an optional argument. - - If the field `flag' is not NULL, it points to a variable that is set - to the value given in the field `val' when the option is found, but - left unchanged if the option is not found. - - To have a long-named option do something other than set an `int' to - a compiled-in constant, such as set a value from `optarg', set the - option's `flag' field to zero and its `val' field to a nonzero - value (the equivalent single-letter option character, if there is - one). For long options that have a zero `flag' field, `getopt' - returns the contents of the `val' field. */ - -struct option -{ -#ifdef __STDC__ - const char *name; -#else - char *name; -#endif - /* has_arg can't be an enum because some compilers complain about - type mismatches in all the code that assumes it is an int. */ - int has_arg; - int *flag; - int val; -}; - -/* Names for the values of the `has_arg' field of `struct option'. */ - -enum _argtype -{ - no_argument, - required_argument, - optional_argument -}; - -#ifdef __STDC__ -extern int getopt (int argc, char *const *argv, const char *shortopts); -extern int getopt_long (int argc, char *const *argv, const char *shortopts, - const struct option *longopts, int *longind); -extern int getopt_long_only (int argc, char *const *argv, - const char *shortopts, - const struct option *longopts, int *longind); - -/* Internal only. Users should not call this directly. */ -extern int _getopt_internal (int argc, char *const *argv, - const char *shortopts, - const struct option *longopts, int *longind, - int long_only); -#else /* not __STDC__ */ -extern int getopt (); -extern int getopt_long (); -extern int getopt_long_only (); - -extern int _getopt_internal (); -#endif /* not __STDC__ */ - -#endif /* _GETOPT_H_ */ diff --git a/src/server/memory.h b/src/server/memory.h deleted file mode 100644 index a495495c2331b3f3551f864351ed2836a000428a..0000000000000000000000000000000000000000 --- a/src/server/memory.h +++ /dev/null @@ -1,83 +0,0 @@ -/* - * $Id: memory.h,v 0.6 1991/09/15 10:31:06 linus Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* - * $Id: memory.h,v 0.6 1991/09/15 10:31:06 linus Exp $ - * - * The time has come to get some order into this mess. - * - * From now on the following terminology is used: - * - * alloc_ smalloc() the object. Increase _cnt. - * free_ sfree() the object. Decrease _cnt. - * clear_ free_() any objects contained in the object, - * but not the object itself. - * copy_ smalloc() a new object and also smalloc() - * any objects contained in it. - */ - - - -extern Person * -alloc_person(void); - -extern Conference * -alloc_conference(void); - -extern Text_stat * -alloc_text_stat(void); - -extern void -free_person(Person *person); - -extern void -free_conference(Conference *confp); - -extern void -free_text_stat(Text_stat *t); - -extern Person * -copy_person(Person *p); - -extern Conference * -copy_conf(Conference *c); - -extern Text_stat * -copy_text_stat(Text_stat *c); - -extern void -clear_conference(Conference *c); - -extern void -clear_person(Person *p); - -extern void -clear_text_stat(Text_stat *t); - -#ifdef FILE - -extern void -dump_alloc_counts(FILE *stat_file); - -#endif diff --git a/src/server/missing-ansi.c b/src/server/missing-ansi.c deleted file mode 100644 index 88f703c7bfd04cd08c0a32a7cdcbc48473e75df0..0000000000000000000000000000000000000000 --- a/src/server/missing-ansi.c +++ /dev/null @@ -1,114 +0,0 @@ -/* - * $Id: missing-ansi.c,v 0.9 1993/08/05 00:06:38 ceder Exp $ - * Copyright (C) 1991 Lysator Academic Computer Association. - * - * This file is part of the LysKOM server. - * - * LysKOM is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * LysKOM is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with LysKOM; see the file COPYING. If not, write to - * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN, - * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, - * MA 02139, USA. - * - * Please mail bug reports to bug-lyskom@lysator.liu.se. - */ -/* - * Some missing functions that are needed. - * - * Written by ceder. - */ - -static char *rcsid = "$Id: missing-ansi.c,v 0.9 1993/08/05 00:06:38 ceder Exp $"; -#include "rcs.h" -USE(rcsid); - - -#include <string.h> -#include <time.h> - -#if defined(__sequent__) && !defined(DEBUG_MALLOC) - -void * -memcpy (void * s1, const void * s2, size_t n) -{ - extern bcopy(const char *b1, char *b2, unsigned int length); - - /* bcopy takes the parameters the other way round. */ - - bcopy(s2, s1, n); - return s1; /* Since ANSI says so */ -} - -#endif - -#if defined(__sequent__) || defined(__sun__) || defined(__vax__) - -#include "tmp-difftime.h" - -extern double -difftime(time_t t1, time_t t2) -{ - return (double) t1 - (double) t2; -} - -#endif - -#ifdef __sequent__ - -/* - * This version in NOT 100 % ANSI-conformant, but it is enough to run LysKOM - * (I hope) /ceder - */ - -extern time_t -mktime (const struct tm * temeptr ) -{ - int nyears; - int nleaps; - int ndays; - - nyears = temeptr->tm_year - 70; - nleaps = (nyears+2) / 4; - - ndays = 365 * nyears + nleaps + temeptr->tm_yday; - - return (time_t) ( temeptr->tm_sec - + 60 * ( temeptr->tm_min - + 60 * ( temeptr->tm_hour - + 24 * ndays ))); -} - -#endif - - -#if defined(__sequent__) || defined(__sun__) -#include <errno.h> -#include <stdio.h> - -extern char *sys_errlist[]; -extern int sys_nerr; - -const char *strerror(int eno) -{ - static char buf[200]; - - - if (eno < 0 || eno >= sys_nerr) - { - sprintf(buf, "error #%d", eno); - return buf; - } - else - return sys_errlist[eno]; -} -#endif diff --git a/src/server/tmp-difftime.h b/src/server/tmp-difftime.h deleted file mode 100644 index cf8028425654cad06ed0a40e348c7b8aca740f63..0000000000000000000000000000000000000000 --- a/src/server/tmp-difftime.h +++ /dev/null @@ -1,3 +0,0 @@ -/* This file should be removed as soon as possible. autoconf should - fix this instead. */ -extern double difftime(time_t t1, time_t t2);