zctl - zephyr control program
Zctl is a general purpose control program for the
Zephyr(1) Notification Service. It allows the user to subscribe to
specific notice types, to save the subscriptions in a file (default
$HOME/.zephyr.subs), to change his location information, and to send control
messages to the HostManager, zhm(8), and the WindowGram client,
zwgc(1).
The commands may be typed on the command line, or may be entered
interactively by just typing zctl and then typing commands to the
prompt.
NOTE: For all commands accepting an optional recipient argument,
the recipient defaults to your Kerberos principal. You may also
subscribe to recipient ``*''. If you specify a recipient, it is
silently converted to ``*''.
The commands are as follows:
- add class instance [
recipient ]
- Subscribe to class, instance, recipient, and add this triplet to
the subscriptions file.
- add_unsubscription
class instance [ recipient ]
- Unsubscribe to class, instance, recipient, and add this triplet to
the subscriptions file as an un-subscription. For an explanation of
un-subscriptions, see below.
- cancel
- Cancel all subscriptions.
- defaults
- Retrieve the default subscription list from the Zephyr server.
- delete class
instance [ recipient ]
- Unsubscribe to class, instance, recipient, and remove this triplet
from the subscriptions file.
- delete_unsubscription
class instance [ recipient ]
- Unsubscribe to class, instance, recipient, and remove this triplet
from the subscriptions file as an un-subscription.
- file [ file
]
- Set default subscriptions file to file. If file isn't
specified, show what the current subscriptions file is.
- flush_locs [
user ]
- Tell the Zephyr servers to flush all location information associated with
user, or with the user running the command if none is given. This
should only be used to remove any incorrect data that may have been left
after a system crash. Note that only Operations staff may flush location
information associated with another user.
- flush_subs [
recipient ]
- Tell the Zephyr servers to flush all of recipient's subscriptions,
This differs from the cancel command in that it affects subscriptions for
all of recipient's clients. Note that only Operations staff may
flush the subscriptions of another user.
- hide
- Hide your location as maintained by the Zephyr server. This does not
affect the value of the exposure variable (see below, under
set).
- hm_flush
- Tell the HostManager, zhm(8), to ask the server to flush all state
associated with the current host.
- list [ file
]
- List contents of current subscriptions file or file. Any macros in
the file (see below) are displayed verbatim and not expanded.
- list_requests
- List all available commands. May be abbreviated by '?'.
- load [ file
]
- Subscribe to all subscription triplets and unsubscribe to all
un-subscription triplets in current subscriptions file or
file.
- new_server
- Tell the HostManager, zhm(8), to find a new Zephyr server.
- quit
- Exit from zctl.
- retrieve
- Retrieve all current subscriptions from the Zephyr server. These include
subscriptions that might have been made by other programs, such as
znol(1).
- save [ file
]
- Save all current subscriptions (as returned by the Zephyr server) into
current subscriptions file or file. The file will be replaced.
- set var [ value
]
- Set the value of Zephyr variable var to value, or null if no
value is specified. The variable exposure has special
significance, and can only be set to the values none, opstaff,
realm-visible, realm-announced, net-visible, and net-announced. Setting
this variable immediately updates the information in the Zephyr servers
(see below for an explanation of the exposure levels). In addition,
setting this variable to none automatically performs the equivalent of a
wg_shutdown command, and setting it to one of the other values
automatically performs the equivalent of a wg_startup command.
The variable resolved_addresses determines whether zwgc will, for an
IP address indicating the origin of a message, attempt to look up the
hostname corresponding to that IP address. The value none indicates that
hostnames will never be found, and that the zwgc fromhost variable will
thus always contain an IP address (in dotted-decimal form). The value all
indicates that there will always be an attempt to look up a hostname. Note
that in this case, if you have any subscriptions with recipient
``*'', these subscriptions may be revealed to other Zephyr users
who operate their own DNS name servers. Any other value is interpreted as
a regular expression; hostname lookup attempts will occur only if the IP
address matches this regular expression.
Any variable settings you make will be stored in
$HOME/.zephyr.vars
- show var [
var ... ]
- Show the value of the specified Zephyr variables. If a variable is not
defined in the user's own variables file, the system variables file
(/etc/zephyr/zephyr.vars) is searched for a default value.
- subscribe
class instance [ recipient ]
- Subscribe to class, instance, recipient, but don't add this triplet
to the subscriptions file.
- unhide
- Make your location as maintained by the Zephyr server visible. This does
not affect the value of the exposure variable.
- unload [ file
]
- Unsubscribe to all subscription triplets in current subscriptions file or
file. Un-subscriptions in the file are ignored.
- unset var [
var ... ]
- Delete the definitions of the specified Zephyr variables.
- unsubscribe
class instance [ recipient ]
- Unsubscribe to class, instance, recipient, but don't remove this
triplet from the subscriptions file.
- wg_exit
- Tell the WindowGram client, zwgc(1), to exit.
- wg_read
- Tell the WindowGram client, zwgc(1), to reread its description
file.
- wg_shutdown
- Tell the WindowGram client to shutdown; this causes it to ignore all
notices until a wg_startup command is issued.
- wg_startup
- Tell the WindowGram client to start accepting notices again; useful after
a wg_shutdown command has been issued.
There are three macros, %host%, %canon%, and %me%.
%host% is converted to the current hostname, %canon%
is converted to the official hostname as returned by
gethostbyname(3), and %me% is converted to your Kerberos
principal. These macros can be used in your $HOME/.zephyr.subs file
or as arguments to commands to specify the class or instance
fields. A sample $HOME/.zephyr.subs file might contain the
following:
message,urgent,%me%
syslog,%host%,*
mail,pop,%me%
Zctl reads the environment variable WGFILE, to find
the name of the file where the windowgram port resides. If WGFILE is
not set, the file name defaults to /tmp/wg.uid, where uid is
the user's UNIX uid.
The zephyr server, zephyrd(8), maintains default
subscriptions which are automatically added to all users' subscriptions at
the time of their first subscription during a login session. If you wish to
automatically remove some of these default subscriptions, you use
un-subscriptions. When you load a subscription file containing
un-subscriptions, the un-subscriptions are automatically sent to the server
as if you had used the unsubscribe command.
The different exposure levels affect the operation of zephyr and
its interaction with the user, as follows:
- none
- This completely disables Zephyr for the user. The user is not registered
with Zephyr. No user location information is retained by Zephyr. No login
or logout announcements will be sent. No subscriptions will be entered for
the user, and no notices will be displayed by zwgc(1).
- opstaff
- The user is registered with Zephyr. No login or logout announcements will
be sent, and location information will only be visible to Operations
staff. Default subscriptions and any additional personal subscriptions
will be entered for the user.
- realm-visible
- The user is registered with Zephyr. User location information is retained
by Zephyr and made available only to users within the user's Kerberos
realm. No login or logout announcements will be sent. This is the system
default. Default subscriptions and any additional personal subscriptions
will be entered for the user.
- realm-announced
- The user is registered with Zephyr. User location information is retained
by Zephyr and made available only to users authenticated within the user's
Kerberos realm. Login and logout announcements will be sent, but only to
users within the user's Kerberos realm who have explicitly requested such
via subscriptions. Default subscriptions and any additional personal
subscriptions will be entered for the user.
- net-visible
- The user is registered with Zephyr. User location information is retained
by Zephyr and made available to any authenticated user who requests such.
Login and logout announcements will be sent only to users within the
user's Kerberos realm who have explicitly requested such via
subscriptions. Default subscriptions and any additional personal
subscriptions will be entered for the user.
- net-announced
- The user is registered with Zephyr. User location information is retained
by Zephyr and made available to any authenticated user who requests such.
Login and logout announcements will be sent to any user has requested
such. Default subscriptions and any additional personal subscriptions will
be entered for the user.
- zctl
- Runs zctl in interactive mode.
- zctl load
- Load subscriptions and un-subscriptions from $HOME/.zephyr.subs
file.
- zctl sub message personal
- Subscribe to personal messages, but don't add this to the subscriptions
file.
- zctl save
- Save all current subscriptions to the default subscriptions file.
- zctl set exposure none
- Set your exposure level to `none', effectively turning off Zephyr.
/tmp/wg.*
$HOME/.zephyr.subs
$ZEPHYR_VARS or $HOME/.zephyr.vars
/etc/zephyr/zephyr.vars
Robert S. French (MIT-Project Athena)
Copyright (c) 1987,1988 by the Massachusetts Institute of
Technology. All Rights Reserved.
zephyr(1) specifies the terms and conditions for redistribution.