RNALIB 2.2 MAIL SERVER- upgrade to beta-3

Paolo Ventafridda venta at otello.sublink.org
Sun Feb 24 06:06:35 AEST 1991


[Note: you need original RNALIB 2.2 beta-1 package in order to upgrade]

RNALIB 2.2 beta-3b has small but important new things.

1- The 'head' command is replaced by sed inside RNA.
   This was the only thing causing RNA not to run on ISC unix, which
   is missing 'head' . RNALIB 2.2 beta-3b is known to work fine on
   Interactive unix/386 now.

2- After resuming from an 'on-hold' state, rnalib is reading mail inside
   $RNADIR/pending. In the old version, the first 'on hold' mail was
   processed with an 'unknown date' mistake. Now fixed.

3- I realized that some mailers put @@ inside their 'headers', causing
   rnalib to drop the request either for security problems or for
   'wrong syntax'. This has been fixed (hopefully).
   Thanks to Marcel Zielinski (lumbert at lime.in-berlin.de).

4- The 'release' command now adds automatically an internal variable dump.
   You can test it executing  XRNA Release_Msg    

5- A 'time-limits' feature is being added. See its file for details [optional].


Together with patch-3b, come a new version of MAKE_RNA (USE THIS!), a 
timelimits example file, and a 'checkup' program to be put inside $BINDIR.
The 'release' file is just a minor fix, and follows the new 'release' 
command.

I'd like to write an install utility before spreading the 2.2 around.
If you have suggestions for something to be added inside the 2.2, please
let me know.

Thanks,  Paolo

#!/bin/sh
# This is a shell archive (shar 3.24)
# made 02/23/1991 18:59 UTC by venta at otello
# Source directory /usr/local/src/RNA/2_2b3
#
# existing files WILL be overwritten
#
# This shar contains:
# length  mode       name
# ------ ---------- ------------------------------------------
#   1389 -rw------- BETA3-README
#   1432 -rwxr-xr-x MAKE_RNA
#   7401 -rwxr-xr-x checkup
#   6425 -rw-rw-rw- patch-3b
#    601 -rw-rw-rw- release
#    784 -rw-rw-rw- timelimits
#
if touch 2>&1 | fgrep '[-amc]' > /dev/null
 then TOUCH=touch
 else TOUCH=true
fi
# ============= BETA3-README ==============
echo "x - extracting BETA3-README (Text)"
sed 's/^X//' << 'SHAR_EOF' > BETA3-README &&
X
XPlease patch your RNALIB 2.2 beta-1  with "patch-3b" .
XRNALIB 2.2 beta-3b has small but important new things.
X
X1- The 'head' command is replaced by sed inside RNA.
X   This was the only thing causing RNA not to run on ISC unix, which
X   is missing 'head' . RNALIB 2.2 beta-3b is known to work fine on
X   Interactive unix/386 now.
X
X2- After resuming from an 'on-hold' state, rnalib is reading mail inside
X   $RNADIR/pending. In the old version, the first 'on hold' mail was
X   processed with an 'unknown date' mistake. Now fixed.
X
X3- I realized that some mailers put @@ inside their 'headers', causing
X   rnalib to drop the request either for security problems or for
X   'wrong syntax'. This has been fixed (hopefully).
X   Thanks to Marcel Zielinski (lumbert at lime.in-berlin.de).
X
X4- The 'release' command now adds automatically an internal variable dump.
X   You can test it executing  XRNA Release_Msg    
X
X5- A 'time-limits' feature is being added. See its file for details [optional].
X
X
XTogether with patch-3b, come a new version of MAKE_RNA (USE THIS!), a 
Xtimelimits example file, and a 'checkup' program to be put inside $BINDIR.
XThe 'release' file is just a minor fix, and follows the new 'release' 
Xcommand.
X
XI'd like to write an install utility before spreading the 2.2 around.
XIf you have suggestions for something to be added inside the 2.2, please
Xlet me know.
X
XThanks,  Paolo
X
X
SHAR_EOF
$TOUCH -am 0223185991 BETA3-README &&
chmod 0600 BETA3-README ||
echo "restore of BETA3-README failed"
set `wc -c BETA3-README`;Wc_c=$1
if test "$Wc_c" != "1389"; then
	echo original size 1389, current size $Wc_c
fi
# ============= MAKE_RNA ==============
echo "x - extracting MAKE_RNA (Text)"
sed 's/^X//' << 'SHAR_EOF' > MAKE_RNA &&
X:
X# MAKE_RNA for RNALIB 2.2	venta at i2ack.sublink.org
X# =======================
X#
X# Input and Output files; usually RNA and XRNA.
XRNA=RNA
XXRNA=XRNA
X#
Xtest -s $RNA || { echo "Ooops! Cannot find $RNA - i'm lost."; exit; }
Xrm -f $XRNA /tmp/TMPRNA1 /tmp/TMPRNA2 2>/dev/null
Xecho ":\n# RNALIB 2.2  by venta at i2ack and marlor at gear .SUBLINK.ORG" >$XRNA
Xecho "# Configured: `date` by `logname`" >>$XRNA
Xecho "CONFDATA=\"`date` by `logname`\"" >>$XRNA
Xecho "\
XMAKE_RNA Rel.2\n\n\
XI'm about to strip comments and spare spaces from the original RNALIB source.\n\
XAre you running the program as a daemon task or interactivily? In case it's\n\
Xreally a daemon task, i will strip out also DEBUG mode and all of its lines.\n\
XPlease answer with \"yes\" or anything else for no.\n\n\
XRemove DEBUG mode [no]? \c"
Xread answer
X
X# Cant use pipes here, file is too big and pipes miss lines ;-(
X# Don't ask me WHY this is happening here, i guess the 3B2 is drunk.
Xcase "$answer" in
X	yes|YES|Yes)
X		echo "\nYES. Stripping also debug mode.."
X		grep -v '^#' $RNA >/tmp/TMPRNA1
X		grep -v 'DEBUG' /tmp/TMPRNA1 >/tmp/TMPRNA2
X 		strings -1 /tmp/TMPRNA2 >>$XRNA
X		;;
X	*)
X		echo "\nNO. Keeping debug mode..(beware of cron)"
X		grep -v '^#' $RNA >/tmp/TMPRNA1; strings -1 /tmp/TMPRNA1 >>$XRNA
X		;;
Xesac
Xchmod 755 $XRNA
Xecho "All done. Now you have an executable version of $RNA called \"$XRNA\""
Xecho "Old size and new size follow: \n`ls -l $RNA $XRNA`"
Xecho "Byebye"
SHAR_EOF
$TOUCH -am 0214165791 MAKE_RNA &&
chmod 0755 MAKE_RNA ||
echo "restore of MAKE_RNA failed"
set `wc -c MAKE_RNA`;Wc_c=$1
if test "$Wc_c" != "1432"; then
	echo original size 1432, current size $Wc_c
fi
# ============= checkup ==============
echo "x - extracting checkup (Text)"
sed 's/^X//' << 'SHAR_EOF' > checkup &&
X:
X# RNALIB Support Utilities 
X# checkup 1.0
X#
X# Performs a bunch of checks upon the whole RNALIB's
X# environment. It will not allow RNALIB to continue processing any
X# mail unless specified.
X# To let RNA continue its work, a $TMPDIR/status file should be
X# created containing "RRUN".
X#
X# Common variables.
XCKLOG="/tmp/chkuplog.$$"
Xrm -f /tmp/chkuplog.* 2>/dev/null
X
X# Common routines.
X
X# Check directory and files.
X# Returns: nothing if everything is ok.
X
X# Initlog
XInit_Log() {
X>$CKLOG || echo "WARNING: cannot open logfile $CKLOG"
X}
X
XStop_Msg() {
Xecho "\
XWARNING\n\
XAn unrecoverable error was detected inside RNALIB's environment/file system.\n\
XRNALIB HAS NOW BEEN STOP BY CREATING \"$RNADIR/stop\";\n\
Xyou need to remove this file by hand in order to let RNALIB run again."
X
X}
X
XSig_Msg() {
Xecho "\n\n\
XSincerely,\n\
X              your RNALIB daemon \"checkup\""
X}
X
X
XStop_Rna() {
Xdate >$RNADIR/stop
Xecho "Subject: RNALIB CHECKUP PROBLEMS - STOP\n\n\
X`Stop_Msg`\n\nDiagnostic follows:\n`cat $CKLOG`\n`Sig_Msg`" | $MAILER $POSTMASTER
X}
X
X
XDir_Chk() {
Xdir=$1
Xbad=0
X# Is it a null variable? 
Xtest -n "$dir" || { echo "UNDEFINED VARIABLE" >>$CKLOG ; echo ERROR ; return ; }
X# Does 'dir' exist?
Xtest -d $dir || { echo "NONEXISTENT DIRECTORY \"$dir\"" >>$CKLOG ; echo ERROR ; return ; }
X# All files need to be readable and writable. 
Xfor file in `ls $dir`
Xdo
X	test -w $dir/$file || { echo "NO WRITE PERMISSIONS FOR \"$dir/$file\"" >>$CKLOG ; bad=1 ; }
X	test -r $dir/$file || { echo "NO READ  PERMISSIONS FOR \"$dir/$file\"" >>$CKLOG ; bad=1 ; }
Xdone
Xtest "$bad" = "1" && echo ERROR
X
X}
X
XFile_RWChk() {
Xfil=$1
Xbad=0
X# Is it a null variable?
Xtest -n "$fil" || { echo "UNDEFINED VARIABLE" >>$CKLOG ; echo ERROR ; return ; }
X# Check file's permissions
X	test -w $fil || { echo "NO WRITE PERMISSIONS FOR \"$fil\"" >>$CKLOG ; bad=1 ; }
X	test -r $fil || { echo "NO READ  PERMISSIONS FOR \"$fil\"" >>$CKLOG ; bad=1 ; }
Xtest "$bad" = "1" && echo ERROR
X}
X
XFile_RChk() {
Xfil=$1
Xbad=0
X# Is it a null variable?
Xtest -n "$fil" || { echo "UNDEFINED VARIABLE" >>$CKLOG ; echo ERROR ; return ; }
X# Check file's permissions
X	test -r $fil || { echo "NO READ  PERMISSIONS FOR \"$fil\"" >>$CKLOG ; bad=1 ; }
Xtest "$bad" = "1" && echo ERROR
X}
X
X
X# --------- MAIN (main) ---------
Xtest "$RNADIR" || {
X#	Hey. Something is wrong with environment: i can't find the most
X#	important variable!! Be verbose, try to say something..
X	echo "*** PANIC: ENVIRONMENT MISSING! ***\n\
XI can't find RNALIB's environment; probably you are running this program\n\
Xas a standalone module, while it should run as an argument of XRNA.."
X#	Let's do a core dump (!) inside tmp
X	echo "(core dumped in /tmp/core-rna.$$)"
X	set >/tmp/core-rna.$$
X	exit
X}
X
Xtest $DEBUG && echo "***** RNALIB DIAGNOSTICS 1.00 *****"
XInit_Log
X
Xtest $DEBUG && echo "Checking ownership of TMPDIR  ... \c"
Xoutput="`Dir_Chk $TMPDIR`"
Xtest -n "$output" && {
X	test $DEBUG && echo "FAILED. Reason:\n`cat $CKLOG`\n`Stop_Msg`"
X	Stop_Rna
X	exit
X}
Xtest $DEBUG && echo "PASSED"
X
Xtest -n "$CONVDIR" && {
X	test $DEBUG && echo "Checking ownership of CONVDIR ... \c"
X	output="`Dir_Chk $CONVDIR`"
X	test -n "$output" && {
X		test $DEBUG && echo "FAILED. Reason:\n`cat $CKLOG`\n`Stop_Msg`"
X		Stop_Rna
X		exit
X	}
X	test $DEBUG && echo "PASSED"
X}
Xtest -z "$CONVDIR" && {
X	test $DEBUG && echo "[ CONVDIR not used - skipped ]"
X}
X
Xtest -n "$SPLITDIR" && {
X	test $DEBUG && echo "Checking ownership of SPLITDIR... \c"
X	output="`Dir_Chk $SPLITDIR`"
X	test -n "$output" && {
X		test $DEBUG && echo "FAILED. Reason:\n`cat $CKLOG`\n`Stop_Msg`"
X		Stop_Rna
X		exit
X	}
X	test $DEBUG && echo "PASSED"
X}
Xtest -z "$CONVDIR" && {
X	test $DEBUG && echo "[ SPLITDIR not used - skipped ]"
X}
X
Xtest -n "$PATHSIZE" && {
X	test $DEBUG && echo "Checking ownership of PATHSIZE... \c"
X	output="`File_RWChk $PATHSIZE`"
X	test -n "$output" && {
X		test $DEBUG && echo "FAILED. Reason:\n`cat $CKLOG`\n`Stop_Msg`"
X		Stop_Rna
X		exit
X	}
X	test $DEBUG && echo "PASSED"
X}
Xtest -z "$PATHSIZE" && {
X	test $DEBUG && echo "[ PATHSIZE not used - skipped ]"
X}
X
Xtest -n "$TIME_LIMITS" && {
X	test $DEBUG && echo "Checking ownership of TIME_LIMITS... \c"
X	output="`File_RChk $TIME_LIMITS`"
X	test -n "$output" && {
X		test $DEBUG && echo "FAILED. Reason:\n`cat $CKLOG`\n`Stop_Msg`"
X		Stop_Rna
X		exit
X	}
X	test $DEBUG && echo "PASSED"
X}
Xtest -z "$TIME_LIMITS" && {
X	test $DEBUG && echo "[ TIME_LIMITS not used - skipped ]"
X}
X
Xtest -f "$LOGFILE" && {
X	test $DEBUG && echo "Checking ownership of LOGFILE ... \c"
X	output="`File_RWChk $LOGFILE`"
X	test -n "$output" && {
X		test $DEBUG && echo "FAILED. Reason:\n`cat $CKLOG`\n`Stop_Msg`"
X		Stop_Rna
X		exit
X	}
X	test $DEBUG && echo "PASSED"
X}
X
Xtest -f "$MAIL_LOG" && {
X	test $DEBUG && echo "Checking ownership of MAIL_LOG... \c"
X	output="`File_RWChk $MAIL_LOG`"
X	test -n "$output" && {
X		test $DEBUG && echo "FAILED. Reason:\n`cat $CKLOG`\n`Stop_Msg`"
X		Stop_Rna
X		exit
X	}
X	test $DEBUG && echo "PASSED"
X}
X
X
Xtest $DEBUG && echo "Checking ownership of LIBIND  ... \c"
Xoutput="`File_RChk $LIBIND`"
Xtest -n "$output" && {
X	test $DEBUG && echo "FAILED. Reason:\n`cat $CKLOG`\n`Stop_Msg`"
X	Stop_Rna
X	exit
X}
Xtest $DEBUG && echo "PASSED"
X
Xtest -n "$LSTIND" && {
X	test $DEBUG && echo "Checking ownership of LSTIND  ... \c"
X	output="`File_RChk $LSTIND`"
X	test -n "$output" && {
X		test $DEBUG && echo "FAILED. Reason:\n`cat $CKLOG`\n`Stop_Msg`"
X		Stop_Rna
X		exit
X	}
X	test $DEBUG && echo "PASSED"
X}
Xtest -z "$LSTIND" && {
X	test $DEBUG && echo "[ LSTIND not used - skipped ]"
X}
X
X
Xtest $DEBUG && echo "Checking ownership of BLACKLIST.. \c"
Xoutput="`File_RChk $BLACKLIST`"
Xtest -n "$output" && {
X	test $DEBUG && echo "FAILED. Reason:\n`cat $CKLOG`\n`Stop_Msg`"
X	Stop_Rna
X	exit
X}
Xtest $DEBUG && echo "PASSED"
X
Xtest $DEBUG && echo "Checking ownership of WHITELIST.. \c"
Xoutput="`File_RChk $WHITELIST`"
Xtest -n "$output" && {
X	test $DEBUG && echo "FAILED. Reason:\n`cat $CKLOG`\n`Stop_Msg`"
X	Stop_Rna
X	exit
X}
Xtest $DEBUG && echo "PASSED"
X
Xtest -f "$REJECTED" && {
X	test $DEBUG && echo "Checking ownership of REJECTED... \c"
X	output="`File_RWChk $REJECTED`"
X	test -n "$output" && {
X		test $DEBUG && echo "FAILED. Reason:\n`cat $CKLOG`\n`Stop_Msg`"
X		Stop_Rna
X		exit
X	}
X	test $DEBUG && echo "PASSED"
X}
X
Xtest -f "$RNADIR/hold" && {
X	test $DEBUG && echo "[ RNALIB IS ON HOLD ]\nChecking ownership of hold... \c"
X	output="`File_RChk $RNADIR/hold`"
X	test -n "$output" && {
X		test $DEBUG && echo "FAILED. Reason:\n`cat $CKLOG`\n`Stop_Msg`"
X		Stop_Rna
X		exit
X	}
X	test $DEBUG && echo "PASSED"
X}
X
Xtest -f "$RNADIR/pending" && {
X	test $DEBUG && echo "[ RNALIB HAS PENDING JOBS ]\nChecking ownership of pending... \c"
X	output="`File_RChk $RNADIR/pending`"
X	test -n "$output" && {
X		test $DEBUG && echo "FAILED. Reason:\n`cat $CKLOG`\n`Stop_Msg`"
X		Stop_Rna
X		exit
X	}
X	test $DEBUG && echo "PASSED"
X}
X
Xtest -f "$RNADIR/release" && {
X	test $DEBUG && echo "Checking ownership of release ... \c"
X	output="`File_RChk $RNADIR/release`"
X	test -n "$output" && {
X		test $DEBUG && echo "FAILED. Reason:\n`cat $CKLOG`\n`Stop_Msg`"
X		Stop_Rna
X		exit
X	}
X	test $DEBUG && echo "PASSED"
X} || {
X	test $DEBUG && echo "[ optional \"$RNADIR/release\" file missing ]"
X	}
X
X# If you wish to see release, then uncomment the following line:
X#test $DEBUG && Release_Msg
X# (which is equivalent of:  XRNA Release_Msg)
X
X
X# If we get here, all is OK, and RNA can continue (at least for checkup)
Xtest $DEBUG && echo "****** DIAGNOSTICS COMPLETED ******"
Xecho RRUN >$TMPDIR/status
SHAR_EOF
$TOUCH -am 0223182791 checkup &&
chmod 0755 checkup ||
echo "restore of checkup failed"
set `wc -c checkup`;Wc_c=$1
if test "$Wc_c" != "7401"; then
	echo original size 7401, current size $Wc_c
fi
# ============= patch-3b ==============
echo "x - extracting patch-3b (Text)"
sed 's/^X//' << 'SHAR_EOF' > patch-3b &&
X2c2
X< RNAVERS="RNALIB 2.2 [beta-3b]"
X---
X> RNAVERS="RNALIB 2.2 [beta-1]"
X315,320d314
X< # You may choose to limit rna activities within certain time limits
X< # for a single host in order to avoid  requests being shipped during
X< # daytime, when connection is more expensive.
X< # If you don't care about 'timelimits', leave it blank.
X< TIME_LIMITS=
X< #
X356,357c350
X< export CREDIT SPLIT MIN_SPLIT MAX_SPLIT DEF_SPLIT MAIL_LIMIT CONFDATA
X< export TIME_LIMITS
X---
X> export CREDIT SPLIT MIN_SPLIT MAX_SPLIT DEF_SPLIT MAIL_LIMIT 
X371c364
X< 	chown $LOGNAME $TMPDIR; chgrp mail $TMPDIR
X---
X> 	chown rnalib $TMPDIR; chgrp mail $TMPDIR
X402c395
X< 	chown $LOGNAME $CONVDIR; chgrp mail $CONVDIR
X---
X> 	chown rnalib $CONVDIR; chgrp mail $CONVDIR
X404c397
X< 	chown $LOGNAME $SPLITDIR; chgrp mail $SPLITDIR
X---
X> 	chown rnalib $SPLITDIR; chgrp mail $SPLITDIR
X410c403
X< 	UUCP_DESTIN=""; FCPRTIPE=""; REAL_TIME=""; TIME=""
X---
X> 	UUCP_DESTIN=""; FCPRTIPE=""
X479,497d471
X< ### DEBUG2 13/2/91 Paolo
X< Get_Commands() {
X< # $1 = file to examine
X< # returns: lines containing commands. 
X< # %%FIX%%
X< # Some mailers, like Smail 3.1, or sendmail, may add funny sequences like
X< # /\@@/\ inside the headers THEY add to the mail passing by. This is bad!
X< # RNALIB would think these lines are actually commands sent by the
X< # original sender, while they are only junk added by a mailer somewhere!!
X< # We'll try to skip as much as possible junk headers probably added by
X< # intermediate host's mailers. You don't have to do anything special here,
X< # i just wanted to be sure that you knew about this kind of problems.
X< # A user can fix problems on HIS host with HIS mailer, he cannot fix something
X< # done by another host on HIS mail! 
X< #
X< grep '@@' $1 | grep -v "Received:" | grep -v "Message-Id:" | grep -v "From:"
X< 
X< }
X< 
X1356,1367d1329
X< Check_Time()
X< # $1 = path/user to check
X< # returns: null if unknown path; otherwise current time limits
X< {
X< tl_origin=$1
X< set ""
X< set -f `grep -v '#' $TIME_LIMITS`
X< while [ "$1" != "" ]; do
X< 	tl_path=$1; tl_start=$2; tl_stop=$3; shift; shift; shift
X<  	test -n "`echo $tl_origin | grep $tl_path`" && break
X< done
X< }
X1369d1330
X< 
X1808,1813d1768
X< Copyrights_Msg() {
X< 	echo "\n\
X< Currently running $RNAVERS MAIL SERVER\n\
X< Public domain software  written by  Paolo Ventafridda and  Marco Lorenzini\n\
X< venta at i2ack.sublink.org & marlor at gear.sublink.org - Sublink Network, ITALY\n\n"
X< }
X1816,1837c1771,1777
X< echo "\nINTERNAL CONFIGURATION TABLE\n----------------------------"
X< test -n "$CONFDATA" && echo "Configured: $CONFDATA \c"
X< test -n $DEBUG && echo "[DEBUG MODE]\c"
X< echo "\nBinary handlers (\"with\"-type): \c"
X< test -n "$UUENCODE" && echo "uuencode \c"
X< test -n "$BTOA" && echo "btoa \c"
X< test -n "$COMPRESS" && echo "compress \c"
X< test -n "$LHARC" && echo "lharc \c"
X< test -n "$ZOO" && echo "zoo \c"
X< test -n "$TAR" && echo "tar \c"
X< echo "\nBinary layers   (\"via\"-type) : \c"
X< test -n "$UUSEND" && echo "uusend \c"
X< test -n "$UUCP" && echo "uucp [sending inside \"$PUBDIR\"]"
X< echo "Max. file names length: $MAXLENGTH chars."
X< echo "File libraries are \c" ; test -z "$LIBIND" && echo "NOT \c"; echo "in use."
X< echo "Mailing lists (listserv) are \c" ; test -z "$LSTIND" && echo "NOT \c"; echo "in use."
X< echo "Help subsystem is \c"; test -z "$HELPDIR" && echo "NOT \c" ; echo "available."
X< echo "Splitting of files into smaller parts is \c"; test -z "$SPLIT" && echo "NOT \c"; echo "available."
X< test -n "$SPLIT" && {
X< 	echo "   Minimum split size allowed: $MIN_SPLIT Kbytes"
X< 	echo "   Maximum split size allowed: $MAX_SPLIT Kbytes"
X< 	echo "   Default split size : $DEF_SPLIT Kbytes"
X---
X> 	echo "\n\
X> RNALIB MAIL SERVER RELEASE 2.2 Revision A (beta)- Feb 1991 , Public Domain SW\n\
X> Developed by  Paolo Ventafridda and Marco Lorenzini,  Sublink Network,  ITALY\n\
X> (venta at i2ack.sublink.org and marlor at gear.sublink.org) (c) 1989,1990,1991\n\n"
X> test -r $RNADIR/release && grep -v '#' $RNADIR/release
X> test -r $RNADIR/release || echo "== No system configuration available =="
X> echo
X1839,1855d1778
X< echo "Maximum single email size: $MAIL_LIMIT Kbytes (priority limit)"
X< test -z "$PATHSIZE" && echo "Pathsizing is disabled; unlimited credits to everybody."
X< test -n "$PATHSIZE" && {
X< 	echo "Pathsizing is enabled; \c"
X< 	test -z "$CREDIT" && echo "unlimited credits to everybody, by default."
X< 	test -n "$CREDIT" && {
X< 		case $CREDIT in
X< 			0)
X< 				echo "new users need authorization." ;;
X< 			*)
X< 				echo "new users have a $CREDIT bytes credit." ;;
X< 		esac
X< 	}
X< }
X< echo "Execution time limit is \c"; test -z "$TIME_LIMITS" && echo "NOT \c" ; echo "in use."
X< echo 
X< }
X1907,1911c1830
X< ### DEBUG2 13/2/91 Paolo
X< ### Some systems do not have 'head'. We just use it here, and we can
X< ### use sed, instead.
X< ### OLD: set `head -1 $MBOX_CUT`; UUCP_SENDER=$2
X< set `sed 1q $MBOX_CUT`; UUCP_SENDER=$2
X---
X> set `head -1 $MBOX_CUT`; UUCP_SENDER=$2
X1969c1888
X< 	touch $RNADIR/pending; echo "`cat $MBOX_CUT`\n\n" >>$RNADIR/pending
X---
X> 	touch $RNADIR/pending; echo "`cat $MBOX_CUT`\n" >>$RNADIR/pending
X1979,1983c1898
X< ### DEBUG2 13/2/91 Paolo
X< ### I changed the following line
X< ###    grep '@@' $MBOX_CUT >$CMDS
X< ### using a new function, Get_Commands; see that for details.
X< Get_Commands $MBOX_CUT >$CMDS
X---
X> grep '@@' $MBOX_CUT >$CMDS
X2415,2437d2329
X< # If TIME_LIMITS is activated, look for limits.
X< test -n "$TIME_LIMITS" && {
X< 	if [ "$destination" != "DEFAULT" ]; then
X< 		UUCP_DESTIN=$destination
X< 		Check_Time $UUCP_DESTIN
X< 		test $DEBUG && test "$tl_path" = "$tl_origin" && echo "External destination time limits: $tl_start-$tl_stop"
X< 	else
X< 		Check_Time $UUCP_SENDER
X< 		test $DEBUG && test "$tl_path" = "$tl_origin" && echo "Default destination time limits: $tl_start-$tl_stop"
X< 	fi
X< if [ "$tl_path" = "$tl_origin" ]; then
X< 	set ""
X< 	set - `date`; REAL_TIME=$4
X< 	set - `echo $REAL_TIME | sed -e "s/:/ :/"`; TIME=$1
X< 	if [ "$TIME" -lt "$tl_start" ] || [ "$TIME" -gt "$tl_stop" ]; then
X< 	touch $RNADIR/pending; echo "`cat $MBOX_CUT`\n\n" >>$RNADIR/pending
X< 	test $DEBUG && echo "Time limits exceeded, holding message as pending job"
X< 	echo "HOLDON $ARPA_SENDER (TIME LIMITS)" >>$LOGFILE
X< 	return
X< 	fi
X< fi
X< }
X< 
X2923,2925d2814
X< 	Copyrights_Msg >>$OUTFILE
X< 	test -r $RNADIR/release && grep -v '#' $RNADIR/release >>$OUTFILE
X< 	test -r $RNADIR/release || echo "== No host description available ==" >>$OUTFILE
SHAR_EOF
$TOUCH -am 0223182891 patch-3b &&
chmod 0666 patch-3b ||
echo "restore of patch-3b failed"
set `wc -c patch-3b`;Wc_c=$1
if test "$Wc_c" != "6425"; then
	echo original size 6425, current size $Wc_c
fi
# ============= release ==============
echo "x - extracting release (Text)"
sed 's/^X//' << 'SHAR_EOF' > release &&
X# RNALIB 2.2 MAIL SERVER -  custom site configuration module
X# ==========================================================
X# These informations can be retrieved with "@@ release"
X# Comments will be stripped out. Blank lines are kept.
X#
XHost name: 
XComputer:
XOperating System:                        Release: 
XOrganization: 
XCity:                                    State: 
XSystem administrator     (full name):
XSystem administrator (email address):
XShell: 
X# Mailer example: Smail 3.1.17.5 
XMailer:
X
X# Additional informations can be put here.
X# The internal configuration table is added automatically.
SHAR_EOF
$TOUCH -am 0214172891 release &&
chmod 0666 release ||
echo "restore of release failed"
set `wc -c release`;Wc_c=$1
if test "$Wc_c" != "601"; then
	echo original size 601, current size $Wc_c
fi
# ============= timelimits ==============
echo "x - extracting timelimits (Text)"
sed 's/^X//' << 'SHAR_EOF' > timelimits &&
X# RNALIB 2.2 TIME_LIMITS [optional]
X#
X# This file should contain lines in this format:
X# path start end
X# where:  path  is a full 'bang' path (see white or black headers)
X#         start is the starting hour  (ex: 9)
X#         end   is the ending hour  (ex: 23)
X# You can put comments between lines, but you can't leave empty lines.
X# Rnalib will process mail coming from 'path' ONLY in the time interval
X# start-end. Out of this interval, that mail is added to $RNADIR/pending
X# for the next run, and there it will stay until its time comes.
X# If incoming path is not matched, mail is processed immediatly as usual.
X# Do not use TABS as field separator.
X# Example:
X# gear!marlor 19 7
X# means that mail coming from gear!marlor can be processed by rnalib only
X# between 19pm and 7am .
SHAR_EOF
$TOUCH -am 0223182791 timelimits &&
chmod 0666 timelimits ||
echo "restore of timelimits failed"
set `wc -c timelimits`;Wc_c=$1
if test "$Wc_c" != "784"; then
	echo original size 784, current size $Wc_c
fi
exit 0
-- 
Paolo Ventafridda     -*-     INTERNET: venta at otello.sublink.org
TELEMATIX MILANO - Via C.Gomes 10, 20124 Milano -  +39-2-6706012



More information about the Alt.sources mailing list