home *** CD-ROM | disk | FTP | other *** search
- Subject: v08i040: UNaXcess Conferencing, version 1.00.02, Part04/04
- Newsgroups: mod.sources
- Approved: mirror!rs
-
- Submitted by: abic!cwruecmp!allbery%ncoast.UUCP
- Mod.sources: Volume 8, Issue 40
- Archive-name: unaxcess2/Part04
-
- #--------------------------------CUT HERE-------------------------------------
- #! /bin/sh
- #
- # This is a shell archive. Save this into a file, edit it
- # and delete all lines above this comment. Then give this
- # file to sh by executing the command "sh file". The files
- # will be extracted into the current directory owned by
- # you with default permissions.
- #
- # The files contained herein are:
- #
- # -rw-r--r-- 1 allbery System 19426 Feb 3 21:23 admin.man
- # -rw-r--r-- 1 allbery System 17697 Feb 3 21:24 guide.man
- # -rw-r--r-- 1 allbery System 9016 Feb 3 21:25 install.man
- #
- echo 'x - admin.man'
- sed 's/^X//' << '________This_Is_The_END________' > admin.man
- X'''
- X''' @(#) admin.man 1.2 (TDI) 2/3/87
- X''' This file is part of UNaXcess Conferencing 1.0.2.
- X'''
- X.ds U \fBUNaXcess\fR
- X.TH ADMIN LOCAL UNaXcess
- X.SH NAME
- Xadmin - \*U administration procedures
- X.SH SYNOPSIS
- Xua sysop
- X.br
- Xmvmsg conference[/msg] ... conference[/msg]
- X.SH "\*U Administration"
- X\*U administration has advanced from the earlier versions, but is still a
- Xtricky affair in many cases. Bulletin management has been embedded in \*U,
- Xand file UDL administration is coming soon. However, much administration must
- Xstill be carried out from the shell.
- X.P
- XSystem administration consists of the following procedures:
- X.de LS
- X.in +10
- X.ll -5
- X.sp
- X.ns
- X..
- X.de LI
- X.sp
- X.ti -5
- X\fB\\$1\fR \-
- X..
- X.de LE
- X.sp
- X.in -10
- X.ll +5
- X.ns
- X..
- X.de BS
- X.in +5
- X.ll -5
- X.sp
- X.ns
- X..
- X.de BI
- X.sp
- X\fB\o'o+'\fR \fI\\$1\fR
- X.br
- X..
- X.de BE
- X.sp
- X.in -5
- X.ll +5
- X.ns
- X..
- X.BS
- X.BI "User Administration"
- X.BI "Message Base Administration"
- X.BI "Bulletins"
- X.BI "File UDL Administration"
- X.BI "Fairwitnessing"
- X.BE
- X.SH "1. User Administration"
- XUser administration consists largely of validating new users and restricting
- Xthose who violate the local rules. The primary commands for this are:
- X.LS
- X.LI A
- XAlter users. The administration options for the Alter command are: Name,
- XPassword, Access, line Size, Lines/screen, UNIX user name, default
- XConference, Kill user, Finished, and Quit. For the New User access level, the
- Xoptions are: Name, Password, Access, Kill, Finished, Quit, and Default access.
- X.LI W
- XList users. The administrative option displays the user's full address and
- Xphone number for validation purposes.
- X.LE
- XThe full options to the Alter command are described below.
- X.LS
- X.LI N
- XChange the user's name. Previous versions of \*U created a new user under
- Xthis option; the current version only changes the user's name. Standard \*U
- Xnaming rules are enforced: a name may not be more than 32 characters, and may
- Xnot contain colons.
- X.LI P
- XChange the user's password. A password must be 3-8 characters long. It is
- XNOT verified; however, the password is displayed openly. This practice is
- Xdebatable.
- X.LI A
- XChange the user's access level. Valid access levels are described below.
- XOnly the Sysop may assign or revoke Fairwitness access.
- X.LI D
- XFor New User access, the D command sets the default access level for new
- Xusers. Usually, this access level will be Denied or Guest for validating
- Xsystems, or Messages for open systems. New User and Fairwitness access may
- Xnot be assigned as the default access level.
- X.sp
- XFor all other access levels, the D command sets the default conference,
- Xsimilar to the D command on the Message Base menu (see the \*U User's Guide).
- XThe conference is checked against the user's subscription list.
- X.LI U
- XThis command sets the user's UNIX login name. At present, this field is
- Xcommentary; in the future, it may be used to permit access from the shell.
- XIt will be used for UANet when it is released.
- X.sp
- XThis command is not available if the user's access is New User.
- X.LI L
- XThis command sets the number of lines on the user's screen. This number must
- Xbe between 0 and 66; a value of 0 disables \*U's internal paging.
- X.sp
- XThis command is not available if the user's access is New User.
- X.LI S
- XThis command sets the number of characters per line. This number must be
- Xbetween 40 and 132. The lower limit may be changed to 32 or even 20 in the
- Xfuture; the upper value is unlikely to change.
- X.sp
- XThis command is not available if the user's access is New User.
- X.LI K
- XThis command deletes (kills) the user from the \*U userfile. It asks for
- Xconfirmation before doing so; if it does delete the user, an immediate exit
- Xfrom Alter is performed.
- X.sp
- XNo user may Kill himself, the Sysop included.
- X.LI Q
- XThis command causes the Alter command to be aborted. New user creations will
- Xalso not be performed. It asks for confirmation before aborting.
- X.sp
- XIf a Fairwitness examines another Fairwitness, Quit is the only valid command;
- Xand it does not ask for confirmation.
- X.LI F
- XFinished. This command encrypts the password if it was changed, and saves the
- Xuser's userfile information.
- X.LE
- XThree things should be noted about the Alter command:
- X.LS
- X.LI 1
- XNo user may Kill himself; and
- X''' OOPS! Changed 2/3/87 ++bsa
- X.LI 2
- XNo Fairwitness (except the Sysop) may change anything about another
- XFairwitness.
- X''' OOPS! 3 lines deleted, 1 line changed 2/3/87 ++bsa
- X.LE
- XA fairwitness (or the Sysop) can create another user by naming hir; if the
- Xuser doesn't exist, s/he will be asked if s/he wishes to create a new user.
- X.P
- XThe other major command used in user administration is the V command from the
- XAdministration menu. This command looks up the current default access level
- Xfor new users and displays the information for each user who has this access.
- XYou are given the option to Validate the user for another access level, Hold
- Xhir at the current access level, Kill the user, Deny the user access, or
- Xexecute a subshell. (The latter option is most useful in checking to see if a
- X\*U user is also a shell user, for the purpose of validating a user for System
- Xaccess. Note that later versions of \*U will use the Unix user information,
- Xso every user's stated Unix login name should be checked.) After all users
- Xhave been presented, they will be validated according to the access level
- Xgiven.
- X.SH "2. Message Base Administration"
- XVery little message base administration has been implemented within \*U at
- Xpresent. The functions of message base administration are: creation and
- Xdeletion of conferences, deletion of messages, relocation of messages,
- Xcreation and maintenance of read-only conferences, and conference restriction.
- X.P
- XCreation of conferences is described under the Join command of the Message
- XBase Menu in the \*U User's Guide. One modification is permitted for
- XFairwitnesses: they may designate a conference with the prefix ``R-'', which
- Xwill be treated as a read-only conference; only Fairwitnesses may post
- Xmessages to it. (This option must be enabled in the configuration file; see
- X"Configuration" below.)
- X.P
- XDeletion of conferences has not been implemented within \*U as yet; for the
- Xsecurity system to work, a setuid-root program would have to be created to do
- Xit, and as yet the "mkconf" program used for conference creation has not
- Xgained widespread approval. (The author considers it safer than a setuid-root
- X\*U, however.)
- X.P
- XDeletion of messages may be done from \*U; however, the author has found that
- Xthe best way to "strip" a conference of old messages is the command:
- X.sp
- X.ce
- Xfind msgdir -mtime +30 -print | xargs rm
- X.sp
- XThis option (delete all old messages) may be added to \*U in the future;
- Xhowever, it is certain that some sites may wish to use different criteria for
- Xmessage deletion.
- X.P
- XRelocation of messages may only be performed from the shell by the owner of
- X\*U. The command "mvmsg" is used, with two different syntaxes.
- X.LS
- X.LI 1
- Xmvmsg conference/msg conference
- X.br
- XMove the specified message to the specified conference. It is installed in
- Xthe destination conference as if it were a new message.
- X.LI 2
- Xmvmsg conference conference
- X.br
- XMove all messages from the source conference to the destination; all messages
- Xare installed in the destination conference as if they were new messages.
- XThis command also deletes the source conference
- X.IR "if \fBmvmsg\fI is not setuid" .
- XA setuid
- X.B mvmsg
- Xis not recommended, as this permits any user to relocate messages.
- X.LE
- X.P
- XConference restriction is performed via the E command of the Administration
- XMenu. It is restricted to Fairwitnesses who are members of the restricted
- Xconference, and to the Sysop. Only the Sysop may restrict or de-restrict a
- Xconference.
- X.P
- XAny conference may be restricted. Restriction causes a conference to be
- Xrestricted only to members; non-members cannot Join it, and the conference
- Xwill be silently skipped by the New command of the Message Base menu. All
- XFairwitnesses are members of restricted conferences in that they may enter
- Xand delete messages; however, they must be explicitly named as members in
- Xorder to modify restrictions.
- X.P
- XThe Edit command is used to edit restrictions. Only Fairwitnesses and the
- XSysop may execute the Edit command. On start-up, it asks for the conference
- Xto edit; if the conference is not restricted, Edit permits the Sysop to
- Xrestrict it. Fairwitnesses will be returned to the Administration menu. The
- XSysop must confirm the restriction of a conference. Fairwitnesses who Edit a
- Xconference to which they are not members will be shown the membership list and
- Xreturned to the Administration menu.
- X.P
- XThe Edit commands are as follows:
- X.LS
- X.LI L
- XList conference membership. This command displays the membership list for the
- Xconference.
- X.sp
- XThis command is automatically executed for Fairwitnesses who are non-members;
- Xthe Edit command then exits.
- X.LI A
- XAdd a member to the conference. A user name is read; it is then added to the
- Xmembership list if it is not already listed as a member.
- X.LI D
- XDelete a member from a conference. A user name is read; if it is a member of
- Xthe conference, it is deleted from the membership list.
- X.LI S
- XThis command exits the Edit command. It does not save changes; the A and D
- Xcommands directly affect the membership list.
- X.LI C
- XThis command de-restricts a conference. The membership list is deleted, and
- Xthe conference becomes unrestricted.
- X.sp
- XOnly the Sysop may Clear a conference restriction.
- X.LE
- X.SH "3. Bulletins"
- XBulletins are created via the B command. It works similarly to the E command
- Xof the Message Base menu, but posts to the bulletin directory. There is no
- Xway to delete a bulletin as yet.
- X.P
- XThere is one special bulletin, the new user bulletin. There is as yet no way
- Xto create a new user bulletin; the simplest way is to create it as an ordinary
- Xbulletin and execute the command:
- X.sp
- X.ce
- Xcp motd/`cat motd/himotd` NewMessage
- X.sp
- XAll of this is subject to change in the future.
- X.SH "4. File UDL Administration"
- XFile UDL is self-administering, except for access permissions and installation
- Xof uploaded files in the download area. Access permissions are maintained as
- Xpart of user administration.
- X.P
- XThe primary reason for not installing uploaded files is that there is no easy
- Xway to check such files for "trojan horse" programs from within \*U.
- XTherefore, upload administration is a shell task.
- X.P
- XA File UDL area consists of two files and two directories. For each branch,
- Xthere exists a directory within the
- X.B library
- Xdirectory where downloadable files reside. If uploading is to be permitted, a
- Xdirectory must be created within the
- X.B uploads
- Xdirectory. Neither is possible from within \*U; the
- X.B mkconf
- Xprogram is too restricted. (See the discussion of conference deletion
- Xabove.) There are also two global files:
- X.LS
- X.LI directory
- XThis file contains definitions for each branch of the File UDL library and for
- Xeach downloadable file within the Library.
- X.LI upload-log
- XThis file contains definitions for each branch allowing uploading, as well as
- Xinformation about uploaded files.
- X.LE
- XThe
- X.B directory
- Xand
- X.B upload-log
- Xfiles have the same format: one line for each branch or file definition. The
- Xformat of a definition is:
- X.sp
- X.ce
- Xbranch \fBfile\fR id; date \fBby\fR user: description
- X''' OOPS! Above line fixed 2/3/87 ++bsa
- X.sp
- XThe words
- X.B file
- Xand
- X.B by
- Xare required, as is the punctuation; however, the description may be any
- Xarbitrary ASCII text.
- X.P
- X.B Branch
- Xis the name of the branch being defined or containing the file being defined.
- X.P
- X.B Id
- Xis a file name, if a file is being defined. If a branch is being defined, it
- Xis the reserved word
- X.BR branch .
- X.P
- X.B Date
- Xis a date delimited by spaces; it is usually of the form
- X.IR mm/dd/yy ,
- Xalthough nothing requires this; it is displayed as text.
- X.P
- X.B User
- Xis a user name. It need not be a \*U user name, although it must follow the
- Xsame rules.
- X.P
- X.B Description
- Xis any text. It should be limited to 50 characters or less.
- X.P
- XOnce an uploaded file has been validated, it should be relocated from the
- X.B upload
- Xdirectory to the
- X.B library
- Xdirectory; the corresponding line in
- X.B upload-log
- Xshould be appended to the
- X.B directory
- Xfile.
- X.SH "5. Fairwitnessing"
- XThe art of Fairwitnessing is still new. In principle, a Fairwitness is
- Xcapable of anything the Sysop can do, except that s/he may not administer
- Xother Fairwitnesses in any way.
- X.P
- XIn practice, a Fairwitness is envisioned as a person in charge of a conference
- Xor group of conferences, acting as a stimulator of discussion. Hir functions
- Xinclude summarizing previous messages for new participants, pointing out
- Xunnoticed relationships between parts of a discussion or between a discussion
- Xand other things/events, asking questions or making statements in order to
- Xstimulate discussion, et cetera. A good Fairwitness should aid a discussion,
- Xnot hinder it; censorship is against all principles of Fairwitnessing. Any
- Xopinion should be permitted voice; the more "contrary" to previous discussion,
- Xthe better, as such opinions force the mind to stretch.
- X.P
- XThere are two potential problems awaiting a Fairwitness. The first is the
- Xone-sided discussion; such discussions are meaningless. The best way to deal
- Xwith this is for the Fairwitness to throw a dissenting or contradictory
- Xopinion into the pot and demonstrate a rationale for it; with multiple
- Xviewpoints, the conference is much livelier.
- X.P
- XThis, however, makes possible the other extreme, as is often seen on the
- XUsenet and other large conferencing systems: some user or group of users
- Xconspire to voice their opinion loudly, and hurl insults at anyone who dares
- Xto voice dissent. Experience has shown that the best way to deal with such
- Xusers is user administration; set the offending user's access to Denied.
- XHowever, this is contradictory to freedom of speech (despite the fact that the
- Xusers' actions are themselves contradictory to it); limited success has been
- Xachieved by way of ridicule and other techniques. It should be noted that
- Xif a lack of discussion is evident, it may be a symptom of censorship; a
- XFairwitness's biggest job is to strike at censorship whernever it rears its
- Xugly head.
- X.P
- XThe original concept of the Fairwitness comes from the Fair Witness of Robert
- XA. Heinlein's book,
- X.IR "Stranger in a Strange Land" .
- XHowever, while Heinlein's Fair Witnesses were observers only, unable to voice
- Xopinions, the purpose of a Fairwitness is to voice opinions as necessary
- X.IR "to stimulate free speech" .
- XS/he must not attempt to "control" a discussion; s/he should fuel it, and let
- Xit evolve on its own, unless it begins to die out or become limited.
- X.P
- XThe job of a Fairwitness is the most difficult of all administration duties;
- Xit is also the most important. A Fairwitness can \- literally \- make or
- Xbreak a \*U system.
- X.SH Configuration
- XConfiguration is another task that must be performed from the shell. The \*U
- Xinstallation script does some configuration, but the Sysop may decide to alter
- Xthe configuration later on.
- X.P
- XThe \*U configuration is stored in an ascii file named
- X.BR ua-config .
- XThis file may be edited with an ordinary text editor, unlike bulletin and
- Xmessage files. It consists of lines of the form:
- X.sp
- X.ce
- Xvariable value
- X.sp
- XThe variables understood by \*U are:
- X.LS
- X.LI bbs-directory
- Xstring
- X.br
- XThis is the directory containing the \*U working files and message base. This
- Xallows the Sysop to be an ordinary UNIX user, with only the
- X.B ua-config
- Xfile within hir directory. If the NOAUTOPATH directive was used when \*U was
- Xcompiled, this is the only way to change the directory used by \*U.
- X.sp
- XThe default value is the home directory of the owner of \*U.
- X.LI readonly
- Xboolean
- X.br
- XThis variable indicates whether read-only conferences are permitted in the \*U
- Xsystem. The default is FALSE.
- X.LI restricted
- Xboolean
- X.br
- XThis variable indicates whether conference restriction is permitted within
- X\*U. The default is FALSE.
- X.LI shell
- Xshell
- X.br
- XThis variable is the shell executed by the C command. The default is /bin/sh.
- X.LI read-env
- Xboolean
- X.br
- XThis variable indicates whether the
- X.I shell
- Xvariable may be overridden by the environment variable
- X.IR SHELL .
- XThe default is FALSE.
- X.LI bbs-user
- Xstring
- X.br
- XThis variable is a comma-separated list of UNIX users who cannot use the
- Xdirect shell login feature. This prevents new users from creating security
- Xproblems by naming themselves by UNIX logins for which \*U is the shell.
- XThe default is the empty string.
- X.LI time-limit
- Xnumber
- X.br
- XThis variable indictates the time limit in minutes for \*U users. The time
- Xlimit does not apply to the Sysop. A time-lmit of 0 means that there is no
- Xtime limit.
- X.sp
- XThe default time-limit is 30 minutes.
- X.LI sysop
- Xstring
- X.br
- XThis variable contains the Sysop's \*U user name. This provides a flexibility
- Xfound in few other conferencing systems; the sysop may have any valid \*U
- Xname. Note, however, that the \*U user named must exist and have Fairwitness
- Xaccess level to qualify as a Sysop.
- X.sp
- XThe default is "sysop".
- X.LI private-msgs
- Xboolean
- X.br
- XThis variable indicates whether private messages are permitted. The default
- Xis FALSE.
- X.LI loggin
- Xboolean
- X.br
- XThis variable indicates whether full logging is to be enabled. New users,
- Xerrors, panics, and some other occurrences are always logged. The default is
- XFALSE.
- X.sp
- XWarning: the file
- X.B LogFile
- Xcan become quite large when logging is enabled.
- X.LI banner
- Xstring
- X.br
- XThis variable names a file which contains a banner to be printed when \*U
- Xstarts up. The empty string indicates that a built-in banner consisting of a
- Xcopyright message should be printed.
- X.sp
- XThe default is the empty string.
- X.LI login-msg
- Xstring
- X.br
- XThis variable is a string to be printed as the login prompt. The empty string
- Xindicates that the string,
- X.sp
- X.ce
- XEnter your user name, GUEST, OFF, or New:
- X.sp
- Xshould be printed.
- X.sp
- XThe default is the empty string.
- X.LI login-tries
- Xnumeric
- X.br
- XThis variable indicates the number of login attempts permitted before \*U
- Xexits. A value of 0 causes \*U not to count login attempts. The default is
- X3.
- X.LI udl-command
- XThere are six UDL commands, which are all of type string:
- X.BR ascii-upload ,
- X.BR ascii-download ,
- X.BR xmodem-upload ,
- X.BR xmodem-download ,
- X.BR kermit-upload ,
- Xand
- X.BR kermit-download .
- XEach may contain the escape sequence %s to indicate the location of the file
- Xname to be uploaded/downloaded; otherwise, the file name is appended to the
- Xend of the command string. An empty string denotes the lack of the
- Xcorresponding ability.
- X.sp
- XThe defaults use
- X.B cat(1)
- Xfor ASCII,
- X.B umodem(1)
- Xfor Xmodem, and C-Kermit for Kermit.
- X.LI validation-level
- XThis variable indicates the access level granted to new users. At the present
- Xtime, it is the internal access level code, as follows: 0 is the code for no
- Xaccess; 1 is Guest access; 2 is Messages access; 3 is File UDL access; 4 is
- Xsystem access. Access levels 5 and 6 (Fairwitness and New User) should
- X.B NEVER
- Xbe used.
- X.LE
- XVariables of type
- X.B string
- Xmay have as values single words without quotes, or any number of characters
- Xand spaces enclosed in double quotes. Variables of type
- X.B number
- Xmay have as values any number from 0 to 255. Variables of type
- X.B boolean
- Xmay have as values unquoted strings, case ignored, beginning with Y or T for
- Xtrue or with N or F for false.
- X.SH "Acknowledgements and Copyrights"
- XUNIX(R) is a registered trademark of AT&T.
- X.br
- XKermit is copyrighted by Columbia University.
- ________This_Is_The_END________
- echo 'x - guide.man'
- sed 's/^X//' << '________This_Is_The_END________' > guide.man
- X'''
- X''' @(#) guide.man 1.2 (TDI) 2/3/87
- X''' This file is part of UNaXcess Conferencing 1.0.2.
- X'''
- X.TH UA LOCAL UNaXcess
- X.ds U \fBUNaXcess\fR
- X.SH NAME
- Xua \- the \*U multi-user conferencing system
- X.SH SYNOPSIS
- Xua [\fI``username''\fB]
- X.SH DESCRIPTION
- XThe \*U conferencing system is a multi-user BBS-style message system.
- XCurrently it supports any number of user-created
- X.B conferences
- Xon any subjects, and a file up/download library with any number of branches.
- X.P
- X\*U may be run from the shell or as a UNIX(R) login. As a login shell, it
- Xprompts for a user name and a password (if applicable). There are usually
- Xsome special user names, such as
- X.I new
- Xand
- X.IR GUEST .
- XThe user name
- X.I off
- Xexits to the
- X.B login:
- Xprompt. From the shell, a user may specify his user name in quotes (to
- Xprotect spaces and special characters from the shell); or, if hir \*U user
- Xname is the same as hir UNIX login name, s/he will be logged in to \*U
- Xdirectly.
- X.P
- XOnce logged in, the user is shown the latest bulletins, then any new messages
- Xand new or deleted conferences are shown, followed by the main command prompt.
- XThis prompt shows the current conference and the time remaining (if time
- Xlimits are imposed), followed by the prompt
- X.sp
- X.ce
- XCommand (? for help):
- X.sp
- XAt this point, any of the \*U commands may be entered; see the
- X.B COMMANDS
- Xsection of this manual for more details.
- X.SH "NEW USERS"
- XThe user name
- X.I new
- Xis most often used to register new users. A new user will be shown the new
- Xuser bulletin (separate from the standard bulletins), and will be asked if
- Xs/he still wants to become a user. If so, s/he will be asked a series of
- Xquestions for registration purposes: hir full name, preferred password, full
- Xaddress, and phone number. If s/he has a standard UNIX login, s/he will be
- Xasked to supply it; this simplifies the sysop's checking for potential
- Xsystem-level access (see
- X.B "ACCESS MODES"
- Xbelow). Depending on the system, the new user will either be logged out or
- Xpermitted to use the system.
- X.SH COMMANDS
- X\*U has three menus: the
- X.BR "Main Menu" ,
- Xthe
- X.BR "Message Base Menu" ,
- Xand the
- X.BR "Administration Menu" . Each menu has two levels of help; entering a
- Xquestion mark (?) once displays the short help message, pressing it a second
- Xtime displays a full help file.
- X.SH "1. The Main Menu"
- XThe following commands are available on the Main Menu:
- X.de LS
- X.in +10
- X.ll -5
- X.sp
- X.ns
- X..
- X.de LI
- X.sp
- X.ti -5
- X\fB\\$1\fR \-
- X..
- X.de LE
- X.sp
- X.in -10
- X.ll +5
- X.ns
- X..
- X.LS
- X.LI A
- XEnter the Administration Menu. See the
- X.B "Administration Menu"
- Xbelow for details.
- X.LI B
- XRedisplay the new bulletins. Between each bulletin, the user is asked whether
- Xs/he wishes to Continue reading bulletins or Stop.
- X.LI C
- XFor users with System access (see
- X.B "ACCESS LEVELS"
- Xbelow), this command starts up a shell. Unfortunately, this command doesn't
- Xwork so well from a \*U login "shell"; the user's UNIX permissions are those
- Xof the UNIX login.
- X.LI D
- XChange the default conference. Each user has a ``default'' conference
- Xwhich s/he automatically joins when s/he logs in. For new users, this is set
- Xto the
- X.I general
- Xconference, but the D command allows a user to change this.
- X.LI F
- XEnter the File UDL area. Users with File UDL access (see
- X.B "ACCESS MODES"
- Xbelow) can upload and download files; other users may only look at the UDL
- Xlibrary. See
- X.B "THE FILE UDL AREA"
- Xbelow for more information.
- X.LI G
- XExit \*U. Shell users will be returned to thatever they were doing
- Xbefore they entered \*U; others will be returned to the
- X.B "login:"
- Xprompt.
- X.sp
- XIf the Main Menu is entered from the Message Loop (see the
- X.BR "Message Base Menu" ),
- Xthe G command returns the user to the Message Loop.
- X.LI M
- XEnter the Message Base Menu. See below for details.
- X.LI W
- XShow the \*U user log. This shows the user name and access level of each
- Xuser; Fairwitnesses (see
- X.B "THE FAIRWITNESS"
- Xbelow) can also see the address and phone number for validation purposes.
- X.LE
- X.SH "2. The Message Base Menu"
- XThe primary message base commands are contained on this menu. The commands
- Xare:
- X.LS
- X.LI D
- XChange the default conference. Each user has a ``default'' conference
- Xwhich s/he automatically joins when s/he logs in. For new users, this is set
- Xto the
- X.I general
- Xconference, but the D command allows a user to change this.
- X.LI E
- XEnter a message. The user is prompted for the recipient, the message's
- Xsubject, and the conference to which the message should be posted. (The
- Xcurrent conference is the default.) S/he may also be asked whether the
- Xmessage is to be private or not; the default is no. Private messages may not
- Xbe enabled on all \*U systems, and if they are, they may only be sent to
- Xexisting users. The user is then placed in the message editor, which
- Xautomatically word-wraps the message. Any of CONTROL-D (the standard UNIX
- Xend-of-message indicator), CONTROL-Z (the end-of-file indicator for some
- Xmicrocomputer systems), or ESCAPE will end the message and display the Send
- Xprompt. At this point the user may choose to continue the message, edit it,
- Xlist it, send it, or abort it. S/he is asked for confirmation if s/he chooses
- Xto abort the message.
- X.LI G
- XExit \*U. Shell users will be returned to thatever they were doing
- Xbefore they entered \*U; others will be returned to the
- X.B "login:"
- Xprompt.
- X.sp
- XIf the Main Menu is entered from the Message Loop (see the
- X.BR "Message Base Menu" ),
- Xthe G command returns the user to the Message Loop.
- X.LI I
- XDisplay the index of conferences. For each conference, the name, number of
- Xmessages, and number of messages read by the current user are shown; if the
- Xconference is restricted, this fact is noted. If the user is unsubscribed
- Xfrom the conference, this will also be shown.
- X.LI J
- XJoin a different conference, or create a new conference. The user is prompted
- Xfor the conference to join; if it doesn't exist, s/he is asked if s/he wants
- Xto create it. If so, s/he is placed in the Message Editor to compose a
- Xmessage describing the conference's purpose.
- X.sp
- XIf the conference is restricted and the user is not a member, s/he will be
- Xinformed of the fact and returned to the Message Base Menu.
- X.sp
- XIf the user is unsubscribed, s/he will be asked if s/he wishes to resubscribe
- Xto the conference. If not, s/he will be returned to the Message Base Menu.
- XSee the
- X.B U
- Xcommand for more details.
- X.sp
- XA conference name can be up to at least 14 characters in length; on Berkeley
- XUNIX systems, it may be up to 32 characters in length. It may not contain
- Xcolons or slashes; these will be converted to dots. Case is not significant
- Xin a conference name.
- X.LI K
- XKill a message. The user must be the owner or recipient of the message, or a
- XFairwitness, to kill a message. S/he will be prompted for the message number
- Xto kill. Only messages in the current conference can be killed.
- X.LI N
- XRead all new messages in all conferences. Unsubscribed conferences and
- Xrestricted conferences of which the user is not a member are skipped
- Xsilently. This command works like the R command in the
- X.B "Read Commands Menu"
- Xin the New mode (see below) within each conference; between conferences the
- Xuser is asked whether s/he wishes to go to the Next conference, Unsubscribe
- Xfrom the current conference (see below) or Stop.
- X.LI R
- XEnter the Read Commands Menu. See below for more details.
- X.LI U
- XUnsubscribe from a conference. New messages in the conference will not be
- Xnoted at login, and the conference will be skipped during an N command; the
- Xuser must Join the conference (J command) in order to resubscribe.
- X.LI X
- XReturn to the Main Menu.
- X.LI ?
- XThis shows the help menu, similarly to the Main Menu's help command.
- X.LE
- X.SH "3. The Read Commands menu"
- XThis menu contains the read commands, all of which work in the same basic
- Xway. Each command asks whether the user wishes to read Forward (F), Reverse
- X(R), an Individual message (I), or all New messages (N). If the user chooses
- XF or R, s/he will be asked for the first and last messages to read; the
- Xdefaults are message 1 and the last message in the conference. If s/he
- Xchooses I, s/he will be asked for the message number to read. If s/he chooses
- Xthe N command, s/he will be shown all messages posted since s/he last read the
- Xmessages in that conference in ascending (chronological) order. Only the
- Xmessages in the current conference can be read.
- X.P
- XThe commands are:
- X.LS
- X.LI G
- XExit \*U. Shell users will be returned to thatever they were doing
- Xbefore they entered \*U; others will be returned to the
- X.B "login:"
- Xprompt.
- X.sp
- XIf the Main Menu is entered from the Message Loop (see the
- X.BR "Message Base Menu" ),
- Xthe G command returns the user to the Message Loop.
- X.LI N
- XRead all new messages. This command is identical to the N command of the
- X.B "Message Base Menu"
- Xand is placed here for the user's convenience.
- X.LI Q
- XQuick scan of messages. Only the subjects of messages are shown.
- X.LI R
- XRead messages. The full text of each message is shown.
- X.LI S
- XScan messages. Only the headers of messages are shown.
- X.LI X
- XReturn to the
- X.BR "Message Base Menu" .
- X.LE
- XAfter each message read by the N or R commands, the user is placed in the
- X.BR "Read Loop" .
- XFrom this mini-menu, the following commands are available:
- X.LS
- X.LI C
- XContinue to the next message.
- X.LI S
- XStop reading messages; from the R command, the user is returned to the Read
- XMenu; from the N command the user is sent to the Next Conference/Stop prompt.
- X(See the N command above.)
- X.LI K
- XKill the current message. Only the sender or recipient of a message, or a
- XFairwitness, may Kill a message.
- X.LI U
- XUnsubscribe from the current conference. From the N command, the user is sent
- Xto the Next Conference/Stop prompt; from the R command, s/he is returned to
- Xthe Read Commands Menu.
- X.LI R
- XReply to the current message. The user is asked for the conference to which
- Xthe reply should be directed (the default is the conference containing the
- Xmessage). On some \*U systems, the user will be asked whether the message is
- Xprivate or not; the default is the privacy status of the original message.
- X.LI E
- XEnter a new message. This functions identically to the E command of the
- X.BR "Message Base Menu" ,
- Xsave that the message will be placed by default into the conference from which
- Xthe E subcommand is entered.
- X.LI X
- XeXecute. The user will be placed in the Main Menu, with a changed prompt:
- X.sp
- X.ce
- XCommand (? for help, G to return):
- X.sp
- XThe G command, rather than exiting \*U, will return the user to the Read Loop.
- X.LE
- X.SH "4. The Administration Menu"
- XThe Administration Menu contains commands useful for \*U system
- Xadministration. Some of the commands are duplicated on the
- X.BR "Main Menu" ,
- Xand some are usable by ordinary users. The commands are:
- X.LS
- X.LI A
- XAlter a user. If the current user is a Fairwitness, see the
- X.B "UNaXcess Administrator's Manual"
- Xfor details on usage.
- X.sp
- XOrdinary users may only alter themselves, and only certain parameters: their
- Xpassword, line length, or screen size. The subcommands available to ordinary
- Xusers are:
- X.LS
- X.LI P
- XChange the user's password. The user is prompted to enter a new password of
- Xbetween 3 and 8 characters.
- X.LI S
- XChange the line Size (line length). The user is prompted for a new line
- Xlength of between 40 and 132 characters. The default line length is 80,
- Xsuitable for use on a standard terminal.
- X.LI L
- XChange the Lines per screen. The user is prompted for a new screen size of
- Xbetween 0 and 66. A value of 0 disables all display paging and is useful on
- Xhardcopy terminals such as the TI "Silent 700"(TM).
- X.LE
- X.SH "ACCESS LEVELS"
- XThere are 5 standard access levels in \*U. They are:
- X.LS
- X.LI Guest
- XThe Guest access level permits a user to read messages in any non-restricted
- Xconference; however, the user may not use the C command, upload or download
- Xfiles, or enter messages except in the
- X.I guest
- Xconference, if it exists.
- X.LI Messages
- XThe Messages access level permits a user to read or enter messages in
- Xnon-restricted conferences. S/he may not use the C command or upload or
- Xdownload files.
- X.LI "File UDL"
- XThe File UDL access level allows a user to upload or download files. The C
- Xcommand is still off limits, however.
- X.LI System
- XThe System access level allows a user too use the C command to get a shell.
- XThe shell will have the permissions of the user who ran \*U; from a shell
- Xprompt, it will be that of the currently-logged-in user, but from a \*U
- Xlogin "shell" it will be that of the UNIX(R) user owning that login.
- X.LI Fairwitness
- XA Fairwitness is a special user, as described previously. A Fairwitness may
- Xread or kill any message in any conference, including restricted conferences.
- XHowever, a Fairwitness must be a member of a restricted conference in order to
- Xchange the membership list for that conference. S/he may also create and post
- Xmessages to Read-Only conferences on some systems; this permits the creation
- Xof truly moderated forums.
- X.LI Sysop
- XThe sysop is a very special user indeed; no restrictions whatsoever apply to
- Xhir. S/he is the only user permitted to restrict or de-restrict a conference,
- Xor to promote or demote Fairwitnesses.
- X.LE
- X.SH "THE FAIRWITNESS"
- XIt should be obvious by now that the Fairwitness is not intended to be simply
- Xan assistant sysop. S/he is, in fact, intended to be a discussion leader;
- Xs/he is in charge of a conference or a group of conferences, and has a
- Xresponsibility to stimulate discussion in those conferences. The means of
- Xdoing this are to condense and recap previously posted messages, to point out
- Xpossibly-obscure relationships between the current topic and other topics, and
- Xto ask questions designed to stimulate discussion. A good Fairwitness can
- Xmake or break a conference.
- X.P
- XThe original idea of a Fairwitness came from the CommuniTree Group, a
- Xnon-profit organization in California. This group pioneered the conferencing
- XBBS system via their "Conference Tree" program. They lifted the Fairwitness
- Xfrom the novel
- X.I "STRANGER IN A STRANGE LAND"
- Xby Robert A. Heinlein -- but with some major differences. The CommuniTree
- XGroup's guidelines for a Fairwitness are preserved intact in \*U. Their
- Xintent was the evolution of a new kind of BBS system: a system designed to
- Xstimulate creative and critical thinking, rather than a literal electronic
- X"bulletin board", classified-ad, or "dial-your-match" kind of system. As a
- Xformer Fairwitness of the now-defunct Conference Tree #1085, the Great North
- XCommuniTree, I stand by their aims, and hope that \*U will help to fulfill
- Xthem.
- X.SH "THE FILE UDL AREA"
- XThe File UDL area is arranged as a "library" consisting of multiple
- X"branches". Each "branch" (hopefully) contains files to be downloaded, and
- Xhas an upload area. The branches are usually set up by subject or by
- Xcomputer.
- X.P
- XOn entry to the File UDL area, the user is shown a list of branches and is
- Xprompted to select a branch. After selecting one, s/he enters the File UDL
- XMenu, consisting of the following commands:
- X.LS
- X.LI U
- XUpload a file to the current branch. The user is asked for a file name, a
- Xdescription, and an upload method.
- X.LI D
- XDownload a file from the current branch. The user is asked for a file name
- Xand a download method.
- X.LI L
- XDisplay a list of the files in the current branch.
- X.LI G
- XDownload a list of the files in the current branch. Any user may execute this
- Xfunction, regardless of access level. The user is asked for the download
- Xmethod desired.
- X.LI E
- XRedisplay the list of File UDL branches.
- X.LE
- X\*U supports three file transfer protocols:
- X.LS
- X.LI Xmodem
- XThe "standard" file transfer method, also known as "MODEM7" or "Ward
- XChristensen" protocol.
- X.LI Kermit
- XThe micro-to-mainframe file transfer method developed at Columbia University.
- XThe Kermit program is in the public domain, and is available from Columbia
- XUniversity directly and from many BBSes across the country.
- X.LI ASCII
- XAs a lowest common denominator, straight ASCII transfer is available. No
- Xerror checking is performed, and it is not advised to send or receive binary
- Xdata. An ASCII upload is terminated with a CONTROL-D.
- X.LE
- XNot all transfer methods may be available on all systems (although they should
- Xbe; public-domain implementations of Xmodem and Kermit are freely available).
- XThe ASCII method is guaranteed to be available.
- X.P
- XUploaded files are not automatically placed in the download area of a branch;
- Xa Fairwitness must move them there. This makes possible
- Xchecking for "trojan horse" programs.
- X.SH "RESTRICTED CONFERENCES"
- XThe sysop may choose to restrict a conference. This limits access to a
- Xconference to the sysop, all Fairwitnesses, and any users listed as members of
- Xthe conference, making possible special interest groups (SIGs), users'
- Xgroups, etc.
- X.P
- XOnly the sysop may restrict or remove restrictions on a conference. While any
- XFairwitness may read, enter, or kill messages within a restricted conference,
- Xs/he may only add or delete members if s/he is listed as a member of the
- Xconference hirself.
- X.P
- XA user attempting to Join a restricted conference will not be permitted to do
- Xso if s/he is not a member. Restricted conferences will automatically be
- Xskipped by the N command of the Message Base Menu if the user is not a member
- Xof the conference.
- X.SH "ACKNOWLEDGEMENTS AND COPYRIGHTS"
- XUNIX(R) is a registered trademark of AT&T.
- X.sp
- XTI(R) and "Silent 700"(R) are registered trademarks of Texas Instruments.
- X.sp
- XKermit is a trademark of Columbia University.
- X.sp
- X"Berkeley UNIX" is Fourth Berkeley Standard Distribution UNIX, copyrighted by
- Xthe Regents of the University of California.
- X.SH AUTHOR
- X.nf
- XBrandon S. Allbery
- X6615 N. Center St., Apt. A1-105
- XMentor, Ohio 44060-4101
- X
- XPhone: +01 215 974 9210
- X
- XNet address: cbatt!cwruecmp!ncoast!allbery
- XARPA address: ncoast!allbery%Case.CSNET@CSNet-Relay
- X.fi
- ________This_Is_The_END________
- echo 'x - install.man'
- sed 's/^X//' << '________This_Is_The_END________' > install.man
- X'''
- X''' @(#) install.man 1.2 (TDI) 2/1/87
- X''' This file is a part of UNaXcess Conferencing 1.0.2.
- X'''
- X.TH INSTALL LOCAL UNaXcess
- X.ds U \fBUNaXcess\fR
- X.SH NAME
- Xinstall \- procedures for installing \*U
- X.SH SYNOPSIS
- Xsh install.sh
- X.SH DESCRIPTION
- XThe \*U conferencing system is largely self-installing via the shell script
- X.IR install.sh .
- XHowever, it helps to understand what the \*U install script is doing, and
- Xwhat might be done beforehand.
- X.PP
- X\*U prefers to be installed setuid to a particular user, usually the login of
- Xthe sysop. This permits \*U to configure itself at runtime, requiring only
- Xthat the file
- X.I ua-config
- Xexist in the home directory of the user to which it is setuid. It also
- Xprovides better security, as the \*U directory can be locked up tight, whereas
- Xwrite permission must exist in ALL directories and files used by \*U if it is
- Xnot setuid.
- X.SH "COMPILING \*U"
- XAt compile time, only two parameters need be set. The system type must be
- Xspecified in the Makefile; a list of valid system types is provided there.
- XThis is required because there are a number of divergent versions of Unix(R)
- Xin the marketplace: System V, Berkeley 4.2/4.3, Research Edition 7, Xenix,
- Xetc. It is the author's hope that this will change someday.
- X.PP
- XThe second parameter is the NOAUTOPATH directive. This informs \*U that it
- Xwillnot be run setuid; it has a hard-coded initial directory specified by the
- Xvalue of NOAUTOPATH, where it must find the
- X.I ua-config
- Xfile and, if the
- X.B bbs-directory
- Xparameter is not listed within that file (see
- X.I "CONFIGURATION PARAMETERS"
- Xbelow), all other \*U files must also reside within that directory or below
- Xit. This directive should be specified as:
- X.nf
- X.sp
- X.ce
- X-DNOAUTOPATH='"/path/to/\*U"'
- X.sp
- X.fi
- XThe best way to specify the system type parameter, on systems which support
- Xit, is to specify it in the
- X.I make
- Xcommand used to make \*U, such as ``make SYSTEM=SYS5 all''. It can also be
- Xplaced on the CFLAGS line in the Makefile.
- X.SH INSTALLATION
- X\*U is installed by running the command, ``sh install.sh'', from the \*U
- Xsource directory. It first checks to see if NOAUTOPATH has been defined; if
- Xso, it disables all permission tightening and prevents the installation of the
- Xspecial
- X.I mkconf
- Xcommand used by the setuid \*U program. If NOAUTOPATH is not defined, it asks
- Xfor a user name to which \*U should be setuid; if the user already exists, the
- Xinstaller must be logged in as the \*U sysop, otherwise the script must be run
- Xas root. (This is unavoidable, as there is no other way to make a user.)
- XNote, however, that the
- X.I mkconf
- Xcommand MUST be setuid root to work. Again, this is unavoidable; UNIX(R) does
- Xnot allow non-root users to create directories, and it is not possible to
- Xmake the setuid the real uid, so
- X.I mkdir
- Xwould run as the logged-in user and should not have permission to create a
- Xdirectory using
- X.IR mkdir .
- X.PP
- XThe install script asks a number of questions. The first questions deal with
- Xthe installation of the executable files, and whether the optional programs
- Xshould be installed. (An optional program is one like
- X.IR uanews ,
- Xwhich will probably not be used on most systems.) A second group of questions
- Xis used to build the initial
- X.I ua-config
- Xfile. Finally, the install script invokes the
- X.I umotd
- Xcommand to create an initial bulletin.
- X.PP
- XThe install script does not cover the creation of special login messages, the
- Xnew-user message, or other special-purpose files; these are described and
- Xinstructions for creating them are given in the
- X.IR "\*U Administrator's Manual" .
- X.SH "CONFIGURATION PARAMETERS"
- X\*U is configured at runtime via the file
- X.B ua-config
- Xin the home directory of \*U's owner. (Or the directory specified by
- XNOAUTOPATH.) This file contains variable settings of the form
- X.nf
- X.sp
- X.ce
- X\fIname\fR \fIvalue\fR
- X.sp
- X.fi
- Xwhich affect \*U's operation. They are of three types: STRING, which may
- Xtake any whitespace-delimited string or any string in quotes; NUMERIC, which
- Xmay take any number from 0-255; and BOOLEAN, which may take the strings YES,
- XNO, TRUE, or FALSE. The variables are:
- X.de LS
- X.sp
- X.in +10
- X.ll -5
- X..
- X.de LI
- X.ti -5
- X.sp
- X\fB\\$1\fR
- X.if \\w'\\$2' (\\$2)
- X\-
- X..
- X.de LE
- X.in -10
- X.ll +5
- X.sp
- X.ns
- X..
- X.LS
- X.LI bbs-directory STRING
- XThe directory where \*U's data files and message base reside. The default is
- X\*U's owner's home directory.
- X.LI readonly BOOLEAN
- XIf this is TRUE, \*U will permit the creation of read-only conferences. (See
- Xthe
- X.I "\*U Administrator's Manual"
- Xfor details.) The default is FALSE.
- X.LI restricted BOOLEAN
- XIf this is TRUE, \*U will permit restrictions on conference membership via the
- X.B M
- Xcommand. See the
- X.I "\*U Administrator's Manual"
- Xfor details. The default is FALSE.
- X.LI shell STRING
- XThis is the path of the default shell used by the
- X.B C
- Xcommand. See also the
- X.B read-env
- Xvariable. The default is /bin/sh.
- X.LI read-env BOOLEAN
- XIf this is TRUE, \*U will read the environment of the invoker to determine the
- Xshell to be run via the
- X.B C
- Xcommand. The default is FALSE.
- X.LI bbs-user STRING
- XA list of UNIX(R) user-names, separated by commas and/or spaces, which may not
- Xlog directly into \*U. This is intended to prevent a generic BBS login from
- Xconflicting with a UNIX(R) user; otherwise, there would be a security hole, as
- Xshell users are forced to log in by their UNIX(R) user name if they are so
- Xnamed in \*U. This is explained in more detail (and more clearly) in the
- X.IR "\*U Administrator's Manual" .
- XThe default is no BBS logins.
- X.LI time-limit NUMERIC
- XThe time limit, in minutes, of a \*U session. If this is set to 0, no time
- Xlimit is imposed. The default is 30 minutes.
- X.LI sysop STRING
- XThis variable defines the sysop's login name. The default is SYSOP; however,
- Xspecial purpose BBSes may have this changed to be more relevant (as in DUNGEON
- XMASTER for a fantasy-gaming BBS).
- X.LI private-msgs BOOLEAN
- XIf this is TRUE, users are permitted to create private messages to other
- Xusers. While public messages may have any recipient named, private messages
- Xmust be to a registered \*U user.
- X.LI logging BOOLEAN
- XIf this is TRUE, a log of activity and errors will be kept in the file
- X.B Logfile
- Xin the directory defined by
- X.BR bbs-directory .
- XThis log can get quite large very quickly. The default is FALSE.
- X.LI banner STRING
- XThis is the pathname (fully qualified or relative to
- X.BR bbs-directory )
- Xof a file to be displayed before the \*U login prompt is displayed. The
- Xdefault value, "", causes an internal message to be displayed consisting of
- Xa copyright message.
- X.LI login-msg STRING
- XThis is the login prompt to be displayed at the start of a \*U session. The
- Xdefault value, "", causes the message
- X.nf
- X.sp
- X.ce
- XEnter your name, GUEST, OFF, or NEW:
- X.sp
- X.fi
- Xto be displayed.
- X.LI login-tries NUMERIC
- XThis variable defines the number of tries a user gets to log in to \*U. A
- Xvalue of 0 will be treated as 1. The default is 3.
- X.LI ascii-upload STRING
- XThe command to be passed to /bin/sh in order to upload a file using ASCII. The
- Xdefault uses /bin/cat after turning echo off, then restores echo. All
- Xdownload commands may have the escape
- X.B %s
- Xin them to indicate where the file name should be placed; if it is not
- Xpresent, \*U will append the file name to the end of the command, preceded by
- Xa space.
- X.LI ascii-download STRING
- XThe command to be passed to /bin/sh in order to download a file using ASCII.
- XThe default uses /bin/cat to send the file.
- X.LI xmodem-upload STRING
- XThe command passed to /bin/sh to upload a file using XMODEM protocol. The
- Xdefault is
- X.BR "umodem -rb" .
- X.LI xmodem-upload STRING
- XThe command passed to /bin/sh to download a file using XMODEM protocol. The
- Xdefault is
- X.BR "umodem -sb" .
- X.LI kermit-upload STRING
- XThe command passed to /bin/sh to upload a file using Kermit protocol. The
- Xdefault is
- X.BR "kermit -iwr" ,
- Xand assumes that C-Kermit is available.
- X.LI kermit-download STRING
- XThe command passed to /bin/sh to download a file using Kermit protocol. The
- Xdefault is
- X.BR "kermit -iws" ,
- Xand assumes that C-Kermit is available.
- X.LE
- X.SH "OTHER INSTALLABLE FILES"
- XThere are a number of other files used by \*U that should be updated at
- Xinstall time. They all reside in the
- X.BR bbs-directory :
- X.LS
- X.LI NewMessage
- XThis file contains the message shown to new users. As distributed, it
- Xcontains a copyright message. It should detail the system's rules,
- Xinformation about access levels, and any other information for new users.
- X.LI directory
- XThis file contains listings of UDL branches and downloadable files. As
- Xdistributed, it defines the "general" UDL branch and the \*U User's Guide
- Xwithin that branch. See the
- X.I "\*U Administrator's Manual"
- Xfor information on maintaining this file.
- X.SH "ACKNOWLEDGEMENTS AND COPYRIGHTS"
- XUNIX(R) is a registered trademark of AT&T.
- X.SH COPYRIGHT
- X\*U is Copyright (C) 1983-1987 by Brandon S. Allbery. Permission is granted
- Xto copy this program and to distribute it freely; however, the
- Xauthor reserves the right to distribute the program for any fees beyond a
- Xcopying/handling fee.
- ________This_Is_The_END________
- exit 0
- --
- ++Brandon (Resident Elf @ ncoast.UUCP)
- ____ ______________
- / \ / __ __ __ \ Brandon S. Allbery <backbone>!ncoast!allbery
- ___ | /__> / \ / \ aXcess Co., Consulting ncoast!allbery@Case.CSNET
- / \ | | `--, `--, 6615 Center St. #A1-105 (...@relay.CS.NET)
- | | \__/ \__/ \__/ Mentor, OH 44060-4101
- \____/ \______________/ +1 216 781 6201
-
-
-