v08i040: UNaXcess Conferencing, version 1.00.02, Part04/04

sources-request at mirror.UUCP sources-request at mirror.UUCP
Fri Feb 6 07:26:32 AEST 1987


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 at 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 at Case.CSNET
/   \ | |    `--, `--,    6615 Center St. #A1-105 	   (... at relay.CS.NET)
|     | \__/ \__/ \__/    Mentor, OH 44060-4101     
\____/ \______________/   +1 216 781 6201



More information about the Mod.sources mailing list