home *** CD-ROM | disk | FTP | other *** search
- Subject: v13i071: A BBS written in /bin/sh, Part01/02
- Newsgroups: comp.sources.unix
- Sender: sources
- Approved: rsalz@uunet.UU.NET
-
- Submitted-by: Rob DeMarco <ncoast!robertd>
- Posting-number: Volume 13, Issue 71
- Archive-name: sbbs/part01
-
- This is SBBS - For Sigma Bulletin Board System.
-
- This is a 90% shell script BBS with only two files writen in C. You may
- have to modify these programs for your system. The shell scripts should work on
- ANY UNIX system that suports standard /bin and /usr/bin directories,
- redirection, the four quoting mechanisms, variable substitution with '{}'s.
-
- In short, it should work on any semi-modern Bourne Shell.
-
- Contact me if you have any trouble.
-
- [> Rd
- PS: It does NOT require a Makefile, so don't worry.
-
-
-
-
-
- #!/bin/sh
- # shar: Shell Archiver
- # Run the following text with /bin/sh to create:
- # README
- # admin.doc
- # config.tbl
- # setup.doc
- sed 's/^X//' << 'SHAR_EOF' > README
- X
- XSBBS Copyright(C) 1987 Rob DeMarco
- XAll rights reserved.
- X
- XSBBS may be modified only at your site.
- XIt may be redistributed but NOT
- Xmodified in any way and all files must
- Xstay intact.
- XIt may not be sold.
- X
- X The following files are programs that SBBS use or documentations. Move
- Xall the programs to a specific place and move the documentations were best
- Xput. Read setup.doc before installing SBBS.
- X
- X This archive(s) contain four documentations (including this one),
- X two C programs - initial.c and lock.c(*).
- X ~28 shell script files writen in Bourne Shell.
- X
- X----
- X* initial.c is a fake "shell" that is called up when a person logs in as a
- XSBBS user or su's to it. It contains a simple function; execl(). This runs
- Xa shell script login-sig as the LOWEST level shell. If your system doesn't
- Xsuport execl(), look for a simular function.
- X
- Xlock.c shouldn't give you much trouble. It works on a system III and can
- Xbe easily modified to work on any system.
- X
- XDo neccessary changes to these files BEFORE you run "install".
- X
- X
- SHAR_EOF
- sed 's/^X//' << 'SHAR_EOF' > admin.doc
- X
- XSBBS ADMINISTRATION HELP
- X---- -------------- ----
- X
- XAfter you have read the instructions on how to set up SBBS, you must get
- Xyour self familiarized with all the SBBS files.
- X
- XI have assumed that you ran 'install' and your SYSOP account was set up.
- XA 'SYSOP' account is a special user that has many privileges. Among them are
- Xuser-management systems, Message Bases, and U/DL bases. There are more; these
- Xwill be explained.
- X
- X
- XI. Familiarization of SBBS
- X
- X Your account was created when you ran the program install. Install makes
- Xthe necessary preparations to allow SBBS to run. If you are not the head
- XSYSOP and didn't run install you may skip this whole section on SBBS
- Xfamiliarization as it does not concern you.
- X
- X Your ID and password was stored in a file called ~/admin/profile/logins.
- XOther information on you is stored in ~/admin/profiles/members. Check these
- Xfiles out and see how they are stored. (In the examples, we will assumed you
- Xcalled ONCE before.)
- X
- X $ cd $home/admin/profile < $home equals SBBSs home directory.
- X $ ls
- X cmdlog < User command log
- X lastcaller < The last caller
- X log < Log of users and their times of login and logout
- X logins < User IDs and passwords
- X members < More information on users
- X newusers < New Users who have called.
- X $ cat lastcaller
- X JOHN JONES
- X $ cat cmdlog
- X 1:?:M:U:E < Commands Sysop entered.
- X $ cat log
- X 1 11:33:22 Tue Jun 20 1987 EST 11:50:22 Tue Jun 20 1987 EST
- X $ cat newusers < Normally when new users call their name and other
- X information is stored here. The one who ran install
- X does not have his name there because he is assumed to be
- X the sysop. (And, if you remember, he/she has a level=3)
- X $ cat logins < encrypted password.
- X 1 XzUymakPPPqx
- X $ cat members
- X 1:3:JOHN JONES:123 ANYWHERE ST.:TOWNSVILLE:NEW JERSEY:46642:781-620-1235
- X
- X ^ ^ ^ ^ ^ ^ ^ ^
- X ID Access Name Street City State Zip Phone Number
- X
- X Now let's explore the files in the "mail" and "new" directories.
- X
- X $ cd $home/mail
- X $ ls
- X 1
- X $ cd 1
- X $ ls
- X 1
- X 2
- X
- X The directory "1" in the "mail" directory is where all of user 1's
- Xmail is. Since it is private, we woun't look at the mail. (Files "1" and "2")
- X
- X $ cd $home/new
- X $ ls
- X 1
- X $ cat 1
- X 1:4
- X
- X This is a file that contains information on the last message he
- Xread from the Message Bases (More on this later). In Message Base "1", he
- Xread all the way up to message #4. This, for your information, is the "General"
- XMessage Base.
- X
- X Now let's look at the "bulletins" and "udl" directories.
- X
- X $ cd $home/bulletins
- X $ ls
- X 1 < This is a bulletin from the sysop (User #1) welcoming everyone to
- X his new system.
- X $ cat 1
- X < Bulletin >
- X $
- X
- X The bulletin will be displayed to any one logging in to his system one
- Xtime only. They may reread the bulletins by a special command.
- X
- X $ cd $home/udl
- X $ ls
- X new
- X $
- X
- X This directory stores all the files the users upload. He has created no
- X"Topics". Topics are specific areas where users store files. These files
- Xpertain to the "Topic". The directories are stored as numbers. The actual
- Xtopic-names are stored in files. The "new" directory is automatically
- Xcreated when the SysOp ran "install". It stores "new" uploads that are awaiting
- Xapproval be the SysOp or CoSysOps.
- X
- X Now we explore the final directory.
- X
- X $ cd $home/misc
- X $ ls
- X bbsrc
- X closing
- X com
- X config
- X ecom
- X main_menu
- X newnews
- X openmes
- X prlib
- X protocols.down
- X protocols.up
- X udlrc
- X usr
- X $ cat bbsrc < List Message Bases.
- X 1:General
- X $ cat udlrc < Remember he hasn't set up any UDL DataBases. This contains
- X the available Topics.
- X $ cat usr < IDs, names, and ttys of who is CURRENTLY using SBBS.
- X $ cat openmes
- X [[[ Welcome to Cleveland Electronic City
- X [[[ Serving its users since 1981 providing the best community service.
- X [[[ Try out our new feature - "mayor". Where you may write to the
- X [[[ may about whats on your mind.
- X
- X This is the file that will ALWAYS be displayed when one logs on your SBBS
- Xsystem.
- X
- X $ cat closing
- X
- X Thank you for calling. Call these other boards:
- X
- X CitCom: 216-222-3333
- X Ataraforce: 216-444-5555
- X IBbsM: 216-666-7777
- X
- X This message is displayed ALWAYS when one exits SBBS.
- X
- X $ cat newnews
- X 1:1
- X
- X This file containes information on what the last bulletin read was.
- X Remember the "bulletins" directory?
- X
- X $ cat prlib
- X 1: Access DataBase XI:/u/local/dbxi
- X 2: List or add city services:/u/local/cleserv
- X 3: List or add 216 numbers.:/u/local/216list
- X
- X This is the program library. This is available online to SBBS users. The
- Xfirst field (Of 3 seperated by colons) is the option number that the user
- Xtypes to access it. Field 2 is the formal name the user sees. Field three
- Xis the actual program to run. This may contain variables , quotes and ';'
- Xseperaters if you wish. But a special "variable" must be set to do this;
- Xotherwise it will take the whole third field as the program to run -- without
- Xevaluating the metacharacters.
- X
- X $ cat com ecom main_menu <menus
- X <com menu (bbs)>
- X <ecom menu (editor)>
- X <main_menu menu. (main menu)>
- X $ cat protocols.up
- X 1:Ascii:echo Start Transmitting. Send a CTRL-D when finished. ; cat >>
- X The first field is the udl protocol option. It is one of the options listed
- Xwhen someone uploads a file. It was automatically set up when "install"
- Xwas run. The second field is the formal name the protocol. The third is the
- Xactual program to run. That special variable isn't needed here because all
- Xmetacharacters will automatically be evaluated. So be careful to quote
- Xany metacharacter that is to be taken literally like *,",;,etc.
- X
- X Please understand it. You must enter the protocols yourself. (except Ascii)
- X
- X Examples:
- X
- X 2:Xmodem:/u/local/umodem -rt
- X 3:Kermit:/u/local/kermie -rb
- X
- X Don't worry about file names. This is done for you because the file
- Xnames will differ as people upload more and more of them.
- X
- X $ cat protocols.down
- X 1:Ascii:Prepare for transmission in 10 seconds. ; cat
- X The same applies for this file except its used when downloading.
- X
- X Examples:
- X
- X 2:Xmodem:/u/local/umodem -st
- X 3:Kermit:/u/local/kermie -sb
- X
- X $ cat config
- X $
- X
- X Where all system variables (including the one to evaluate the
- Xthird field or "prlib") are stored.
- X
- X The format is "variable=value" or simply "variable=" for some of them.
- X
- X Consult config.tbl in your documentation package for more details.
- X
- X Now it's time to learn how to use SBBS it self.
- X
- XII. SBBS - THE BBS
- X
- X There are two ways to tackle this difficult task of explaining SBBS.
- XI could explain the whole SBBS system , including the general commands that
- Xare available to all the users OR I could explain only the commands
- Xavailable to high-level users.
- X
- X But do to the accident that caused my administration documentation to be
- Xcompletely erased, I have no time to be complete. I will try my best to be able
- Xto explain how to run SBBS. But you will have to wait until SBBS is released
- Xto the public before a better documentation is written up.
- X
- X Log on to SBBS
- X
- X It will display the copyright message and prompt you for your ID.
- XYou may exit here by typing OFF. If you are new to SBBS you would type NEW. It
- Xwill ask you questions and create an account for you. An account is your own
- XID which makes you a member of SBBS. After your ID is created, you may then
- Xlog in SBBS with your newly created ID. If you enter your ID, it will ask for
- Xa password. You told SBBS this when you requested to be a new user or when (if
- Xyou are the SBBS administrator) you ran install. Type the password. It will not
- Xbe echoed back to you. This is to protect your password. If your password
- Xattempt fails then it will reject you. If you enter incorrect information
- Xthree times in a row you will be knocked off. If you are accepted, you will be
- Xput in SBBS. You will be told the last caller if there is one. You are then
- Xput in the "SBBS main" prompt. The two important commands to remember are
- X'A' and '?'. A command is a letter you type from SBBS main to do something.
- XA '?' will tell SBBS to display a summary of commands. 'A' is a special
- Xcommand and can ONLY be used by level-3 users. It's the Administrative Shell.
- X
- X Levels of users
- X
- X There are four "levels". These levels tell what privileges a user may
- Xhave. The user who ran install automaticly has a level of 3. Anyone
- Xwho used NEW from the SBBS login automaticly has an access of 0. Here is
- Xa list of the four levels and what they can do.
- X
- X Level-3: These users (usually only 1) may access EVERYTHING on SBBS.
- X Level-2: These users may access everything including the Administration
- X commands except 'A'. This is the shell.
- X Level-1: "Normal" access. This access level has access to all the
- X commands save the Administration commands.
- X Level-0: Limited access. Usually new users.
- X
- X More on the login routine
- X
- X If you are a Level-3 user, please read this section. Otherwise you may
- Xskip it or read it for background. But only Level-3 users may perform the
- Xfollowing things.
- X
- X From SBBS main, type A. You will get a shell. I assume that you are in the
- XSBBS home directory. If not, change to it.
- X
- X $ cd misc
- X
- X There are a few things we will deal with "config". The file called config
- Xwill allow you to configure your SBBS system to your specifications. These
- Xconfiguration commands are called C variables. (No relation to that hidious
- Xprogramming language called "C" :-[ ) These C variables are stored in the
- Xconfig file; in this format:
- X variable=value
- X or simply
- X variable=
- X To learn what all the C variables are and what they do, consult the
- Xdocumentation config.tbl. This is a full explanation of all the variables and
- Xwhat they do. We will explain a few of them now.
- X
- X First there are two C variables we will learn. Cycle and newuser. As you
- Xrecall, if your login attempt fails a certain amount of times, you will be
- Xkicked off. You can control the amount of times it takes by the cycle C
- Xvariable. The format is cycle=times.
- X
- X Example:
- X
- X cycle=5 - This allows five mess-ups before it disconnects a user.
- X
- X The next C variable is newuser. The purpose of this one is to print a file
- Xwhen a person requests to be a new user. This is usually used to print the
- Xrules or instructions on how to use the system. The form is newuser=file. The
- Xfile should be an absolute path to avoid errors. Never fully assume a certain
- Xsituation is true. Always think of all possibilities.
- X
- X There is also another C variable. Form is "elite=". No value is
- Xnecessary. This instructs SBBS not to accept new users. It will also fail to
- Xnotify users that there is such an option as NEW.
- X
- X A few more C variables.
- X
- X name=Erie Coast Boating and Sailing Club
- X version=1.0.0
- X shell=/bin/csh
- X
- X These are almost self explanitory. Name and version will print there
- Xrespected values from time to time. Including the Login routine. The shell
- XC variable is the shell to run when the 'A' command is used. Otherwise, as you
- Xknow, the default shell is /bin/sh.
- X
- X Becoming new to helping the new
- X
- X Since you are a level-2 or a level-3 user, you may validate other new
- Xusers. This is done be raising them from level-0 to level-1. There are special
- Xcommands to work with new users and existing users.
- X
- X Getting a User Log
- X
- X A User Log is a list of who called and when. It also tells when they left.
- XAs you have recalled if you read the section on files, this is the file
- X~/admin/profile/log. SBBS will keep track up to 20 log entries before it
- Xonly prints the last 20 callers only. You may change this number by the use
- Xof the C variable "log". Just suply how many entries to keep after the equal
- Xsign and SBBS will do it. The command is 'U'.It may be used by all level users.
- X
- X Listing users
- X
- X From time to time you may wish to list certain users. Type 'L' and you
- Xare now in the list mode. Again, this option may be used by all, but only
- Xlevel-2 or level-3 users may see the information such as the street address.
- XThe other Level-0 and level-1 users only see limited information such as ID,
- Xname, and access. Just type the ID of the user to view and his information
- Xis shown. Type -1 as an ID to escape to the main menu.
- X
- X The neucleous of user management
- X
- X This is the 'V' command; available only to level-2 and level-3 users. In
- Xhere you have six commands. Since you are at a command prompt, you may type
- X'?' if you need help.
- X
- X The first is 'L'. This command lists all the new users. This so you know
- Xwho is new and you may do something to them. (Usually raise their access to 1)
- X
- X The next is 'A'. This command allows you to change the access level of any
- Xuser -- not just new ones. Simply type the ID of the user and his new access.
- X
- X Another is 'C'. This one will clear new users from the new user file in
- Xorder to avoid confusion. This will only clear people on the new user file.
- XJust type the ID to clear. Note that this is different from 'R', which
- Xdeletes a user from the SBBS logins and members files and thus deletes or
- XRemoves a user from SBBS. 'C' merely deletes the line from the new user file.
- X
- X The final user management command, 'R', removes a user completely from
- XSBBS. Type the ID of the user and it will display there name and ask for
- Xconfirmation. Be careful with this command.
- X
- X One of two other commands in the 'V' command/function is 'V'. (Coincidental
- X, nothing more) It allows you to "view" the command log. The log that tells
- Xwhat each user did. It shows the ID, colon, the-next-commands-seperated by
- Xcolons.
- X
- X Example:
- X 1:M:L:U:I:E
- X
- X NOTE: This only keeps track of commands entered in SBBS main. Not the
- Xcommands entered in Validation Mode or any other mode or sub-menu.
- X
- X 'D' for delete/refresh will clear the command log because SBBS does not
- Xdo this for you. Therefor, you don't need a C variable.
- X
- X Some other miscellaneous things
- X
- X The following is a discussion on some other miscellaneous things.
- X
- X Many times when a person logs on a BBS, they get a welcome message. SBBS
- Xdoes the same thing. It shows a file that is shown every time a person logs
- Xin. You may not see it but that's because the file is blank. To show the
- Xfile and add your message, edit ~/misc/openmes. This file is sort of like
- XUNIX's motd file. Once you're finished, any people that logs in will see this
- Xmessage.
- X
- X On the other side of the scale, many times you want "Good bye" message. This
- Xis easy to accomplish too. Just edit ~/misc/closing. Add what you want and
- Xthat will be shown next time you log off.
- X
- X Sometimes you want to show information on your BBS to other users.
- XThis can be done by the 'I' command. It will display information if there is
- Xany. If there is not and you would like to add it. Edit ~/misc/info. Add the
- Xinformation. Of course you must have level-3 access to do this as editing
- Xany file requires the 'A' command. The same applies for the former two files.
- X
- X As was discussed before, there may be times you wish to post "updates"
- Xabout events surrounding your BBS system or services. As I told you, the
- Xbulletins are only displayed once. But they can be reread by another command.
- XType 'B' from SBBS main and enter the subject of the update. There is a
- Xdefault provided for you. You don't have to use this default. Then you compose
- Xthe message using the SBBS editor. And you're done.
- X
- X You may reshow any bulletins by the 'O' command from SBBS main. In fact,
- Xany user can. Just answer Y or N when it asks you if you wish to read a certain
- Xbulletin. When it scans through all of them, it will exit.
- X
- X Message Bases--a way to communicate
- X
- X There is a way to have all users talk to each other through one common
- Xarea; called the Message Bases. It's the 'M' command from SBBS main. The
- XMessage Bases are divided into specific topics - called (strangely enough)
- Xa "message base". Each message base has a name and a number associated with it.
- XThe name is what the messages posted in this area concern. The number is how
- Xyou identify the base. You would not be required to enter the whole topic
- Xwhich may be more then one word.
- X
- X Posting, Killing, and Editing.
- X
- X After entering the message base, you will be put in the "General" base.
- X(#1) You can post or read messages in this area. To post a message, type 'P'
- Xfrom Message Main (The "General)" prompt.) prompt. Enter the subject of
- Xyour message. The subject is more specific about what your message is
- Xabout. It should pertain to the topic. Which is General. So it could be any-
- Xthing. For someone to read it (including you) you type either 'I', 'F', 'R', or
- X'N'. 'G' reads messages from all message bases. If you don't know what these
- Xcommands stand for, type '?' at Message Main.
- X
- X You may wish to kill a message you made. Any user may do this. Simply
- Xtype 'K' and enter the message number. (not the subject. The number can be
- Xseen when reading your message.) Unless you are a level-2 or level-3 user,
- Xyou may not kill messages you did not post. Level-2 and level-3 may delete
- Xany message.
- X
- X Editing a message
- X
- X You may have made a mistake you will regret. Don't fret. Just use option
- X'O' (For "open message to edit." Not 'E'. don't get thrown off.) and type
- Xthe message you were going to edit. If you are not a level-2 or level-3 user,
- Xyou may only edit YOUR message. Level-2 and level-3 users may edit any message.
- X
- X Creating a message base
- X
- X If you just installed SBBS, chances are that there is only the General
- Xmessage base. To list all of the message bases, type 'L' from Message Main.
- XIf you wish to create more, type 'C'. Then enter the topic for the message
- Xbase. It then asks for you to confirm your topic and creates it. This is ONLY
- Xavailable to the level-2 and level-3 users.
- X
- X The MBM
- X
- X MBM stands for Message Base Manager. An MBM assumes privileges for level
- X2-3 users. But his power is limited to a particular message base only. And he
- Xstill may not use the 'C' option. Further more, an MBM only exists in
- Xmessage bases. Not any other place. He may be an MBM of more then one message
- Xbase but these must be specificly told to SBBS. There may be only one MBM. The
- Xfollowing are available to level-2/3 users and the MBM. This controls what
- Xrestrictions on a message base may be imposed and what the MBM is. This
- Xoption is 'Z'. It's a sub-menu with the options inside. Only level-2 , level-3,
- Xand MBMs may use it. And they can use ALL of the features COMPLETELY. (NOTE:
- XMBMs can use the E and K commands from Message Main just like a level-2 or
- Xlevel-3 user.)
- X
- X The 'Z' command in Message Main
- X
- X When you type this command, some information about the current message
- Xbase is displayed. You may get this information back by the 'I' command. If
- Xyou need help type '?' , as always. To exit type 'E'.
- X
- X Changing or assigning the MBM
- X
- X The 'B' command from this sub-menu allows it. Even an MBM may use this to
- Xswitch over control to another user. Type the ID of the user who you want to
- Xbe MBM.
- X
- X Restrictions
- X
- X The 'C' command allows you to change restrictions. It shows three different
- Xrestrictions: access, restricted list, none. To lift any restrictions, type
- X'N'. To restrict users by access, type 'A'. Then type a list of accesses that
- XMAY use that message base. INCLUDE YOURS OR YOU WILL NEVER GET BACK IN! You
- Xmay also make a restricted list--the 'R' option. Type the users ALLOWED in.
- XAgain, INCLUDE YOUR ID NUMBER! OR YOU WILL NEVER GET BACK IN! If you make a
- Xmistake, don't worry. As long as you don't exit the message base, you can
- Xcorrect it. If you wish to add or delete restrictions, you have to retype them.
- XFor accesses this isn't to bad. But for a restricted list it may be tedious.
- XYou must type ALL IDs of the users to let in.
- X The Program Library and UDL
- X
- X Choose option 'P' from SBBS main. What you get is list of programs
- Xavailable. Type the number of the program and it will run it for you. Two
- Xspecial "commands" are also available: '$', and '#'. '$' will exit to the
- Xmain menu. '#' will relist the programs.
- X
- X Of course, you will want to add your special programs. You may do this
- Xonly if you are a level-3 user. Go get the Administrative shell. Then go to
- Xthe misc directory and edit prlib. Each line should be three fields seperated
- Xby colons. The first field is a unique number that identifies that program. It
- Xmust be a number and it is a good idea for them to be in order! :-) The second
- Xfield is the formal name. This is the name the user sees when he lists the
- Xprograms available. The third field is the actual program to run.
- X
- X If you wish to use arguments, environment variables , quotes,
- Xredirection characters or ';'s then you must set up a C variable called "eval"
- Xso that it may EVALuate the line. Using all of the things including file
- Xsubstitution. It doesn't require a value but be sure to have the equal sign.
- X
- X Examples:
- X
- X 1:DCoM II:/u/local/decom
- X 2:Extrox Editor:/u/local/extrox
- X
- X (allowed with C variable eval set)
- X
- X 1:Telex System:/u/local/telex -r
- X 2:Rod Trox:/u/local/dep -r ; ls|wc
- X
- X
- X The File Facilities
- X
- X There is a feature that allows people to store and retrieve text and/or
- Xprogram files. This is done by the DataBases. It's the 'D' command.
- X
- X From the UDL main prompt you can enter a DataBase, exit(E), list(L) the
- XDataBases again, (It lists automaticly the DataBases available. When you
- Xfirst install SBBS, there will be none.) create a DataBase,(Only with if you're
- Xlevel-2 or level-3.) or approve new uploads. (Level-2/level-3 only.
- XExplained later.)
- X
- X To enter a DataBase, enter its number. You will be put in that DataBase
- Xand be at the new FILE prompt.
- X
- X Chances are that if you just installed SBBS you woun't have any Data-
- XBases. You may create them. A DataBase is an area with a specific topic that
- Xdescribes files in that area. To create a DataBase, type 'C'. Then describe
- Xwhat that DataBase is intended for. It will be stored and given a number. You
- Xmay now enter the DataBase.
- X
- X At the FILE mode, you can do things like upload, download and list files.
- XAgain, if you need help, type '?'.
- X
- X Uploading files
- X
- X If you upload a file, it must be approved by a level-2 or level-3 user.
- XIf you are one, you must approve it your self. To upload, answer all questions
- Xand choose a protocol. A protocol tells how both of your computers communicate.
- XThere is already one -- ascii. This simply shows the file and your computer
- Xis responsible for "capturing" it. You may add more protocols if you are a
- Xlevel-3 user. Choose 'A' from SBBS main and go to the misc directory. Edit
- Xprotocols.up. (Note: Download protocols take there own seperate file. Every
- Xthing you learned about setting upload protocols may be applied to download
- Xprotocols. Remember that download protocols are used when downloading a
- Xfile. It takes its protocol from protocols.down)
- XAgain, it has three fields seperated by a comma. And again the first field is
- Xthe number the user chooses to use that protocol. Again the second field is
- Xthe name the user sees. The third field is the program that runs the protocol.
- XOne is there already. Its the ascii one. Please note that C variable eval need
- Xnot be set to evaluate metacharacters as it will automaticly evaluate the line.
- X
- X Examples:
- X
- X 1:Ascii:echo Transmit. Enter A CTRL-D when finished. ; cat >>
- X (That line already in file)
- X 2:Xmodem:/u/local/umodem -rt
- X 3:Kermit:/u/local/kermie -rt
- X
- X Remember to also edit protocols.down for adding the simmular protocols.
- X
- X 1:Ascii:echo Prepare to receive. ; cat
- X (already in there)
- X 2:Xmodem:/u/local/umodem -st
- X 3:Kermit:/u/local/kermie -st
- X
- X See the little but important differences between the two files?
- X
- X Approving files
- X
- X Finally, a file uploaded must be approved. Choose 'N' from UDL main. If
- Xthey're no uploads it will send you back with a "No uploads." message. Other-
- Xwise it will cycle through all the uploaded files. Remember where they're
- Xstored? The udl/new directory. It will print information on the file (like
- Xwho uploaded it and what DataBase) and ask you what to do with it. Make a
- Xdecision and go on. Once you're through, it will do what you told it to and
- Xexit. The commands are:
- X
- X a - Abort. Go back to UDL main and leave all files in tact..
- X v - View first and last ten lines of a file.
- X d - Delete that file and don't move it to a DataBase.
- X m - Move the file to that DataBase -- approve it.
- X
- X
- X This concludes are administration documentation. Direct questions to
- Xrobertd@ncoast.UUCP
- X...uunet!amdahl!sun!mandrill!ncoast!robertd
- SHAR_EOF
- sed 's/^X//' << 'SHAR_EOF' > config.tbl
- X The following is a list of valid
- Xvariables for config. NOTE: All
- Xvariables are in the form "variable=v".
- XThere are NO spaces between the "="
- Xsign. Even if there is no value needed
- Xto suply to the variable, there must
- Xbe an "=" sign after the variable.
- X
- X Example:
- X
- X cycle=4
- X elite=
- X
- X Not:
- X
- X cycle = 4
- X elite
- X
- X Default numeric values will appear
- Xin parentheses. Anything in {}'s should
- Xbe substituted with its real value and
- Xbe a PART of the variable name on the
- Xleft side of the "=".
- X
- X[ Variable ] [ Meaning ]
- X------------ / ------------------------
- Xname=name The name of your BBS is
- X "name".Example:name=UNIX
- Xversion=vs The version of your SBBS
- X BBS is "vs".
- Xcycle=cycle(3) Number of times SBBS
- X will prompt a user to
- X re-enter illegal ID or
- X password before exiting.
- Xcls=cls_cmd This tells SBBS what
- X program to run when it
- X needs to clear the
- X screen. DEFAULT: echo ^L
- Xeval= Set eval flag. This
- X evaluates commands found
- X in ~/misc/prlib,
- X ~/misc/protocols.up, and
- X ~/misc/protocols.down.
- X This allows commands to
- X be called up with
- X arguments, environment
- X variables, etc.
- Xelite= Set elite flag. This
- X will disallow new users
- X from registering.
- Xnewuser=file What file to show when
- X a new user registers.
- Xshell=shl_prg Shell to run when the
- X administrator runs the
- X "A" option. Default:
- X /bin/sh.
- Xlog=lognoms(10)How many log names to
- X keep in the userlog
- X before clearing it and
- X starting again.
- Xmbm{b}=mbm The user with the ID of
- X "mbm" will have control
- X of message base "b".
- X This can be set by the
- X administrator or MBM of
- X the base WITH IN SBBS by
- X the "Z" option in the
- X Message Base.
- Xb{b}=r:d Message Base "b" is to
- X have a restriction type
- X of "r". ("restrict" or
- X "access") And allow only
- X people with IDs or
- X access levels (Depending
- X on value of "r") to
- X access that Message Base.
- X
- SHAR_EOF
- sed 's/^X//' << 'SHAR_EOF' > setup.doc
- X.ll 70
- X.in 5
- X.nf
- X.ce 4
- XSBBS: The Sigma Bulletin Board System
- XSetup Guide(*)
- X
- XSBBS is copyright (C) 1987 by Rob DeMarco.
- X
- X
- X
- X.fi
- X.ce 1
- XIntroduction
- X
- XSBBS runs as a login shell and takes a bit of work to install properly.
- XThis document will help you do so and explain a few things about the way
- XSBBS operates.
- X
- XIncluded with the SBBS package are four documentation files. They are:
- X
- X.in +5
- X.nf
- XREADME - an explanatory note
- Xsetup.doc - how to set up and configure an SBBS system
- Xadmin.doc - SBBS administration functions
- Xconfig.tbl- valid configuration variables
- X.in -5
- X.fi
- X
- X
- X.ce 1
- XInstalling SBBS
- X
- XThe most efficient way to run SBBS is to create a seperate login account for
- Xthe SBBS program. As SBBS maintains its own list of BBS users (and their
- Xpasswords), this allows users to simply type "su sbbs" to enter the program.
- XAlternately, if your version of UNIX ignores the default login shell when a
- X"su" command is executed, users can use "exec login sbbs". With a bit of
- Ximagination and a knowledge of shell programming techniques, any number of
- Xalternate methods can be devised.
- X
- XAll SBBS programs and files reside in one directory. The software is normally
- Xconfigured to be based in the directory /u/sbbs, although this can be changed
- Xto suit your particular needs. If you wish to place SBBS elsewhere, edit the
- Xfile login-sig and change the line
- X
- X.in +5
- Xdir=/u/sbbs
- X.in -5
- X
- Xreflect the desired location.
- X
- XAfter you have decided on SBBS's home, make sure that directory is created and
- Xthen create a subdirectory called programs. All files from the shell
- Xarchives should be kept in this directory, usually called /u/sbbs/programs.
- X
- XFrom this point on, the directory you have chosen for SBBS to reside in will
- Xbe referred to as ~sbbs.
- X
- XAfter insuring that a copy of every file from the shell archives exists in
- X~sbbs/programs, run the "install" program. This will automatically create the
- Xnecessary SBBS data files.
- X
- XFinally, add an appropriate line to your /etc/passwd file to allow users to
- Xaccess SBBS. A typical example follows.
- X
- X.in +5
- Xsbbs::1000:1000:SBBS user:/u/sbbs:/u/sbbs/programs/initial
- X.in -5
- X
- X
- X.ce 1
- XSupport
- X
- XIf you wish to become a registered owner of SBBS, contact robertd@ncoast.UUCP.
- XSupport will include periodic updates and possibly an SBBS newsletter.
- X---------------------
- X* Writen By Rob DeMarco (robertd@ncoast)
- XRevised and edited by Bill Wisner (billw@killer)
- XUpdated by Rob DeMarco
- SHAR_EOF
- exit
-
-
-