The CCSO Nameserver - An Introduction
by
Steven Dorner
[email protected]
Computer and Communications Services Office
University of Illinois at Urbana
March 29, 1990
updated by
Paul Pomes
[email protected]
Computer and Communications Services Office
University of Illinois at Urbana
August 2, 1992
% ph steven dorner
----------------------------------------
name: dorner steven c
phone: 244-1765
address: 181 dcl
: CAMPUS MC 256
department: computing services office
title: res programmer
hours: 7-5, four days per week.
email to:
[email protected] (
[email protected])
----------------------------------------
What is the CCSO Nameserver?
The CCSO Nameserver could be considered a database containing
information about people and things at the University of Illi-
nois. It is designed to be extremely flexible in terms of the
information it keeps and also to provide fast access to that
information. Currently, most of the information in the
Nameserver database comes from the University Student/Staff
Directory (the printed phone book). The database also holds
several additional categories of information such as the complete
university course timetable for the fall, spring, and summer
semesters; a guide to local restaurants; area codes for major
cities and regions in the U.S.; up-to-the-hour weather condition
and forecast information for many Illinois cities and larger
metropolitan areas throughout the country; and special entries
created on request such as organizations within departments and
student clubs and groups.
____________________
Converted to portable n/troff format using the -me macros from
funky Next WriteNow format (icch).
The CCSO Nameserver could also be regarded as a pair of programs:
one that manages the actual data (this program is called qi, for
query interpreter), and another program (or rather a group of
programs - one for each computing platform on the campus network)
that handles end-user requests. The programs that handle user
requests are usually called ph (or ph clients), which stands for
phone book. Because ph is the name of the software familiar to
most end-users, many people refer to the Nameserver itself as ph
or use the terms Nameserver and ph interchangeably.
Where is it?
The database for the Nameserver is installed on a VAXServer 3500
that runs the UNIX operating system (Ultrix 3.0); the name of
this CCSO computer is garcon.cso.uiuc.edu with the alias
ns.uiuc.edu. The program that manages the database (qi) also
runs on this machine. Qi allows programs running on other com-
puters to access the database by serving as an intermediary
between them and the actual database.
The Nameserver functions on a "server-client" basis. This means
that the database and query interpreter reside on a single com-
puter (the VAXserver described above), which functions as the
"server". Mainframes and desktop computers can transparently
access server data over UIUCnet, the campus network, using spe-
cial software designed to communicate with the server. Machines
running such software (and the end-user software itself) are typ-
ically referred to as ph "clients". Ph client programs have been
developed for almost all of the mainframe and desktop computing
platforms and operating systems found on the UIUC campus includ-
ing UNIX, VM/CMS, VMS, PC (DOS), Macintosh, Next, and X Windows.
Some of these clients were developed locally, while others have
been developed by programmers at other institutions.
A full-featured ph client is available on all CCSO-administered
UNIX computers. A slightly less robust client can be found on
the CCSO IBM mainframe VMD. Ph client software is also installed
on hundreds of desktop computers and workstations on the campus
network. Client software for desktop computers such as IBM PCs
and Macs provides convenient access to server data without
requiring a mainframe account or special knowledge of an unfami-
liar operating system or text editor. For a list of ph clients
and information on where to get them, see ph's on-line help for
"clients".
What Services Does the Nameserver Offer?
The Nameserver can be used to find the phone numbers and
addresses of University faculty, students, and staff members,
just like the printed version of the Student/Staff Directory; but
the Nameserver is not a mere electronic copy of the campus phone
book. For one thing, it contains the electronic mail addresses
for thousands of faculty, students, and staff. It also includes
additional information about some individuals such as office
hours, birthdays, vacation plans, facsimile numbers, etc. Infor-
mation of the latter sort is usually entered manually by the
owner of the entry and is, thus, available for some people in the
database and not others.
The Nameserver also contains entire categories of information not
found in the Student/Staff Directory; e.g., weather conditions,
local restaurants, national area codes, the university course
timetable, etc. For information on how to extract such informa-
tion from the Nameserver, see ph's on-line help for "people",
"campus_units", "weather", "areacodes", "restaurants", and
"timetable".
A key thing to know about the Nameserver is that, if you use a
computer that has a full-featured ph client installed on it, you
can change the information the Nameserver keeps about you. For
example, if your office address or phone number changes in the
middle of the year, you can put your correct address and phone
number in the Nameserver immediately so that people can use ph to
find up-to-date information about you.
Another very important function of the Nameserver is electronic
mail forwarding. If you tell the Nameserver where you read your
electronic mail by recording this information in your "email"
field, then anyone wishing to send mail to you can send the mail
to
[email protected], where alias is your Nameserver alias (a unique
name by which the Nameserver knows you, generally formed by your
first initial, a hyphen, and your full last name). If someone
doesn't know your Nameserver alias, s/he can send mail to
[email protected], and the Nameserver will try to find you. In
either case, the Nameserver will send your mail to the address
listed in the "email" field of your nameserver entry. For exam-
ple, you can send mail to Steven Dorner (author of the UNIX ph
program) using the address:
[email protected] ("s-dorner" is
Steve's Nameserver alias), or
[email protected] (Steve's
real-life name). Either way, the mail will be forwarded by the
Nameserver to "
[email protected]", which is where Steve
currently reads his mail. For more information on e-mail for-
warding, see the ph on-line help for "e-mail".
Nameserver Restrictions and Limitations
There are some things the Nameserver is not meant to do. One
thing that should be mentioned right away is that the Nameserver
can't be used to generate mailing lists for junk mail. The
server is designed so that queries that generate more than 25
responses are refused. So, you don't have to worry about getting
junk mail because you appear in the Nameserver's database.
Also, the Namserver cannot be used to notify the University about
changes of address, phone number, and/or other personal or offi-
cial information about yourself. Although you can change this
kind of information in your Nameserver entry, such changes are
not automatically sent to your department, the Office of Admis-
sions and Records, Payroll, or anywhere else. You must notify
these offices individually by filling out the appropriate paper-
work.
Using Ph to Find Information
Ph can be used to look up information about people or things in
the Nameserver database or to change information in your own
entry. The specific procedures involved will depend on the ph
client you use. To use ph to find out information about a per-
son, type "ph" and the name of the person you want to know about
(note: some ph clients do not require the user to type the com-
mand "ph" before the name); ph will respond with information
about that person. For example:
% ph steven dorner
----------------------------------------
name: dorner steven c
phone: 244-1765
address: 181 dcl
: CAMPUS MC 256
department: computing services office
title: res programmer
hours: 7-5, four days per week.
email to:
[email protected] (
[email protected])
----------------------------------------
If there are lots of people who have the name you asked for, ph
will let you view the list a screenful at a time; just hit the
spacebar to move to the next screen. (Here again, the method of
advancing from one screen to the next will depend on the client
you use. Most ph clients take advantage of the native charac-
teristics of the platform on which they are installed. Thus, the
Macintosh client requires you to use the scroll bar in order to
move to the next screen, the VM/CMS client waits for you to press
the "clear" key, etc.)
If you do not know the exact spelling of a name, you can use spe-
cial symbols in the name to take the place of one or more unknown
characters. These symbols are called "metacharacters". I won't
say anything more about metacharacters here; see the on-line help
for "manpage" and "query" for more information.
Sometimes, you will ask ph for a name, and it will refuse to give
you information because too many people have that name. For
example:
% ph steven
502:Too many entries to print.
Ph does this so that no one can use it to create mailing lists
for junk mail or other nefarious purposes. If you really want to
find the person, you will have to know something else about them,
like part of their last name (or first name, if you know their
last name), their phone number,[1] or some other piece of infor-
mation that has been recorded in their Nameserver entry. Sup-
pose, for example you know this fellow named Steven who works in
DCL, but you don't know his last name. You could say:
% ph steven address=dcl
and all of the "steven"s who have "dcl" in their address field
would be displayed.
Using Ph to Change Information
Ph can also be used to change information. Not all ph clients,
however, permit the user to access his or her own entry and edit
it. The following discussion focuses on the UNIX ph client and
clients similar to it such as the VMS, VM/CMS, and DOS client.
(The Macintosh ph client also allows a user to login and change
his or her entry, but the procedure is entirely different from
that described here. Full documentation is available for the Mac
client.)
If you want to change the information the Nameserver keeps about
you, type "ph" at the operating system prompt. Ph won't look up
a name, but will instead give you a special "ph>" prompt. There
are many possible commands you can type once at the "ph>" prompt;
they are described in full in the ph manual page and also in the
ph on-line help for "commands". You will only need to know four
commands to change your information: login, me, edit, and quit.
Before actually using ph to change your entry, you will have to
make some preparations.
The first thing you need to do is find out your Nameserver alias.
This is a unique name assigned to you by the Nameserver. A
person's alias is usually formed by combining his or her first
initial, a hyphen, and complete last name. For example, "Steven
C. Dorner" has an alias of "s-dorner". Some people share the
same first initial and last name; these people typically have a
number added to the ends of their aliases so that their aliases
remain unique. For example, "John Doe" might have an alias of
"j-doe1", and "Jane Doe" might have an alias of "j-doe2". The
easiest way to find your alias is to look up your name with ph.
____________________
[1] See the ph manual page for information on how to search
for people with a certain phone number or address.
Once your know your alias, you need to find out your Nameserver
password. To do this, come to the CCSO Resource Center in Room
1420 DCL and present a valid University ID at the Accounting
Desk. We cannot give out passwords via email or phone to prevent
disclosure to unauthorized persons. In cases where a) ph is
being used by the same user-id on the same machine that's listed
in the email field, and b) ph has been installed "setuid root",
and c) the ph version is 5.2 or greater, then no password is
needed to login.
Now, it's time to use ph to change your information. Type "ph"
and the "return" key. You will get a "ph>" prompt. Now, type
"login alias" (but use your real alias, not the word "alias"!)
and a return. Ph will ask for your password; type your password
and a return. You should get a greeting from the Nameserver, and
another prompt. For example:
% ph
$Date: 1992/09/05 18:20:49 $$Revision: 1.2 $
100:Ph passwords may be obtained at CCSO Accounting, 1420 DCL.
100:Be sure to bring your University Id Card. You may not need
100:a password if you are using the login in your email field.
200:Database ready.
ph> login s-dorner
Enter nameserver password:
200:s-dorner:Hi how are you?
ph>
You are now ready to change your information. Your Nameserver
entry is organized into "fields", each one containing a different
piece of information. There is a field for your name, your
address, your phone numbers, etc.[2] To see all of the fields in
your entry, type the command me at the "ph>" prompt. It's always
a good idea to use the me command before and after changing an
entry to verify the original and new contents of your entry.
To change a particular field, type "edit field" and a return,
substituting the name of the field you wish to change for
"field". For example, if you want to change your phone number,
type "edit phone". You will be placed in your favorite UNIX edi-
tor,[3] with the current contents of the field you specified
displayed. If the field was empty, you will be presented with an
empty file into which ypu can insert text. Make whatever changes
you wish, save your changes, and exit the editor. Ph will then
change the information in the field specified for you.
____________________
[2] The ph command fields will give a complete list of
Nameserver fields.
[3] Unless you take pains to change it, that editor will be
vi(1); see Appendix A if you've never used vi before.
If you aren't familiar with your machines's text editor, you may
prefer to use the make command instead. N.B., the make command
does not work properly with the VM/CMS client. After you login
to ph, just type, make name-of-field="value-of-field"
ph> make email="
[email protected]"
200:1 entry changed.
ph>
When using the make command, be sure to enclose the "value-of-
field" information is double quotation marks (").
Some field information cannot be changed; the "name" field, for
example. If you need to change such a field, arrangements can be
made with the staff at the CCSO Accounting and Distribution
Office in 1420 DCL.
Once you are finished changing your information, type quit and a
return. You will be logged out of ph and returned to the operat-
ing system prompt.
Suppose I Don't Have Access to a Ph Client?
If your computer doesn't have a ph client installed on it, but
you would like to use ph to look up addresses or change your
information, you can still do so. Connect to the CCSO's Sequent
computer ux1 by using telnet ("telnet"ux1.cso.uiuc.edu" sytek
("call 1600"), or by dialup (333-4000, ux1). When you see the
"login:" prompt, type "phones" and a return. You will then be
prompted for your terminal type. If you have a vt100 terminal or
terminal emulator, you can just type a return; if you have some
other terminal, type its name.[4] You will eventually get a "ph>"
prompt, and can use ph to lookup and change information.
____________________
[4] If you have trouble finding the right name to use for your
terminal, call the CCSO Consultants at 333-6133.
Where Can I Find More Information About Ph?
Ph has an extensive on-line help system. UNIX users can access
it by entering ph's interactive mode, and typing, help.
% ph
$Date: 1992/09/05 18:20:49 $$Revision: 1.2 $
100:Ph passwords may be obtained at CCSO Accounting, 1420 DCL.
100:Be sure to bring your University Id Card. You may not need
100:a password if you are using the login in your email field.
200:Database ready.
ph> help
----------------------------------------
These "ph" help topics are available:
add interactive_mode query
change login quit
command-line_mode logout register
commands make status
delete manpage switch
edit me vi
fields passwd
help ph
To view one of these topics, type "help name-of-topic-you-want".
----------------------------------------
These ``native'' help topics are also available:
100 501 514 aliases ph_news
101 502 515 areacodes policy
102 503 516 campus_units protocol
200 504 517 clients proxy
201 505 518 e-mail restaurants
300 506 519 email sites
301 507 520 forwarding timetable
400 508 521 introduction type
401 509 522 nickname weather
402 510 523 no_update
403 511 598 paper
475 512 599 password
500 513 alias people
To view one of these topics, type "help native name-of-topic-you-want".
----------------------------------------
CMS users of ph should give the command, "ph help", and subse-
quently "ph help name-of-topic" (e.g., "ph help email").
What If I Have Trouble?
If you have problems or questions that are not resolved by read-
ing this document, the ph on-line help, or The CCSO Nameserver,
Server-Client Protocol, document, call the CCSO SYstems Consult-
ing Office at 333-6133.
APPENDIX A
A Rank Beginner's Guide to VI
This page describes a few vi commands to accomplish simple edit-
ing tasks. Full documentation for vi can be found in The UNIX
User's Manual Supplementary Documents, chapter 15 (really
advanced users should read chapter 16 as well). Two thing to
keep in mind: First, the editor is pronounced "vee eye"; if you
pronounce it, "vie", UNIX gurus will laugh at you, though not out
loud. Secondly, vi is case-sensitive; be sure to use upper or
lower case commands as appropriate.
Modes
Vi is a modal editor; what you can do depends on what mode you
are in. The two modes of interest to us are command mode and
insert mode. You type most commands in command mode; all you do
in insert mode is type your text. You get out of insert mode by
typing escape, usually marked "esc" on keyboards; on some key-
boards, you may have to hold down the control or alt key and
press "[". If you type escape in command mode, vi will beep at
you; so if you get confused, just type escape until vi beeps;
then you'll be back in command mode.
Moving Around
Here are some motion commands in vi. They are typed in command
mode, and leave the editor in command mode.
Command What it does
____________________________________________________
control-h Moves the cursor left one character.
h Moves the cursor left one character.
j Moves the cursor down one line.
k Moves the cursor up one line.
l Moves the cursor right one character.
w Moves the cursor forward to the begin-
ning of the next word.
b Moves the cursor backward to the begin-
ning of the previous word.
Deleting Text
Here are some commands to get rid of stuff. Type them in command
mode; they will leave the editor in command mode.
Command What it does
__________________________________________________
dd Deletes the current line.
x Deletes the character at the cursor, and
moves the rest of the line to fill the hole.
Adding Text
The following commands all put you into insert mode and let you
type text. Type escape when you are finished adding text, and
you will be returned to command mode.
Command What it does
__________________________________________________
i Start inserting characters before the
character the cursor is on.
a Start inserting characters after the
character the cursor is on.
O Create a new line above the cursor, and
start inserting at the beginning of that
line. Note that this command is a capi-
tal "O", not zero.
Getting Out
The following commands exit vi. They work in command mode.
Command What it does
__________________________________________________
ZZ Exit vi, and save the changes you have
made. Those are capital Z's!
:q!<cr> Exit vi, but don't save changes (the
"<cr>" means to type return).