RNALIB 2.2 beta - part 1 of 4

Paolo Ventafridda venta at otello.sublink.org
Mon Feb 11 06:52:19 AEST 1991


Archive-name: RNALIB-22_b1/part01

---- Cut Here and unpack ----
#!/bin/sh
# This is RNALIB-22_b1, a shell archive (shar 3.24)
# made 02/10/1991 19:23 UTC by venta at otello
# Source directory /usr/local/src/RNA/2_2
#
# existing files WILL be overwritten
#
# This is part 1 of a multipart archive                                    
# do not concatenate these parts, unpack them in order with /bin/sh        
#
# This shar contains:
# length  mode       name
# ------ ---------- ------------------------------------------
#   1552 -rw-r--r-- MANIFEST
#   1791 -rw-r--r-- NEXT.RELEASE
#    616 -rw-rw-rw- SUPPORT
#  21505 -rw-r--r-- OPER.GUIDE
#   4676 -rw-r--r-- CREDITS
#   1384 -rwxr-xr-x MAKE_RNA
#   1587 -rw-r--r-- PROBLEMS
#    129 -rw-r--r-- README.FIRST
#   1142 -rw-r--r-- black
#   2455 -rw-r--r-- deliver.sh
#    797 -rw-r--r-- libindex
#    897 -rwxrwxrwx lstindex
#   1072 -rw-r--r-- pathsize
#    793 -rw-r--r-- white
#  39153 -rw-rw-rw- helpfiles
#   3066 -rw-rw-rw- binfiles
#    611 -rw-rw-rw- notice
#    629 -rw-rw-rw- release
#  91110 -rwxrwxrwx RNA
#
if touch 2>&1 | fgrep '[-amc]' > /dev/null
 then TOUCH=touch
 else TOUCH=true
fi
if test -r shar3_seq_.tmp; then
	echo "Must unpack archives in sequence!"
	next=`cat shar3_seq_.tmp`; echo "Please unpack part $next next"
	exit 1
fi
# ============= MANIFEST ==============
echo "x - extracting MANIFEST (Text)"
sed 's/^X//' << 'zXqzXqzXq' > MANIFEST &&
XRNALIB 2.2 beta-1 PACKAGE (February 1991)
X
X-----------------------------------------------------------
X   File Name		       Description
X-----------------------------------------------------------
X
X CREDITS                     	Who wrote it? When? Also an History of rnalib.
X
X MAKE_RNA                    	Program to strip comments from RNA
X
X MANIFEST                    	This shipping list
X
X NEXT.RELEASE                	What's coming out in the next release,
X				and how to contribute.
X
X OPER.GUIDE                  	Operator's Guide
X
X PROBLEMS                    	problems & solutions during installation
X
X README.FIRST                	Where to start from
X
X RNA                         	Remote Network Archiver 2.2 beta-1
X
X SUPPORT			How to subscribe to rnalib's owners list and
X				get email support.
X
X binfiles			Support Utilities and other rnalib's execfile.
X
X black                       	Blacklisting example (keep it as master)
X
X deliver.sh                  	Script for sequential processing of RNA mails
X				with Chip Salzenberg's 'deliver'. Unsupported.
X
X helpfiles			text files for the Help subsystem. This is a
X				"shared" file; everything should stay inside
X				$RNADIR/help (as default)
X
X libindex                    	Library index example (keep it as master)
X
X lstindex			List index example (keep it as master)
X
X notice				sortof 'motd' for rnalib
X
X pathsize                       Pathsizing example (keep it as master)
X
X release			Master for 'release' text file.
X
X white                       	Whitelisting example (keep it as master)
zXqzXqzXq
$TOUCH -am 0210192191 MANIFEST &&
chmod 0644 MANIFEST ||
echo "restore of MANIFEST failed"
set `wc -c MANIFEST`;Wc_c=$1
if test "$Wc_c" != "1552"; then
	echo original size 1552, current size $Wc_c
fi
# ============= NEXT.RELEASE ==============
echo "x - extracting NEXT.RELEASE (Text)"
sed 's/^X//' << 'zXqzXqzXq' > NEXT.RELEASE &&
XWHAT'S NEXT? WHAT'S NEXT?
X******* important important ***********************
XI (we) DO PAY FOR INTERNATIONAL E-MAIL.
XSo do not send your 100K versions of RNA. At least use
X'diff', and let's talk about it anyway!
X***************************************************
X
XWe would like to:
X
X1- Improve the listserv facilities. May be adding list-managers.
X
X2- Create a bunch of listserv utilities, for handling file-updates,
X   using diffs. This is not supported by the original LISTSERV ;-)
X
X3- Improve the RRJP processor. 
X
X4- Include TCP/IP support: remote libraries.
X
X5- Implement an 'ftp transponder': mail rna a request like
X   @@ ftp 1.2.3.4 access: anonymous/guest file: /pd/file.Z
X   This is hard to do with a shell. I'll probably pipe ftp
X   into a C program driver. We'll see.
X
X6- set up a networking environment for RNA-sites. A sort-of 
X   batch RFS. An RNA site declares its library 'docs' to be
X   shared with the rna network numbered '1'. In a table, there's
X   a list of hosts (*not on the same path!*) belonging to that net.
X   Those hosts will have their corrispondent 'docs' library with
X   the same stuff each other. So we will support 'library aliases'
X   and that kind of things.
X
X7- Do some utilities for RNA. Maybe someone out there in the US can
X   join our work here and send their contribution. For instance,
X   an automatic way of making INDEXes for libraries.
X   I was also thinking of a program which checks $REJECTED mails,
X   and automatically inserts inside $BLACKLIST those paths which
X   appears to be giving problems.
X   And so on. There are a lot of good ideas around.
X
X8- Start porting to C some slow shell functions. First of all, 
X   the rfc822 parser. 
X
XWARNING WARNING
XKeep a copy of the original distribution, since patches will apply
Xon these sources.
zXqzXqzXq
$TOUCH -am 0204170891 NEXT.RELEASE &&
chmod 0644 NEXT.RELEASE ||
echo "restore of NEXT.RELEASE failed"
set `wc -c NEXT.RELEASE`;Wc_c=$1
if test "$Wc_c" != "1791"; then
	echo original size 1791, current size $Wc_c
fi
# ============= SUPPORT ==============
echo "x - extracting SUPPORT (Text)"
sed 's/^X//' << 'zXqzXqzXq' > SUPPORT &&
X
XIf you are running RNALIB mailer server, please subscribe the 
XRNALIB'S OPERATORS LIST. You'll be informed as soon as new
Xreleases are coming out, tools, bug fixes and so on.
X
XSend a mail to:  rnalib at otello.sublink.org   (as of Feb.1991)
Xwith a command:
X		@@ subscribe rnalib
X
XI'm currently reachable on the following machines:
Xventa at sublink.sublink.org
Xventa at i2ack.sublink.org
Xventa at otello.sublink.org
Xventa at mozart.sublink.org
X
X[ .sublink.org is a domain whose gateway is rutgers.rutgers.edu ]
X
XThese addresses might change in the next future.
X
XTHIS SOFTWARE IS SUPPORTED. NO MONEY IS NEEDED TO GET THIS SUPPORT.
X
zXqzXqzXq
$TOUCH -am 0210191991 SUPPORT &&
chmod 0666 SUPPORT ||
echo "restore of SUPPORT failed"
set `wc -c SUPPORT`;Wc_c=$1
if test "$Wc_c" != "616"; then
	echo original size 616, current size $Wc_c
fi
# ============= OPER.GUIDE ==============
echo "x - extracting OPER.GUIDE (Text)"
sed 's/^X//' << 'zXqzXqzXq' > OPER.GUIDE &&
X------------------------------------------------------------------------------
X
X	                                lll      ii    bbb     
X        	                        ll             bb     
X	     rr rrr  nnnnn    aaaa     ll     iii     bb     
X	     rrr rr nn  nn      aa    ll      ii     bbbbb  
X	    rr  rr nn  nn   aaaaa    ll      ii     bb  bb 
X	   rr     nn  nn  aa  aa    ll      ii     bb  bb 
X	 rrrr    nn  nn   aaa aa  llll    iiii   bb bbb    (c)
X                       THE ITALIAN MAIL SERVER
X
X 			     RNALIB 2.2  
X 
X                  O P E R A T O R ' S     G U I D E 
X                     pre-release for betatesters
X
X          Copyright (c) 1989,1990,1991 by Paolo Ventafridda
X                  Contributions by Marco Lorenzini
X
X    Permission  is hereby granted to copy, distribute or otherwise 
X    use any part of this package as long as you do not try to make 
X            money from it or pretend that you wrote it.  
X       The copyright notice must be maintained in any copy made.
X  
X    If  you  make  modifications  to  this  software  that you feel 
X    increases its usefulness for the rest of the community,  please 
X    email  the  changes, enhancements, bug fixes as well as any and 
X    all  ideas to me.  This  software is going to be maintained and 
X          enhanced as deemed necessary by the community.
X  		
X  	  	              Paolo 
X    		     (venta at i2ack.sublink.org)
X
X
X                        BOURNE STRIKES AGAIN
X                        --------------------
XSurprise! RNA is a Bourne Shell script! I know what you are mumbling:
X"if it's not C it's not serious". Well, this thing is serious ;-)
XWe did it in shell because:
X	- people was saying 'you can't do it in shell'
X	- it was funny to work with, hacking problems.
X	- we did not need speed. 
X	- it's much more portable than C, you'll agree.
X	- not everybody have a C compiler on the machine
X	- users will not believe it's written in shell ;-)
X	>> Rnalib does not use 'awk'. <<
X
X
X
X                         IT WON'T TAKE LONG! 
X                         -------------------
X
XI hate long docs, so i tried my best to facilitate an RNA installation
Xwithout too many efforts. How long? Say 15 minutes.
XJust the time to do some 'mv' and some 'mkdir'. Sounds easy, isn't it?
XMost of the (little) work you need to do is inside the main program,
Xthat is RNA; you'll fix the source as you read the docs! That's all
Xtogether, so you don't need to do any printout. By the way, if you want
Xto get an hardcopy of RNA, set your printer to 160 columns.
X
XThe source contains comments (notes) about possible configuration-dependent
Xproblems; these comments refer to tested (verified working) installations
Xmade on various operating systems. If your system  is listed among these
Xmachines, you are going to have a very short configuration. If it's not,
Xdon't worry; i collected all problems found while doing the 'porting'.
XThere's a file named 'PROBLEMS' which you might find really useful, in case
Xsomething does not work.
X
X
X                THIS VERSION OF RNA WAS RUN SUCCESSFULLY ON:
X
X	AT&T 3B2 UNIX SYSTEM V.3.2 
X	SCO-UNIX SYSTEM V 
X
X               A COUPLE OF BETA-RELEASES AGO, RNA WAS RUN ON:
X
X	SCO-XENIX 386  (i guess RNA will work with no problems)
X	 
X		
X                         RNA WILL NOT WORK ON:
X
X	SCO Xenix 286 and Microport Unix 286:  forget them.
X	RNA will crash /bin/sh and it's stupid 'fixed stack'.
X	Either you'll get stack errors or 'no data space'!
X	Probably it won't run on VMS/VM/RTX machines also...;-)
X
X
X------------------------------------------------------------------------------
X[ This is a pre-release of OPER.GUIDE : i will write a full new documentation
X  very soon; this one should do by the time being. ]
X
X		STEP-BY-STEP SETUP
X
X	0-	I guess you just unshared the whole package in a random
X		directory; that's ok. We will move everything at the right
X		place later on.
X
X	1-	Mkdir a temporary directory for the docs.
X		Copy the file called 'helpfiles' there, then unshar it
X		with either  sh helpfiles  or  unshar helpfiles.
X		These are the user's help files, including the main
X		User's Guide which is called 'rnalib'. Read them all, since
X		as an operator you should at least know as much as your
X		users. Later we'll install these files in their own directory.
X
X		Please read the user's documentation before next step!
X
X	2-	Configure the program editing RNA: it's not long.
X		Everything you need to know is inside that piece of
X		code. Just start from the beginning and follow 
X		instructions inside comments. Set DEBUG on..(remind!) 
X		You'll learn about RNA files, and you'll be ready for
X		the 3rd point here. 
X
X
X	..	[ Don't cheat: follow steps 1 and 2 ]
X
X
X	3-	Welcome back. I assume you are not cheating and you did
X		really complete first two steps.
X		Now, as you read inside RNA, you need to configure a file
X		named 'libindex' (referenced as LIBIND), and two optional
X		files named 'black' and 'white'. 
X		These files have their own simple explanations inside.
X		We will talk about lstindex and generally about 
X		the LISTSERV installation further on.
X		
X		Still reading? Go editing 'libindex','black','white'.
X		I'll wait for you right here.
X
X	
X	4-	INSTALLATION. 
X		
X		I. - creation of LOGNAME
X
X		Create a user named 'rnalib' inside /etc/passwd.
X		His home directory will be referenced as RNADIR
X		(see RNA configuration..).
X		Any user/group id will do; the default shell does not
X		matter since the 'daemon' will not  use this account.
X		Here is my entry:
X 
X                rnalib:mypassword:24:20:RNALIB server:/usr/rnalib:/bin/sh
X
X		Check your rnalib directory now: is it the same as the
X		'DEFAULT' you configured inside 'libindex'?
X		If so, you did NOT get the point. Start back from step 1 :-(
X		It has to be different or you are giving any user from remote
X		the ability to read internal files, such as privileged paths!
X		Better clear up this point: 'rnalib' and its files is living
X		inside a home directory,which we call RNADIR. This place is
X		closed to the world. Rnalib will access 'libraries' declared
X		inside 'libindex'; one of these is named 'DEFAULT', and
X		is the default library which will be accessed by users not
X		declaring a specific one. Since users commonly ask things
X		like 'help' or 'send help', we will use the default library
X		as place to contain these things. For this reason, we also
X		refer to the DEFAULT library as 'system library'.
X		Of course, you can use the system library also as a normal
X		one, i.e. a place containing files, docs etc.
X		It's up to you.
X
X		
X		II. - creation of RNADIR and its subdirectories
X
X		This directory is the 'administrator's directory' quoted 
X		in the very first lines of RNA. Move here files:
X			RNA
X			MAKE_RNA
X			libindex
X			lstindex
X			white
X			black
X			pathsize
X			notice
X			release
X			
X
X		If you configured 'TMPDIR' inside RNA as: $RNADIR/tmp
X		(which is what i suggest), then create this 'tmp'
X		directory.
X		If you allow file compression, then you need also a 
X		CONVDIR inside RNADIR, as $RNADIR/convert (which is
X		what i suggest), etc.
X		Create all necessary subdirectories as configured inside
X		RNA (check it out carefully please).
X		
X		There's also a BINDIR to create (important): usually 
X		$RNADIR/bin . Put here 'binfiles', then unshar it
X		with either $ sh binfiles  or $ unshar binfiles .
X		You should get some shell scripts (Support Utilities in
X		their headers) in the BINDIR. Now remove 'binfiles'.
X
X		
X 		Now everything needed inside administration's
X		dir is ready. Hey. Don't forget to change the owner of
X		these files. Remember, the new owner is 'rnalib'.
X		
X		III. - put HELP online
X
X		Remember the original 'shar' file called "helpfiles" ?
X		In STEP 1  you had created a temporary directory where
X		you had unshared its content. Now we talk about THOSE
X		files (help,rnalib,listserv...did you find them?)
X
X		Copy 'help' inside the directory configured to be 'DEFAULT'
X		as in 'libindex' (we call this directory "system library").
X		Inside the system library now you have "help": go there and
X		link it to HELP ( $ ln help HELP ).
X		
X		This will allow your poor users to get some help (or some
X		HELP ;-) ) if they ask so. You can edit 'help' and cut off
X		useless parts which might not fit your configuration.
X		Or add anything you like.
X
X		Now, when a user send a simple @@ help  request, he's going
X		to get the HELP we just put online. Let's install the other
X		help files: inside RNA you chose an HELPDIR path. Usually,
X		it should be inside $RNADIR/help .
X		Copy here the rest of those unshared helpfiles.
X		Yes, rnalib/listserv/external ...
X		No, don't copy "help", that's already being installed!
X		When a user send a @@ help rnalib  the program will look
X		for $RNADIR/help/rnalib (better say $HELPDIR/rnalib).
X
X		IV. - put INDEX online
X
X		In the latter directory (DEFAULT), aside HELP, create a file
X		named 'INDEX' (UPPERCASE). When your users ask for a list
X		of available LIBRARIES, this is the file they'll get.
X		So make them happy and write down a notice or whatever.
X
X		The 'INDEX' might look like:
X
X	       "AVAILABLE LIBRARIES HERE ON RNALIB SERVER 'i2ack'
X		
X		RFC		Requests For Comments, from 820 to 1035.
X		documents	Various documents, text files.
X		netware		Network software, including RNA
X		games		binary executables for Sperry-Univaq 1100
X		
X		Please help yourself."
X
X		This INDEX file has to be updated. At least put in all
X		of your libraries. You can also put:
X		DEFAULT		Home directory, where HELP is available.
X		
X	
X		V.
X
X		If everything seems ok to you, run 'MAKE_RNA' inside
X		new rnalib home directory (don't forget to su rnalib).
X				
X		We are ready for a test: AS ANOTHER USER, send mail to
X		rnalib, giving this request:
X			@@ credits
X			@@ help
X			@@ index
X		
X		Now su rnalib and execute XRNA. Good luck!
X		At the end, you'll see 'RNA SESSION COMPLETED'
X		and program will terminate. Check the mail for the user
X		who sent requests to RNA. 
X
X		If everything worked out fine, edit back RNA and disable
X		DEBUG. 
X		IF YOU GOT ERRORS, PLEASE READ FILE 'PROBLEMS' and look for
X		anything which might reflect your situation. RNA has been
X		tested on as many configurations as possible; if 'PROBLEMS'
X		does not come to anything useful, you are out of luck ;-(
X		Get a cup of black coffee and a printout of RNA; carefully
X		study the source and if you find out the problem please let
X		me know! If you don't, grasp a bottle of Wild Turkey...
X		
X
X		VI.
X		I assume XRNA did not give you any error (*any means *ANY).
X		>> Disable DEBUG mode inside RNA source. Run MAKE_RNA again.
X		Execute XRNA from cron once every 30 minutes: to do this,
X		login as rnalib and type (example):
X
X		$ crontab 
X		25,55 * * * * /usr/local/usr/rnalib/XRNA >/dev/null
X
X		DO THIS ONLY AFTER DISABLING DEBUG MODE.
X		If you don't, here it is what's gonna happen.
X		Cron executes XRNA as rnalib. The debug of the session
X		is then mailed to.. rnalib (owner of its crontab entry).
X		RNA does not understand the cron mail, and mails back
X		the stuff to 'root' (owner of cron) . Funny...
X		If you are out of luck, RNA will go crazy and will send
X 		its output to an unexistent user. Mailer will reject this
X		request and send it back to rnalib. The cicle closes here
X		and the mail is processed again, without ever stopping.
X		Rna logs will get bigger and bigger.. argh!
X
X		You can omit '>/dev/null', assuming everything is ok.
X		If something is giving errors like 'cannot shift',
X		try applying the unisys 7000/40 patch. A reason could be
X		a wrong path to a utility like 'strings' 'head' or 'sed'.
X
X
X	5-	IT WORKS!
X		
X		Congratulations, enjoy RNA !
X		If you are going to use RNA as a file server for
X		your users, please send a note to the author; i'll
X		be glad to know that someone is using my software :-))
X		Beside, you'll be informed as soon as new patches,
X		releases etc. come out.
X
X
X	6-	Read 'CREDITS' for author's details and official credits.
X		This file also contains an historical description of the
X		program, and how it came out to the current release.
X
X
XTransmission's Layers
X---------------------
XAs we all know, e-mail does not like binary files. So whenever RNA sends
Xa file, it converts it into ascii with common utilities like 'uuencode' 
Xand 'btoa'. This means also increasing sizes. 
XRnalib allows files to be sent using other 'layers' than e-mail. This way
Xfiles need not to be encoded, since these are binary layers. Together
Xwith file's compression, using rna this way will reduce considerably
Xnetwork overloads.
X
X1- UUCP
X
X	Using this choice, file will be sent to the host using a 
X	bang-syntax with uucp (the commands itself).
X	Syntax used is:
X
X	uucp -r -C filename path!path!host!/destination_dir/filename
X
X	This kind of delivery is not always granted. It presumes that
X	all of the hosts the file is going through allows a remote
X	uux command like 'uucp'.  Sites running HDB UUCP should normally
X	let this command available; sites running V7 unix, or non-hdb
X	uucp, probably will not, due to some security problems.
X	In Italy, all of the hosts on our network do declare which remote
X	commands are supported, inside a remark field of their maps.
X
X2- UUSEND
X
X	This utility basically is an enhanced version of uucp. Probably
X	was born at the time of those V7 uucp systems which could not
X	put 'uucp' inside their ancient L.cmds. 
X	Around here, in the land of Leonardo Da Vinci ( HeHe ;-)) ), we
X	ask our users to run a custom release of uusend, which is good
X	for V7/Xenix systems and for new UNIXes as well.
X	This release allows arpa-addressing of files. It should come out
X	on usenet pretty soon. If you are reading this line in 1993, 
X	then probably it's already around ;-)) .
X	Anyway, uusend here is used with bang-addressing, so if you have 
X	a copy of this old utility you can use it without problems.
X	Syntax used is:
X	
X	uusend -r -f -m 666 filename path!path!host/destination_dir/filename
X
XAs you understand, an operator should carefully consider the opportunity
Xto leave uucp and uusend available online, since they might not be granted
Xsome 'hops' beyond, and the file would be lost somewhere.
XWell, the thing is here; what can i tell you? Ask around!
X
X
XHow to personalize RNA
X----------------------
XIf you want that every answer given by RNA contains some text from
Xyou, just create a file $RNADIR/notice  (i.e. a file named 'notice'
Xinside $RNADIR ). 
X
XHow to stop your RNA service
X----------------------------
XWhenever you need to stop rnalib for some time, there is no need to
Xtouch cron files or do special things. 
XSimply create a file inside $RNADIR named 'hold' (i.e. $RNADIR/hold).
XEach time RNA finds new mail inside its mailbox, it will copy (append)
Xit into $RNADIR/pending. This mail will not be processed by the time
Xbeing; instead, a message will be sent to the origin, saying that
XRNA is on hold and his request will be processed as soon as the
Xservice is resumed. Content of $RNADIR/hold will be added to this mail,
Xthus allowing you to give some details about what's going on.
XOf course, you can just 'touch' $RNADIR/hold not putting anything inside.
X
XAs soon as RNA starts again and finds a 'pending' file, it checks if
Xthe system is still on hold. If it's not, RNA processes these requests
Xand removes 'pending'.
XWarning: do not create fake 'pending' files.
X
XEMERGENCY BREAKDOWN
X-------------------
XRNA will quit silently whenever a $RNADIR/stop is found. Nothing is
Xprocessed, no mail is touched, no output is produced.
XThis is going to be used by 'check' utilities soon included as 
XSupport Utilities (see later).
X
XSUPPORT UTILITIES
X-----------------
XSince version 2.2, RNALIB can be run giving an argument.
XThis argument is usually an external program (shell or binary) which
Xwill receive as env.variables RNALIB's parameters.
XBasically, an 'export' of the main variables is done before
Xexecuting the program.
XNormally, these kind of utilities should stay inside BINDIR, however
Xthe program is searched through the whole PATH variable (which has
XBINDIR ahead). 
XYou simply run an external program as $ XRNA program . That's it.
XBy default, RNA will quit immediatly after the end of the program's
Xexecution. So you could use this feature to make maintainance using
Xrnalib's configuration through an external script.
XFor instance, you might create a script to mail postmaster the size of
X$RNADIR. We call this script 'size'. 
X
X:
X# Support Utilities - size
X# an example, nothing more.
Xdu $RNADIR | $MAILER $POSTMASTER
X
X(end of script)
XYou run 'size' as $ XRNA size  . Easy.
XExternal programs get original values such as RNADIR, MAILER,
XPOSTMASTER, and also functions!
XFor this reason i believe that Support Utilities will soon be
Xa winning choice for many RNALIB's operators.
XBEWARE: if you are going to create any script, remember that 
Xerrors and any output is NOT redirected by RNA and is going back
Xto cron. Cron will MAIL IT BACK to rnalib!
XI already have some good ideas on HOW to use this feature.
X
X
XRESUME AFTER EXT.EXECUTION
X--------------------------
XAs i said, RNALIB quits after executing an external script.
XThat's just the default, but you can force RNALIB to continue
Xand run normally. In order to do so, the script should create
Xa $TMPDIR/status  file, containing the magic word: RRUN .
XThis file is automatically removed by rnalib BEFORE executing
Xany external script/program.
X
XA good example of this feature is the $BINDIR/checkup.
XYou may run XRNA checkup  also from cron. It just slows down
Xa little bit the execution of RNALIB itself, since it's doing
Xsome checks on rnalib's files.
XIf something important is missing or is wrong, checkup will
Xnot let XRNA continue the execution. Sometimes checkup could also
Xdecide to lock rnalib execution forever (creating $RNADIR/stop !).
XIn this case, normally, a mail to postmaster is sent with some
Xdiagnostics.
X
XRRJP: RNALIB's REMOTE JOBS PROCESSOR
X====================================
XYou can send source files to rnalib and run them, getting back
Xtheir output via email. You can choose the language (shell, csh,
Xperl or whatever, even the cc). 
XDon't worry, i know this is dangerous; by default this feature is
Xsimply disabled, there's no way of using rrjp.
XIn order to let it run, you need to create $RNADIR/execfile
Xand put inside it a path (just like those in black/white)
Xand a password.
XOnly email coming from that path and containing that password
Xwill be allowed to use RRJP.
XNo $RNADIR/execfile = No rrjp, anyway.
X
XSyntax for rrjp commands:
X
X@@ exec progname with language PW password
X
X~ put here your program
X~ just remember to let a
X~ "~" at the beginning of each line
X
XRNALIB greps all lines starting with a ~ , removes that "header"
Xand creates a /tmp/progname, finally executes
Xlanguage progname
Xgathering all output. At the end, a mail is sent back with that
Xoutput, CPU statistics etc.
XA copy of the 'job' (source program) is appended to $RNADIR/jobs
X(automatically created).
X
X[see RRJP.MANUAL - coming soon ]
X
XRELEASE NOTICE
X==============
XA $RNADIR/release  file is available to your users with @@ release
Xor @@ version . Edit this file and fill its fields. Or remove it.
X
XLISTSERV
X========
XListserv configuration is similar to that for libraries.
XThere's a "DEFAULT" (or 'system') namelist assumed whenever a request
Xdoes not specify a mailing list (i.e. @@ subscribe ).
XYou should configure 'lstindex'  (libindex for libraries); create all
Xnecessary directories.
XNow suppose that a mailinglist named 'chess' is available,and lstindex
Xcontains a :
Xchess   /usr/rnalib/lst/chess
XLet's go inside /usr/rnalib/lst/chess .
XCreate a NOTES files, similar to INDEX for libraries.
XIt should contain a description of what the current mailing list is
Xabout (just an idea). The NOTES file is obtained by users with
X@@ lindex {list}  just like INDEX is obtained with @@ index .
X
XA file 'users' will be automatically created by rnalib as soon as
Xneeded; this file is going to keep a record of all subscribed users.
XYou can use 'users' as source of addresses whenever you want.
XUsually ARPA addresses are kept, and UUCP addresses are used whenever
Xarpa ones are not available inside mail's header.
X
XREAD/WRITE LIST PROTECTION
X--------------------------
XEach mailing list can be configured to be read-only, write-only,
Xclosed or open. Inside /usr/rnalib/lst/chess (as in this example)
Xyou can create a 'status' file, containing status definitions.
XTwo definitions are actually available:
XR-CLOSED
XW-CLOSED
XThese definition should stay on a single line without a # (comment) ahead.
X
XR-CLOSED (read closed) :  users cannot read 'users'  file and thus know
Xwho's subscribed . 
XW-CLOSED : user's cannot subscribe / unsubscribe .
X
XOf course, messages are sent to remote users whenever they ask for 
Xunauthorized  commands inside a certain mailing list.
X
XTHE DEFAULT MAILING LIST
X------------------------
XThe DEFAULT list should contain a 'NOTE' file with a description of
Xall available mailing lists, and (if needed) also their 'status'.
X
X[ coming soon LISTSERV.GUIDE ]
X
X
XACCOUNTING
X==========
XA file $RNALIB/mail is keeping ALL mail received by rnalib.
XA file $RNALIB/account is keeping a logging of rnalib's activity.
X
X
XTHANKS FOR READING
X==================
XWe hope rnalib is what you were looking for. Concluding, please note 
Xthat 'anything coming free, comes with no warranty', and we assume no
Xresponsability for whatever damage/problem/network-traffic this
Xsoftware might cause.
X
Xventa at i2ack and marlor at gear
X   .sublink.ORG		
X
XMilano, Bologna
XFebruary, 1991
XSublink Network, Italy
X
X-----------------------------------------------------------------------the end
zXqzXqzXq
$TOUCH -am 0210183991 OPER.GUIDE &&
chmod 0644 OPER.GUIDE ||
echo "restore of OPER.GUIDE failed"
set `wc -c OPER.GUIDE`;Wc_c=$1
if test "$Wc_c" != "21505"; then
	echo original size 21505, current size $Wc_c
fi
# ============= CREDITS ==============
echo "x - extracting CREDITS (Text)"
sed 's/^X//' << 'zXqzXqzXq' > CREDITS &&
X------------------------------------------------------------------------------
X
X 			     RNALIB 2.2  
X                 
X            Copyright (c) 1989,1990,1991 by Paolo Ventafridda
X
X
X                                      ***    **       *            
X                                      **            **            
X          ****   ** ***   ****       **   ***     *****   *****  
X        **  **   *** ** **  **   *****    **      **    **      
X       **       **  ** ******  **  **    **      **     ****   
X      **  **   **     **      **  **    **      ** *      **  
X      ****   ****     ****    *** **  ****      **   *****   
X	                 (Who Wrote It?)
X
X
XThe RNALIB software was developed to be used inside the italian uucp
Xnetwork 'sublink' as automatic source for documents, papers, maps,
Xand also for 'netware'. A first release of RNA (1.0) was distributed
Xinside comp.sources.misc in August 1989; that relase has little to
Xshare with the 2. I got a copy of 'netlib' software from AT&T, and
Xi kept their best ideas while designing the 2.0 . I want to point out
Xthat NO part of netlib was used, copied or cloned, except for some
Xkind of messages (thanks at&t grammars!). Actually RNA 2.2 might look
Xlike netlib, from the user point of view.
X
X
X                       Special Credits to:
X
X         -----------------------------------------------------
X       Marco Lorenzini, Bologna, Italy  (marlor at gear.sublink.org)
X         -----------------------------------------------------
X	             Co-author of the program
X
X     He took the beta development since 2.0 beta 1.11. That version
X     was 33K long...
X     Contributed with precious extensions for file compression and 
X     uusend/uucp usage through the 'via' field. He also took care
X     of file splitting with shar, file conversions and deep beta
X     testing.
X
X
XCredits also to:
X
X- Lele Gaifas, Rovereto, Italy	 (lele at idea.sublink.org)   
X
X	sep.89
X	Contributed with 'PrintSumm', 'CutMail', 'ListLib'
X	'StripPermAndLink' and with many good ideas, following the project
X	from very close. 
X
X- Enrico Palmerini, University of L'Aquila, Italy. (palmer at univaq.sublink.org)
X
X
XFinally, credits are given to Kent Landfield (uunet!ssbell!kent)
Xfor the 'Copyright' notice taken from its 'rkive' program, and to
XEric Grosse (ehg at research.att.com), author of the latest (?) version of
X'netlib', AT&T labs. I could not install 'netlib', and i found
Xthe documentation pretty hostile; that's why i made 'rna' ;-)
XThough rna was made from scratch, i would consider netlib the logic
Xfather of rnalib; i took some messages from netlib/mess which i 
Xfound useful, along with some other good ideas. Header parsing was
Xdeducted from RFC822. 
X
XRna 2.0 basic utilities were ready in september 1989. At that time 
XRNA was a 19K shell script; i thought to be closed to the final version
Xwhen i found serious problems inside the code. I got sick of the shell
Xand decided to give up for a while. I started back working on the
Xshell script in january 90; it might sound stupid for a shell program,
Xbut i found it hard to patch and to get to a working version. The 19K
Xcode was now 33K long; rnalib 2.0 was at its beta version 1.09.
XThen came Marco (marlor at gear.sublink.org), and we started working
Xtogether on the project, using e-mail for xchanging ideas and routines.
XWe got to beta release 1.16 in March 1990. Then i married, then it was
Xvacation's time, and finally we got to 1.17 which was the 2.0 version.
XSince october 1990 we've been working pretty hard on the code, doing
Xbug-fixing and a lot of improvements, following suggestions from the
Xnet people. We added splitting, file conversions, mailing lists
X(listserv), and the RRJP job processor.
X
XThis is probably the longest shell script i will ever write in my life;
Xprobably the last one also... I did my best to make it readable and 
Xstructured; there are a lot of comments which i hope someone will read ;-)
X
X			Paolo Ventafridda
X			venta at i2ack.sublink.org
X			september 1990/february 1991
X
XHISTORY
X-------
X
XJul 89		Beta testing 1.0
XAug 89		RNA 1.0 in comp.sources.misc
XSep 89		basic utilities for the 2.0
XJan 90		final hacks on the source
XFeb 90		Beta testing 2.0, marlor at gear adds new features
XMar 90          2.0 beta 1.16: 52K of code. Added 'pathsizing'.
XApr 90		sco Unix working release by marlor. Start of docs..sigh
X--- 		pause
XSep 90		RNA 2.0 in comp.sources.misc
XOct 90		RNA 2.0 rev.B  in comp.sources.misc
XNov 90		working on the 2.2 concepts
XDec 90		fixed a lot of small problems inside 2.0B (2.1)
XJan 91		hard work on listserv, rrjp, split
XFeb 91		Beta testing 2.2
X
X
X
X
X------------------------------------------------------------------------------
zXqzXqzXq
$TOUCH -am 0206183991 CREDITS &&
chmod 0644 CREDITS ||
echo "restore of CREDITS failed"
set `wc -c CREDITS`;Wc_c=$1
if test "$Wc_c" != "4676"; then
	echo original size 4676, current size $Wc_c
fi
# ============= MAKE_RNA ==============
echo "x - extracting MAKE_RNA (Text)"
sed 's/^X//' << 'zXqzXqzXq' > 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 "\
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"
zXqzXqzXq
$TOUCH -am 0209012691 MAKE_RNA &&
chmod 0755 MAKE_RNA ||
echo "restore of MAKE_RNA failed"
set `wc -c MAKE_RNA`;Wc_c=$1
if test "$Wc_c" != "1384"; then
	echo original size 1384, current size $Wc_c
fi
# ============= PROBLEMS ==============
echo "x - extracting PROBLEMS (Text)"
sed 's/^X//' << 'zXqzXqzXq' > PROBLEMS &&
X
X------------------------------------------------------------------------------
X
X	                                lll      ii    bbb     
X        	                        ll             bb     
X	     rr rrr  nnnnn    aaaa     ll     iii     bb     
X	     rrr rr nn  nn      aa    ll      ii     bbbbb  
X	    rr  rr nn  nn   aaaaa    ll      ii     bb  bb 
X	   rr     nn  nn  aa  aa    ll      ii     bb  bb 
X	 rrrr    nn  nn   aaa aa  llll    iiii   bb bbb    (c)
X
X 			     RNALIB 2.2  
X 
X            Copyright (c) 1989,1990,1991 by Paolo Ventafridda
X
X               Operator's Guide: Bugs & Problems Hunting
X               =========================================
X
XThis document contains reports from beta-testers and rna operators;
Xcommon problems and possible solutions for various hardware/software
Xconfigurations. Please submit your reports to  venta at i2ack.sublink.org.
X
X
X
X---
X
XBETATESTERS: the 2.2 fixed all the configuration problems of the 2.0 revB
XWe experienced that usually major problems are coming from the MAILER
Xyou are using. Subject disappears, strange things happen etc.
XThat's something we can fix together.
X
XPlease give a description of your problems and a solution, if any.
XDon't send big 'diffs' since they are related to versions of RNA
Xwhich are going to be obsoleted.
XIn any case, report:
X1) hardware in use
X2) operating system/release
X3) your mailing system (ex: smail 3.1 + deliver, sendmail, MMDF, whatever)
X3) rna release referring to
X
XThanks a lot, any contribution is welcome.
XRemember not to post too much stuff cause i pay for the traffic ;-(
X
X-- Paolo
zXqzXqzXq
$TOUCH -am 0210182991 PROBLEMS &&
chmod 0644 PROBLEMS ||
echo "restore of PROBLEMS failed"
set `wc -c PROBLEMS`;Wc_c=$1
if test "$Wc_c" != "1587"; then
	echo original size 1587, current size $Wc_c
fi
# ============= README.FIRST ==============
echo "x - extracting README.FIRST (Text)"
sed 's/^X//' << 'zXqzXqzXq' > README.FIRST &&
X
XRNALIB 2.2 - February 1991
X
XHello. Start from OPER.GUIDE. Don't panic, it won't take long.
XI hate long docs too ;-)
X
X			Paolo
X
X
zXqzXqzXq
$TOUCH -am 0210183091 README.FIRST &&
chmod 0644 README.FIRST ||
echo "restore of README.FIRST failed"
set `wc -c README.FIRST`;Wc_c=$1
if test "$Wc_c" != "129"; then
	echo original size 129, current size $Wc_c
fi
# ============= black ==============
echo "x - extracting black (Text)"
sed 's/^X//' << 'zXqzXqzXq' > black &&
X# Blacklist file for RNA 2.2 - comments start with a #
X# ---------------------------------------------------------------
X# >>>> WARNING: NEVER USE <TABS> HERE!!! CAUTION! BEWARE! <<<<
X# This file is the 'BLACKLIST' one mentioned inside RNA configuration.
X# Usually it should be inside RNADIR and called 'black'.
X# RNA always looks at his mail headers and greps out a 'uucp path'.
X# If this 'path' contains ANY of the following words, that origin is
X# considered 'blacklisted' and requests are denied (rejected).
X# You can blacklist users, systems, networks... If you put a simple
X# '!' on a single line, RNA will reject all requests coming from the
X# UUCP worlds. If you want to blacklist a backbone but NOT its sub-hosts,
X# you necessarily need to specify users inside that backbone with lines
X# such as 'host!user1'  'host!user2' etc.
X# If you simply specify 'host' than all sites coming through that host
X# will match the blacklist and won't be accepted.
X# Do NOT put *any empty line: a blank line is taken as end-of-file 
X# by RNA, and all the rest is ignored. Beware...
X# Everything is case-sensitive here. 
X#
Xbadhost!baduser
Xbadgateway
zXqzXqzXq
$TOUCH -am 0210183191 black &&
chmod 0644 black ||
echo "restore of black failed"
set `wc -c black`;Wc_c=$1
if test "$Wc_c" != "1142"; then
	echo original size 1142, current size $Wc_c
fi
# ============= deliver.sh ==============
echo "x - extracting deliver.sh (Text)"
sed 's/^X//' << 'zXqzXqzXq' > deliver.sh &&
X:
X# Deliver script for RNALIB 2.0  	- by  venta at i2ack.sublink.org
X#
X# This script is for the 'deliver' mail package by Chip Salzenberg.
X# Put it inside rnalib home directory as .deliver, and you will get
X# sequential processing of RNA mail, instead of parallel ones.
X# Carefully check everything is ok, or your system will get a bunch
X# of dangerous sessions spreading around as hells.
X# Note#1: Chip has sent out new patches for his 'deliver'. Maybe if
X#         you have this new release something will not work, or 
X#         (probably) will work much better ;-)
X#
X# Note#2: THIS SCRIPT IS NOT SUPPORTED. It was written months ago
X#         while trying to find a solution in order to run RNA on a
X#         286 system. The 286 shell shouts and dies running RNA.
X#         When RNA was not as big, still there was a chance to make it
X#         work without core dumps (!). This is just an example of
X#         how 'deliver' can be used with rna. It's an old example,
X#         found in an old directory of an old release of RNA.
X#         So take it as a simple idea of how to do it.
X#         If you run 'deliver' you could use it for having RNA processing
X#         incoming mails 'realtime'. This script is supposed to process
X#         them once at a time. 
X#
Xuser=$1
X# MAILBOX=/usr/local/usr/rnalib/box
X
X# create your own lock
Xtouch $HOME/lock.$$
X
X# how many delivers pending?
Xset `ls -l $HOME/lock.* 2>/dev/null | wc -l`
X
X# determine a syncronization wait time; if your system is *fast, then
X# higher the multiply factor
Xsync_time=`expr $1 \* 3`
X
X# first attempt to queue
Xsleep $sync_time
X
X# does a queue exist?
Xwhile test -r $HOME/lock
Xdo
X#	wait until your turn
X	sleep $sync_time
Xdone
X
X#	My turn now!
Xtouch $HOME/lock
Xdate >>account
X# If the next line is  creating stdin errors...
Xcat $HEADER $BODY | deliver -n "$user" 
X# .. jump over the pipe and do it your way!
X# cat $HEADER $BODY >>$MAILBOX
X
X# If you use 'deliver -n' then higher sleep time in order to let deliver
X# complete its mailing, or RNA won't find anything to process!
Xsleep 5
X
X# force an RNA session
X/bin/sh /usr/local/usr/rnalib/RNA 
X
X# remove queue lock: a new RNA session will start
Xrm $HOME/lock 2>/dev/null
X
X# Sleep again to assure that new delivers don't get an already used sync_time.
X# This way it will be harder to happen.
Xsleep $sync_time
Xrm $HOME/lock.$$
X
X# quit living and forget about any further delivery please!
X# ("Trust me, i know what i am doing..")
Xecho "DROP"
zXqzXqzXq
$TOUCH -am 0210165591 deliver.sh &&
chmod 0644 deliver.sh ||
echo "restore of deliver.sh failed"
set `wc -c deliver.sh`;Wc_c=$1
if test "$Wc_c" != "2455"; then
	echo original size 2455, current size $Wc_c
fi
# ============= libindex ==============
echo "x - extracting libindex (Text)"
sed 's/^X//' << 'zXqzXqzXq' > libindex &&
X# Library Index file for RNA 2.2 - comments start with a #
X# ---------------------------------------------------------------
X# This file is the 'LIBIND' one mentioned inside RNA configuration.
X# Usually it should be inside RNADIR and called 'libindex'.
X# You need at least one 'home' directory for the RNA-USER; this 
X# directory is the one were rna will look for HELP, INDEX etc. whenever
X# the request did not specified a library. It's also called
X# 'system library' (do not misconfuse with RNADIR, which is the
X# administrator's library).
X# So the 'system library' HAS to be called 'DEFAULT'.
X# You can choose different library names for the same paths, no problem.
X# WARNING: do NOT use TABS as field separators!
X#
X# Examples:
X# DEFAULT /usr/rnalib/lib/system
X# system  /usr/rnalib/lib/system
zXqzXqzXq
$TOUCH -am 0206181491 libindex &&
chmod 0644 libindex ||
echo "restore of libindex failed"
set `wc -c libindex`;Wc_c=$1
if test "$Wc_c" != "797"; then
	echo original size 797, current size $Wc_c
fi
# ============= lstindex ==============
echo "x - extracting lstindex (Text)"
sed 's/^X//' << 'zXqzXqzXq' > lstindex &&
X# List Index file for RNA 2.2 - comments start with a #
X# ---------------------------------------------------------------
X# This file is the 'LSTIND' one mentioned inside RNA configuration.
X# Usually it should be inside RNADIR and called 'lstindex'.
X# You can choose different list names for the same paths, no problem.
X#
X# The first field is the (case sensitive) mailing-list name.
X# The second field is the full path to its home directory.
X# Empty lines and lines beginning with a # are not considered.
X# The 'DEFAULT' list is the one chosen by a simple @@ subscribe
X# i.e. a signon without a defined mailing list.
X#
X# WARNING: do NOT use TABS as separators!!
X# Files and directories are owned by rnalib, remember.
X#
X# Examples:
X# DEFAULT /usr/rnalib/lst/sys
X# system  /usr/rnalib/lst/sys
X## As you see, these commands have the same effect:
X## @@ signon , @@ signon DEFAULT , @@ signon system
X#
zXqzXqzXq
$TOUCH -am 0210163391 lstindex &&
chmod 0777 lstindex ||
echo "restore of lstindex failed"
set `wc -c lstindex`;Wc_c=$1
if test "$Wc_c" != "897"; then
	echo original size 897, current size $Wc_c
fi
# ============= pathsize ==============
echo "x - extracting pathsize (Text)"
sed 's/^X//' << 'zXqzXqzXq' > pathsize &&
X# Pathsize file for RNA 2.2 - comments start with a #
X# ---------------------------------------------------------------
X# >>>> WARNING: NEVER USE <TABS> HERE!!! CAUTION! BEWARE! <<<<
X# This file is the 'PATHSIZE' one mentioned inside RNA configuration.
X# Usually it should be inside RNADIR and called 'pathsize'.
X# This is a two-fields database: first field is a uucp path.
X# >Same rules as for 'black' (blacklistings)  and 'white' apply here.
X# The second field of each line is called 'credits', and it's the
X# number of bytes allowed to be transmitted toward that path.
X# When 'credits' is 0 or a negative number, RNA will reject requests
X# and notify origin about this matter.
X# This database is updated automatically by the program; however you
X# can change with an editor all fields, and add new ones.
X# Please take care:
X# - do not use <TABS> as field separators! (VERY IMPORTANT)
X# - if you want a host to be given infinite credit, put the word
X#   'UNLIMITED' as credits.
X#
X# path    credits (in bytes)  example:
X# gear!marlor  9000000 
X# host!friend  UNLIMITED
X#
zXqzXqzXq
$TOUCH -am 0206181791 pathsize &&
chmod 0644 pathsize ||
echo "restore of pathsize failed"
set `wc -c pathsize`;Wc_c=$1
if test "$Wc_c" != "1072"; then
	echo original size 1072, current size $Wc_c
fi
# ============= white ==============
echo "x - extracting white (Text)"
sed 's/^X//' << 'zXqzXqzXq' > white &&
X# Whitelist file for RNA 2.0		- comments start with a #
X# ---------------------------------------------------------------
X# >>>> WARNING: NEVER USE <TABS> HERE!!! CAUTION! BEWARE! <<<<
X# This file is the 'WHITELIST' one mentioned inside RNA configuration.
X# Usually it should be inside RNADIR and called 'white'.
X# RNA always looks at his mail headers and greps out a 'uucp path'.
X# If this 'path' contains ANY of the following words, that origin is
X# considered 'privileged' and the sender can specify alternate output
X# destination (see 'external destinations' inside RNA user's guide).
X# Do NOT put *any empty line: a blank line is taken as end-of-file 
X# by RNA, and all the rest is ignored. Beware...
X# Same rules as for 'black' (blacklistings) apply here.
X#
Xyourname
Xtrusthost!trustuser
zXqzXqzXq
$TOUCH -am 0206182391 white &&
chmod 0644 white ||
echo "restore of white failed"
set `wc -c white`;Wc_c=$1
if test "$Wc_c" != "793"; then
	echo original size 793, current size $Wc_c
fi
# ============= helpfiles ==============
echo "x - extracting helpfiles (Text)"
sed 's/^X//' << 'zXqzXqzXq' > helpfiles &&
X#!/bin/sh
X# This is a shell archive (shar 3.24)
X# made 02/10/1991 16:39 UTC by rnalib at otello
X# Source directory /usr/local/src/rnalib/help
X#
X# existing files WILL be overwritten
X#
X# This shar contains:
X# length  mode       name
X# ------ ---------- ------------------------------------------
X#   1154 -rw------- aliases
X#   5047 -rw------- commands
X#   3425 -rw------- external
X#   1156 -rw------- help
X#   4623 -rw------- listserv
X#     98 -rw------- me
X#  19930 -rw-r--r-- rnalib
X#
Xif touch 2>&1 | fgrep '[-amc]' > /dev/null
X then TOUCH=touch
X else TOUCH=true
Xfi
X# ============= aliases ==============
Xecho "x - extracting aliases (Text)"
Xsed 's/^X//' << 'SHAR_EOF' > aliases &&
XX
XX             =============================================
XX             R N A L I B    C O M M A N D    A L I A S E S 
XX             =============================================
XX
XXBeing "command" the official keyword, the following case-combinations
XXare usually supported by the rnalib parser:  COMMAND Command COM com
XX
XXAside official keywords, there are a lot of aliases. Here comes a list.
XX
XX--------------+--------------------------------
XXToken/Keyword		Alias
XX--------------+--------------------------------
XX
XXcompress		compr
XXcompress-btoa		compr-btoa
XXcompress-uuencode	compr-uuenc
XXcredit			credits
XXfind			search
XXfindme			listme, where
XXfrom			inside, in
XXhelp			hilfe, info, aled, aiuto
XXlharc-uuencode		lharc-uuenc
XXlindex			llist
XXrelease			version
XXreview			members
XXsend			get, sendme, take, pick
XXsignon			sub, subscribe, signup
XXsignoff			uns, unsub, unsubscribe
XXto			to:
XXuuencode		DEFAULT, encode, ASCII
XXvia			over, through
XXwith			using
XXzoo-uuencode		zoo-uuenc
XX
XX
XXThese words are skipped if found before a @@ or inside a command line:
XX
XX		please
XX		hello 
XX		do
XX		subject
XX		action
XX
XX-------------------------------------------------------------------------
XX
XX
XSHAR_EOF
X$TOUCH -am 0206153391 aliases &&
Xchmod 0600 aliases ||
Xecho "restore of aliases failed"
Xset `wc -c aliases`;Wc_c=$1
Xif test "$Wc_c" != "1154"; then
X	echo original size 1154, current size $Wc_c
Xfi
X# ============= commands ==============
Xecho "x - extracting commands (Text)"
Xsed 's/^X//' << 'SHAR_EOF' > commands &&
XX
XX                  ==============================
XX                  R N A L I B    C O M M A N D S 
XX                  ==============================
XX
XXHere comes a list of commonly used RNALIB commands.
XX{ }   means parameter not necessary
XX[ ]   means parameter compulsory
XXCommands can be both upper and lower case; arguments ARE case-sensitive.
XXWe call 'origin' the  user/host who sent the query.
zXqzXqzXq
echo "End of RNALIB-22_b1 part 1"
echo "File helpfiles is continued in part 2"
echo "2" > shar3_seq_.tmp
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