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 !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