Index: ossp-pkg/rc/00TODO RCS File: /v/ossp/cvs/ossp-pkg/rc/00TODO,v rcsdiff -q -kk '-r1.11' '-r1.12' -u '/v/ossp/cvs/ossp-pkg/rc/00TODO,v' 2>/dev/null --- 00TODO 2002/01/30 07:53:24 1.11 +++ 00TODO 2002/01/30 17:29:15 1.12 @@ -1,31 +1,51 @@ 00TODO: Tasks left to accomplish before rc is complete +Spec fehlt + Security + Off switch + Command interpreter + Beispiel + Default + Error + Inconsistent + rc.conf rc.config rc.env + package command program section rcfile rc.file + runcommand run command (run-command?) + Environment + Genaue wie comline- und rc.conf Optionen + Ausname drei schon stehen + Consider Make return code and error definitions unique to OSSP rc. Offer include directive in config file. - Standardize rc.conf. - Rename rc.conf to rc.config. - New rc.conf specifies options like syslog.conf or resolv.conf does. Must do + Strip local popt code, and move in OSSP popt library. Translate rc bourne shell script to ANSI C. Finish man page. Start latex or Docbook guide. If a variable is defined for which no default exists, warn user (Scholli.) Avoid a silent failure when giving non-existent run commands (Marcus.) -Possible problems - Abstract syntax of rc.file identifiers - Need to recognize language syntax, i.e. set, block von XML? - Is a regex enough to describe a syntax or do we need more? - Cases XML, M4, asn.1, ... - Automated environment Stock rc.func includes AddPath, DelPath, PermMask. - Reccommended .bashrc includes rcEnter() and rcExit(). Error handling Classic error, give 'restart' command in place of 'start' to stopped prog + /-------------------OSSP rc Inhalt------------------\ + | Manpage | + | rc.1 Section 1 oder 8-Konflict? | + | rc-sample.5 Vielleicht umnennen rc.usecases.5 | + | rc.conf.5 Beschreibung aber kein Beispiel | + | | + | Geliefert | + | rc.env Leer | + | rc.conf Ausgekommentet Beispiel | + | | + | Beispiele | + | rc.example Soll rc.fooboar umgenannt werden | + \---------------------------------------------------/ + Pseudocode *********************************** * psoudocode implementation of rc * Index: ossp-pkg/rc/Makefile.in RCS File: /v/ossp/cvs/ossp-pkg/rc/Makefile.in,v rcsdiff -q -kk '-r1.1' '-r1.2' -u '/v/ossp/cvs/ossp-pkg/rc/Makefile.in,v' 2>/dev/null --- Makefile.in 2002/01/24 17:47:47 1.1 +++ Makefile.in 2002/01/30 17:29:15 1.2 @@ -60,7 +60,7 @@ PROG_OBJS = rc.o TST_OBJS = rc_test.o -SUBDIRS = @SUBDIR_VAR@ @SUBDIR_STR@ +SUBDIRS = @SUBDIR_EX@ @SUBDIR_VAR@ @SUBDIR_STR@ all: $(SUBDIRS) $(TARGET) Index: ossp-pkg/rc/configure.in RCS File: /v/ossp/cvs/ossp-pkg/rc/configure.in,v rcsdiff -q -kk '-r1.4' '-r1.5' -u '/v/ossp/cvs/ossp-pkg/rc/configure.in,v' 2>/dev/null --- configure.in 2002/01/25 16:02:42 1.4 +++ configure.in 2002/01/30 17:29:15 1.5 @@ -68,7 +68,18 @@ dmalloc, dmalloc_debug, dmalloc.h, AC_DEFINE(DMALLOC)) -dnl Check for OSSP Str library +dnl Check for OSSP ex library +AC_CHECK_EXTLIB([OSSP ex], + ex, __ex_ctx, ex.h, + [SUBDIR_EX=""], + [SUBDIR_EX="lib_ex" + CPPFLAGS="$CPPFLAGS -Ilib_ex" + CFLAGS="$CFLAGS -Ilib_ex" + LDFLAGS="$LDFLAGS -Llib_ex/.libs" + LIBS_EXTRA="$LIBS_EXTRA -lex"]) +AC_SUBST(SUBDIR_EX) + +dnl Check for OSSP str library AC_CHECK_EXTLIB([OSSP Str], str, str_parse, str.h, [SUBDIR_STR=""], @@ -79,7 +90,7 @@ LIBS_EXTRA="$LIBS_EXTRA -lstr"]) AC_SUBST(SUBDIR_STR) -dnl Check for OSSP Var library +dnl Check for OSSP var library AC_CHECK_EXTLIB([OSSP Var], var, var_expand, var.h, [SUBDIR_VAR=""], @@ -94,7 +105,7 @@ LIBS="$LIBS $LIBS_EXTRA" dnl Call other configure scripts -AC_CONFIG_SUBDIRS([$SUBDIR_STR $SUBDIR_VAR]) +AC_CONFIG_SUBDIRS([@SUBDIR_EX@ $SUBDIR_STR $SUBDIR_VAR]) dnl Make all the necessary Makefiles #AC_CONFIG_FILES(Makefile) Index: ossp-pkg/rc/devtool.conf RCS File: /v/ossp/cvs/ossp-pkg/rc/devtool.conf,v rcsdiff -q -kk '-r1.3' '-r1.4' -u '/v/ossp/cvs/ossp-pkg/rc/devtool.conf,v' 2>/dev/null --- devtool.conf 2002/01/23 16:51:54 1.3 +++ devtool.conf 2002/01/30 17:29:15 1.4 @@ -7,11 +7,31 @@ @autogen libtool 1.4.2 "1.4*" @autogen autoconf 2.52 "2.5.*" + echo "===> lib_ex (devtool autogen)" + (cd lib_ex && ./devtool autogen) + echo "<=== lib_ex" + echo "===> lib_str (devtool autogen)" + (cd lib_str && ./devtool autogen) + echo "<=== lib_str" + echo "===> lib_var (devtool autogen)" + (cd lib_var && ./devtool autogen) + echo "<=== lib_var" + %autoclean @autoclean shtool @autoclean libtool @autoclean autoconf + echo "===> lib_ex (devtool autoclean)" + (cd lib_ex && ./devtool autoclean) + echo "<=== lib_ex" + echo "===> lib_str (devtool autoclean)" + (cd lib_str && ./devtool autoclean) + echo "<=== lib_str" + echo "===> lib_var (devtool autoclean)" + (cd lib_var && ./devtool autoclean) + echo "<=== lib_var" + %configure ./configure \ --prefix=/tmp/rc \ Index: ossp-pkg/rc/rc.c RCS File: /v/ossp/cvs/ossp-pkg/rc/rc.c,v rcsdiff -q -kk '-r1.2' '-r1.3' -u '/v/ossp/cvs/ossp-pkg/rc/rc.c,v' 2>/dev/null --- rc.c 2002/01/08 15:49:02 1.2 +++ rc.c 2002/01/30 17:29:15 1.3 @@ -30,7 +30,11 @@ #include #include #include -#include + +#include "rc.h" +#include "ex.h" /* OSSP ex exception library */ +#include "str.h" /* OSSP str string library */ +#include "var.h" /* OSSP var variable library */ void usage(char *szProgname) Index: ossp-pkg/rc/rc_test.sh RCS File: /v/ossp/cvs/ossp-pkg/rc/rc_test.sh,v rcsdiff -q -kk '-r1.2' '-r1.3' -u '/v/ossp/cvs/ossp-pkg/rc/rc_test.sh,v' 2>/dev/null --- rc_test.sh 2002/01/29 08:48:13 1.2 +++ rc_test.sh 2002/01/30 17:29:15 1.3 @@ -50,21 +50,3 @@ # #Procedure: # -#foreach sec in
[
...] { -# foreach dir in --dir=dir1:dir2:.. { -# search for --rcfile where %s is -# parse rcfile into blocks according to --regex-section/etc. -# remember common/
into list -# } -# // we now have an unsorted list of common/
-# sort list of common/
according to their priority (see --regex-param) -# -# // execution -# forearch common/
in list { -# prepend config section -# prepend common section -# expand references accordingf to --regex-reference -# execute result as user/group (see --regex-param) with interpreter (see --regex-param) -# } -#} -#