home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
GEMini Atari
/
GEMini_Atari_CD-ROM_Walnut_Creek_December_1993.iso
/
files
/
bbs
/
fn132bin
/
fdman
/
chapter.05
< prev
next >
Wrap
Text File
|
1991-09-03
|
32KB
|
654 lines
Chapter 5: The Sysop Command Reference 75
5 The Sysop Command Reference
As has been mentioned before, Fnordadel makes a distinction between ``a
user with Co-Sysop status'' and ``the Sysop''. ``The Sysop'' is assumed
to be you, the guy/gal who runs the system, and there are therefore some
commands which we figure only you will want to use. Some of these commands
are useful only from the system console, and in most such cases you don't
even have to be logged in to use them.
Fnordadel lets you define a specific user name to be used as a synonym
within the system for `Sysop'. To set this up, modify the #sysop parameter
in `ctdlcnfg.sys', as appropriate.
As added conveniences, Fnordadel automatically assigns this user Aide,
Net and Sysop privileges when he/she logs in after the system (or just the
user log) is reconfigured from scratch. Also, any local or network private
mail to `Sysop' is redirected to the user name specified. Finally, the
Sysop is allowed to archive his/her private mail to a disk file if #sysop
is set.
If you do not set the value of #sysop correctly or at all, your system
will not explode. However, it won't know where to send private mail
entered to `Sysop', so all such mail will be dumped into the Aide> room,
where all users present there can see it. This is probably not a desirable
thing, but might actually be beneficial, for example on systems with more
than one Sysop. Also, if #sysop is not set, Sysop mail archiving is not
available.
5.1 The Sysop Special Functions Menu
To perform most Sysop-specific functions, you must first get to the
Sysop menu. If you're on the console, first ensure that Fnordadel is in
console mode. If it is in modem mode (i.e., waiting for somebody to
call, or dealing with a user currently online), hit the `<ESC>' key. If
you're calling in from remote, and you have a system password defined in
`ctdlcnfg.sys', just ensure that you're at a room prompt. (If there is
no system password defined, you will be unable to proceed further as the
system will not allow any remote user access to the Sysop menu without
entering the system password.)
Note: If somebody is logged in and you wish to go to console mode, do
not hit `<ESC>' unless the user is at the main room prompt, or strange
things may happen. Also, once you have interrupted the user, anything you
do as Sysop will be echoed to the user's screen. This includes any command
you execute from the Sysop menu.
If all is in readiness, now press `^L'. If you're calling from remote,
you will now have to enter the system password. This is a point which
bears repeating: Giving your users Aide, Co-Sysop or any other status does
not get them access to the Sysop menu. Any users lacking Co-Sysop status
can not even execute the `^L' command. Those users with Co-Sysop status
won't be able to do anything with the command unless you've given them the
system password.
Chapter 5: The Sysop Command Reference 76
Note that if you call in from remote, the system does not automatically
identify you as ``the Sysop'', even though it could check your user name
against the one defined by #sysop, if you have set that parameter. The
reason is that if somebody ever cracked your password, they would instantly
have access to all system commands.
As it stands, when you call there will be a few things not available to
you that would normally be available if you were on the system console.
Most of them will reappear if you hit `^L' and enter the system password.
At that point the system identifies you (and, indeed, any Co-Sysop who
might do the same thing) as ``the Sysop''. All commands will then be made
available, except for a few that make no sense from remote (like dialing
other systems from the Sysop menu).
Having reached the menu, you will see the prompt `sysop cmd:'. To get
a list of available functions, hit the `?' key. You should see something
close to the following:
[A]bnormal system exit
[B]aud selection
[C]hat toggle
[D]- Toggle debug mode
[E]- Toggle screen echo
[F]ile grab
[G]odirectlytomodemdonotpassGo
[I]nformation
[M]ODEM mode
[N]etwork commands
[O]utside commands
[P]urge menu
[Q]uit citadel
[R]einitialize Modem
[S]et date
[T]elephone call
[U]ser status commands
[W]estwict menu
e[X]it sysop menu
[Y]- Show time til next event
[Z]- Autodial
[A]bnormal system exit
This command will probably be rarely used. It lets you take
your system down, and specify the return value to be given
to whatever started citadel. You will first be asked to
confirm the action, and then asked for the return value, which
defaults to 0, (which indicates a normal exit), or, if executed
from remote, 3 (which indicates a remote exit); these defaults
are equivalent to using the [Q]uit command. If you enter
a non-default return value, everything normally done during a
system exit will still be done, including saving `ctdltabl.sys'.
The only real reason to use this option is if you have a shell
script controlling the activity of your set-up, and wish to pass
it a certain return code to get it to do something. This can
be convenient if you are trying to test commands that are to be
executed by the script based on return codes given by citadel
Chapter 5: The Sysop Command Reference 77
when it exits under control of events you have defined. See
Chapter 7 [Events], page 93.
[B]aud selection
This command allows you to temporarily override the system
baud rate that you specified in `ctdlcnfg.sys'. The values
permissible here are the same as in `ctdlcnfg.sys', i.e., `0'
for 300 baud, `1' for 300/1200 baud, etc.
[C]hat toggle
This will toggle the chat flag on or off. If it is on, a
user executing the [C]hat command will cause the console's bell
to ring, asking for your attention. If the flag is off,
users calling for a chat will be shown the contents of the
`nochat.blb' file. The setting of this toggle is preserved by
the system when you exit from Fnordadel, and will be set the
same way the next time you start up.
[D]- Toggle debug mode
This command lets you toggle debug mode on or off. It is of
no use to normal people, being primarily a switch to aid the
Fnordadel team when they're tracking a bug of some kind.
[E]- Toggle screen echo
This command lets you toggle screen echo on or off. When echo
is on, all incoming and outgoing characters will be displayed on
the console screen, except in certain special situations such as
password entry or when the user is entering a message in Mail>.
When echo is off, nothing will be displayed as users call and
do their things. When you hit `<ESC>' and enter console mode,
everything is echoed to your screen no matter how this toggle is
set.
[F]ile grab
This command allows you to bring the contents of a text
file sitting somewhere on disk into your held message buffer.
This allows you to incorporate text from diverse sources into
messages you post. Beware the size limit of messages, 10000
characters. Also beware of grabbing in files that have strange
formatting or control characters in them; the results may not be
to your taste. See Section 3.4 [The Message Editor], page 52,
and Section 3.2.1.1 [Multi-key message entry commands], page 35,
for information on the held message buffer.
As of this writing, grabbing files into held messages and then
posting the results in anonymous rooms doesn't work quite right.
The message will pop up as non-anonymous; if you wish it to
be saved as an anonymous message, you'll have to toggle it to
be such using the An[O]nymous command in the message editor,
*before* saving. See Section 3.4 [The Message Editor], page 52,
for details on this command.
[G]odirectlytomodemdonotpassGo
This command is a quick method (despite its name) of returning
online to a remote system that you have dialed from within
Fnordadel and temporarily escaped from (by hitting `<ESC>') to
Chapter 5: The Sysop Command Reference 78
do something with your own system. A common situation for
calling a system, escaping to do something on your own, and
going back again, is to do file transfers from the remote system
into your own, via .E(nter) ... F(ile) or .E(nter ... B(inary
file). See Chapter 12 [File Transfers], page 147.
[I]nformation
This command will produce some information about your system,
such as software version, free RAM, etc. The exact details
displayed will vary from version to version, and will be mostly
useful for winning games of ``Trivial Pursuit---The Fnordadel
Edition''.
[M]ODEM mode
This will return your system to modem mode. This is not the
same as the [G]oto... command above, which assumes that you are
interacting with a remote system, using Fnordadel as a terminal
program. Rather, this will reset the system to waiting for a
call to come in, or, if there is a user online whom you've
preempted by going to console mode, will return system control
to that user.
Note that any user logged in at the console is not logged off by
this command. The system will sit there waiting for a call, but
the user will still be logged in until a call is detected. Only
at that point is the user punted off the system to make way for
the caller to connect.
[N]etwork commands
This gets you to the network menu, described in Section 8.2 [The
Net Menu], page 104.
[O]utside commands
This command allows you to escape from Fnordadel to an external
command shell, if you have defined one in `ctdlcnfg.sys'. The
main reason for doing this is to poke around a hard drive-based
BBS looking for certain files, or copying them from place to
place. You could theoretically do anything you wanted, though,
subject to RAM limitations. Be careful not to screw up your
Fnordadel files, as when you exit from the shell, control
returns to Fnordadel. This command is equivalent to the !shell
door command, if you have one defined. See Section 9.3.4 [The
shell door], page 131.
[P]urge menu
This takes you to the purge menu, described in Section 10.2.12
[Purge and Westwict menus], page 139.
[Q]uit citadel
This command, if you answer `Y' to the prompt that pops up, will
exit Fnordadel in the proper manner. You will be returned to
the GEM desktop or your command shell, depending on how you
started Fnordadel in the first place. You should always use
this command to take your system down, since it will write out
the `ctdltabl.sys' file, which contains all the configuration
information generated when you run configur. If you just hit
Chapter 5: The Sysop Command Reference 79
the reset button or shut off your computer, you will have to run
configur before you can start Fnordadel again.
If this command is executed from the console, the return value
from citadel is `0'. If executed from remote (by a remote
Sysop, natch), the return value is `3'.
[R]einitialize Modem
This command causes Fnordadel to send the modem initialization
string (#modemsetup, defined in `ctdlcnfg.sys') to the modem.
You would do this if you suspect your modem's setup is a bit
messed up, and wish to reinitialize it under software control.
If there is a carrier present when you execute this command, it
will be dropped, disconnecting whoever or whatever was on the
other end.
[S]et date
This command permits you to set the system time and date. The
command is duplicated by the .A(ide) S(et-date) command, and is
the only such Sysop command that Aides have routine access to.
[T]elephone call
This command allows you to make one attempt at calling a node
defined in your net-list. (See [A]dd node in Section 8.2
[The Net Menu], page 104, for more details on defining network
nodes.) If the call succeeds, you will be placed in interactive
mode online to whatever it is that you connect with. If the
call fails, you will be returned to the Sysop menu prompt.
[U]ser status commands
This takes you into the user status commands menu, which offers
various commands for transmogrifying users. See Section 5.2
[User Status Commands], page 80.
[W]estwict menu
This takes you to the restrictions menu, which is described in
Section 10.2.12 [Purge and Westwict menus], page 139. Note that
this command works even if you are not Elmer Fudd.
e[X]it sysop menu
This command exits the Sysop command menu, and returns you to
Fnordadel in the same room that you left. The system will
remain in console mode, so if you had hit `<ESC>' and preempted
a user who was online at the time, you should not use this
command. Instead, use the [M]odem mode command, described
above.
[Y]- Show time til next event
If you have any events or network polling periods defined,
this command will show you a list of them, and give the
exact time until the soonest event will be triggered. See
Chapter 7 [Events], page 93, and Section 8.1.3 [Setting up for
networking], page 101, for details.
Chapter 5: The Sysop Command Reference 80
[Z]- Autodial
This command is like [T]elephone, in that it permits you to dial
out using your Fnordadel as a terminal program. The difference
is that [Z] will ask for a list of nodes to call, terminated
by hitting a return at the prompt, and the number of times
it should loop through that list trying to get a connection.
As nodes in the list are connected with, Fnordadel goes into
interactive mode online with each one. You may abort the
dialing sequence by pressing any key.
When you hit `<ESC>' to exit interactive mode after a call,
Fnordadel checks to see if there is still a carrier present on
the modem. If not, it assumes you are done with that node,
deletes it from the list you supplied, and continues looping
through the remaining entries, if any. If carrier is still
present, however, Fnordadel assumes that something tricky is
going on, and tosses out your dialing list. To dial any nodes
that may be remaining on it, you will have to hit `Z' and enter
them again.
5.2 User Status Commands
As mentioned in Chapter 2 [Sysop Theory], page 14, Citadels in general
and Fnordadel in particular are not systems that offer a lot of user
privilege, status or access level `features'. Still, there are some
special cases that need to be dealt with on even the most open and
egalitarian of systems. The [U]ser status menu is where you deal with
them. It is accessed from the Sysop functions menu. Hitting `?' will give
you the following list:
[A]ide status toggle
[C]redit setting
[D]oor privs toggle
[K]ill user
[M]ail privs toggle
[N]et privs toggle
[R]eset daily limits
[S]ysop status toggle
[T]wit status toggle
[V]iew user status
e[X]it to sysop menu
[A]ide status toggle
[S]ysop status toggle
[T]wit status toggle
These three commands allow you to toggle Aide, Sysop or Twit
privileges, respectively, for any user. Refer to Section 2.1
[Your Callers], page 14, for a discussion on the Aide, Sysop and
Twit types.
If you `twit' a user, the system will check if that user has
Aide or Sysop privileges. If so, you will be prompted to
confirm your choice of twit status. Going ahead with the
operation will revoke the user's Aide and/or Sysop privs. If
Chapter 5: The Sysop Command Reference 81
you give someone Sysop privs, he or she automatically gets Aide
privs as well. If you revoke someone's Aide privs, Sysop privs
disappear also. And if you revoke someone's Sysop privs, the
system will courteously ask if you want to revoke Aide privs as
well. Neat, huh?
Keep in mind that making a user a Co-Sysop by giving him or
her Sysop privileges does *not* give that user automatic access
to the Sysop menu. You must also give the user the system
password, which is defined using the #syspassword parameter in
`ctdlcnfg.sys'. If this parameter is left undefined, no remote
user will ever be able to enter the Sysop functions menu. This
includes you, if you dial in.
[C]redit setting
This command allows you to assign long-distance networking
credits to any user. The credits are consumed when the user
enters networked Mail> messages to long-distance destinations.
This permits you to control net traffic, and apply a reasonable
real money charge based on usage, if you so wish. See Chapter 8
[Networking], page 96, for more info.
Note that attempting to assign credits to a user who doesn't yet
have basic net privileges will cause the system to prompt you
about setting net privileges as well. Also note that anybody
with Sysop or Co-Sysop status does not need credits to send
long-distance mail.
[D]oor privs toggle
This command allows you to grant or remove door privileges for
any user. If you wish to have all users normally possess
the same door status by default, you can define the #alldoor
parameter in `ctdlcnfg.sys' to set default door privs. If
#alldoor is `1', all users will be given normal door access
when they first call; if `0', only users with Sysop or Co-Sysop
status have door access. The default value, if you don't set
it explicitly, is `1'. However you set #alldoor, you can
override the system-wide automatic setting using this [D]oor
toggle command on individual users.
If you want to explicitly set the door privilege flag for
all existing users, use the flipbits utility, described in
`flipbits.man'.
[K]ill user
This lets you delete a user's account; the system will prompt
you for a name and ask for confirmation. The deletion
is permanent and cannot be reversed. This means that any
private mail to or from the user will be lost even if the
account is immediately recreated with the identical name and
password. Likewise, all access to invitation-only private rooms
is removed.
[M]ail privs toggle
This command allows you to bestow or revoke private mail
privileges from any user. If you wish to have all users
Chapter 5: The Sysop Command Reference 82
normally possess the same mail privilege, you can define the
#allmail parameter in `ctdlcnfg.sys' to set the default mail
access assigned when users first call.
If #allmail is `1', all users will be given full access to the
Mail> room, except for net-mail considerations as controlled by
network privileges and credits. If #allmail is `0', only users
with Aide, Co-Sysop or Sysop status have full access to the
Mail> room. All other users are allowed to enter mail only to
`Sysop'. #allmail defaults to `1' if you don't specify it.
However you set #allmail, you can override the system-wide
automatic setting using the [M]ail toggle on individual users.
If you want to explicitly set the mail privilege flag for
all existing users, use the flipbits utility, described in
`flipbits.man'.
[N]et-privs toggle
This command allows you to remove or assign network privileges
to any user. Network privileges differ from credit settings in
that they must be possessed by a user to enter network messages
of any kind, public or private, regardless of credit setting.
The sole exception to this rule is the case of autonet networked
rooms, which will automatically make all messages networked,
whether their authors possess network privileges or not.
If you, as Sysop, are feeling particularly generous, you
can define a parameter #allnet in `ctdlcnfg.sys' to give all
users on your system network privileges when they first call,
automatically. This is a dangerous thing to do if you have
any rooms that are sent to long-distance systems, since an
unscrupulous or plain ignorant user could cost you or another
Sysop a lot of money. The [N]et toggle overrides the automatic
default defined by #allnet.
If you want to explicitly set the net privilege flag for all
existing users, use the flipbits utility.
[R]eset daily limits
This command allows you to manually reset all of a user's daily
limit values to their initial states, effectively letting him or
her start with a clean slate on the next call. The limits,
which you can set the system to use or ignore with various
`ctdlcnfg.sys' parameters, normally prevent users from doing too
much of certain things like file downloading or multiple calls
per day. If you ever need to wipe out the system's record of a
user's use of the system during the past day, this command will
do it. See Chapter 10 [Anti-Ruggie Measures], page 133, for
details on the daily limits.
[V]iew user status
This command can be used to view the current settings of any
user. You will be told about things like net, door and mail
privileges, and Aide and/or Sysop privs, if any of these is
possessed by the user. You are also shown the values of the
user's various limit values, such as network credits, daily
Chapter 5: The Sysop Command Reference 83
download amount, and other limits that you may have defined (see
Chapter 10 [Anti-Ruggie Measures], page 133).
e[X]it to sysop menu
This command, as is hopefully obvious, returns you to the Sysop
command menu.
5.3 Miscellaneous Features and Commands
The following subsections describe bits of miscellany that are specific
to the Sysop.
5.3.1 Special keys
There are several special commands that you as Sysop can execute from
the system console, while a remote user is online, and without having to
hit `<ESC>' and go into console mode. They are:
`^R' __Console request__. When a user is logged into your system
and you wish to use it yourself as soon as the user has logged
off, normally you can just sit and wait for him/her to finish
and leave. If you want to make sure that you don't miss your
chance to catch the system, you can request that Fnordadel give
you first crack when the current user leaves. Pressing `^R' any
time will set a console request flag, and let Fnordadel page
you by beeping the console bell for a few seconds when the user
signs off. An `R' appears in the status line when the request
flag is on; see Section 13.4.6 [Status line], page 162.
To answer the system's beeping, press any key, and Fnordadel
will enter console mode. If you don't press a key to answer the
call, Fnordadel will return to modem mode after a short while.
`^E' __Fake an error__. This is a somewhat goofy one. When you
press `^E' Fnordadel will immediately pretend to have a fatal
error and boot the user off. The message printed when the
fake error happens will be the standard Citadel crash message,
`Whoops! Think I'll die now...', unless you have placed a
file called `fakeerr.blb' in your #helpdir, in which case the
contents of said file will be spit at the user. You could use
this command when you need your system *now* and want to evict
an online user, but feel too guilty to simply flick the power
switch on your modem.
Once you hit `E', the system disconnects the user (as if he/she
had done a `.TP' command). It then behaves like `^R', described
above, and beeps at you to give you a chance to press a key to
enter console mode.
Chapter 5: The Sysop Command Reference 84
`^T' __Twit a user dynamically__. This one is even worse than `^E',
or at least more sneaky. Pressing `^T' will cause the current
online user to become a Twit (see Section 2.1 [Your Callers],
page 14), just as if you'd changed his attributes in the usual
way (see Section 5.2 [User Status Commands], page 80). Pressing
`^T' again will toggle Twit status off again. When the user
has Twit status a `T' will appear in the status line; see
Section 13.4.6 [Status line], page 162.
`^Z' __Take Fnordadel to the background__. This is used when
you're running Fnordadel under some sort of multitasker. It
detaches Fnordadel from the console (i.e., makes it not display
on the screen or listen to the keyboard). See Section 13.6
[Multitasking and Fnordadel], page 165.
5.3.2 Chat recording
It is possible that you may want to have a record of a chat between
yourself and a user. To capture your chat, press ^R while in chat mode,
and Fnordadel will record the conversation to a file. Press `^R' again
to switch chat recording off. The file that Fnordadel uses is called
`chat.rec', and will be put in #auditdir.
Note that using `^R' will cause Fnordadel to spit out a message to the
effect that this conversation is being recorded. It's generally considered
good form to tell people that you're recording them.
5.3.3 Mail receipt flag
Fnordadel normally marks all local Mail> messages as ``received'' when
they are read by their recipients. A `ctdlcnfg.sys' parameter, #showrecd,
controls whether the receipt flag is actually displayed to message readers.
Many users like to see it so they know if the people they're mailing are
getting the message and not responding, or just not reading their mail.
The flag is always displayed for the Sysop, regardless of the setting of
#showrecd.
In order to give the Sysop a little more freedom from users who want to
know if their mail to the Sysop is getting through, Fnordadel does not
automatically update the receipt flag when the Sysop reads mail. Instead,
there is a command available in the `more' menu (see Section 3.6 [More
Mode], page 59), called [M]ark as received. This command lets the Sysop
manually mark messages when desired.
5.3.4 Sysop room access
The Sysop is not allowed to forget rooms on the system, and is
automatically allowed access to any room, even if it is invitation-only and
nobody invited the Sysop.
Chapter 5: The Sysop Command Reference 85
5.3.5 Forgotten passwords
If a user ever forgets his/her password, the Sysop can proceed in a
variety of ways (after making sure that the person complaining about the
problem is really the owner of the account in question). We will typically
just kill the account in question, and let the user sign on again.
If the user has unread private mail, or if the Sysop wants to provide an
uncommon level of direct support, killing the account isn't a good idea.
The Sysop could use the clog utility (see `clog.man') to find out the
account's current password, then sign on with it and change it to something
requested by the user, or just tell the user what the password is.
Alternatively, the Sysop could use the logedit utility (see `logedit.man')
to directly alter the account's password, and then inform the user of the
new password.