Annotation of 43BSDReno/contrib/isode-beta/doc/whitepages/user/fred.tex, revision 1.1.1.1

1.1       root        1: % run this through LaTeX with the appropriate wrapper
                      2: 
                      3: \chapter      {The White Pages User Interface}
                      4: The \man fred(1c) program is the ``simple'' interface for the white pages
                      5: service.
                      6: This is actually a small program which talks to the ``complicated'' interface,
                      7: a program called \pgm{dish}.
                      8: The \pgm{fred} program should be able to handle most of the queries you wish
                      9: to make.
                     10: However,
                     11: it is purposefully limited in its power.
                     12: As experienced users will find,
                     13: \pgm{fred} is a great pair of crutches when you need help walking,
                     14: but if you want to sprint, then you need a good pair of sneakers,
                     15: called \pgm{dish},
                     16: instead.
                     17: 
                     18: \section      {Invoking Fred}
                     19: When your local \camayoc/ told you about the white pages pilot,
                     20: you should have been given three bits of information:
                     21: \begin{itemize}
                     22: \item  your handle (a Directory Distinguished Name);
                     23: 
                     24: \item  a password for the handle (so you can keep your own entry up to date);
                     25:        and,
                     26: 
                     27: \item  the location of the \pgm{fred} program.
                     28: \end{itemize}
                     29: 
                     30: \subsection    {Fred resides locally}
                     31: In most cases,
                     32: the \pgm{fred} program will reside on a machine which you have a login on.
                     33: This will be a \unix/ machine.
                     34: 
                     35: Normally,
                     36: the \unix/ directory containing \pgm{fred} is already in your search path,
                     37: e.g., \file{/usr/local/bin/}.
                     38: Type the command:
                     39: \begin{quote}\small\begin{verbatim}
                     40: % which fred
                     41: \end{verbatim}\end{quote}
                     42: If the \pgm{which} command says something like:
                     43: \begin{quote}\small\begin{verbatim}
                     44: /usr/local/bin/fred
                     45: \end{verbatim}\end{quote}
                     46: then \pgm{fred} is already in your search path:
                     47: simply type
                     48: \begin{quote}\small\begin{verbatim}
                     49: % fred
                     50: \end{verbatim}\end{quote}
                     51: and skip to Section~\ref{fred:commands} on page~\pageref{fred:commands}.
                     52: 
                     53: Otherwise,
                     54: if \pgm{which} says
                     55: \begin{quote}\small\begin{verbatim}
                     56: fred not found in path
                     57: \end{verbatim}\end{quote}
                     58: then take a look at the \file{.cshrc} or \file{.profile} file in your home
                     59: directory to see if this is so.
                     60: You should see a line such as:
                     61: \begin{quote}\small\begin{verbatim}
                     62: set path=(. /bin /usr/ucb /usr/bin /usr/local/bin)
                     63: \end{verbatim}\end{quote}
                     64: in your \file{.cshrc} file,
                     65: or some lines similar to
                     66: \begin{quote}\small\begin{verbatim}
                     67: PATH=.:/bin:/usr/ucb:/usr/bin:/usr/local/bin
                     68: export PATH
                     69: \end{verbatim}\end{quote}
                     70: in your \file{.profile} file.
                     71: Verify that the name of the \unix/ directory containing \pgm{fred} is listed.
                     72: If not,
                     73: edit the file to make it so.
                     74: Then,
                     75: tell your shell to re-read the appropriate file,
                     76: e.g.,
                     77: either
                     78: \begin{quote}\small\begin{verbatim}
                     79: % source ~/.cshrc
                     80: \end{verbatim}\end{quote}
                     81: from the {\em C\/} shell,
                     82: or
                     83: \begin{quote}\small\begin{verbatim}
                     84: % . $HOME/.profile
                     85: \end{verbatim}\end{quote}
                     86: from the Bourne shell.
                     87: 
                     88: As they say in the trade,
                     89: ``you are now ready to rock and roll''.
                     90: Simply type
                     91: \begin{quote}\small\begin{verbatim}
                     92: % fred
                     93: \end{verbatim}\end{quote}
                     94: to name that tune.
                     95: Now skip to Section~\ref{fred:commands} on page~\pageref{fred:commands}.
                     96: 
                     97: \subsection    {Fred resides remotely}
                     98: If for some reason you do not have a login on the \unix/ machine where
                     99: \pgm{fred} lives,
                    100: there are three other ways to use the \pgm{fred} program.
                    101: These are described in order of descending preference.
                    102: 
                    103: \subsubsection {via Guest account}
                    104: Your \camayoc/ might provide an anonymous login to a machine where
                    105: \pgm{fred} resides.
                    106: In this case,
                    107: you just use TELNET to the machine,
                    108: using the information provided by the \camayoc/
                    109: who will have already initialized the environment.
                    110: For example:
                    111: \begin{quote}\small\begin{verbatim}
                    112: % telnet wp.psi.com
                    113: login: fred
                    114: 
                    115: Welcome to the NYSERNet/PSI White Pages Pilot Project
                    116: 
                    117:   accessing service, please wait...
                    118: 
                    119: fred> 
                    120: \end{verbatim}\end{quote}
                    121: and away you go.
                    122: Now skip to Section~\ref{fred:commands} on page~\pageref{fred:commands}.
                    123: 
                    124: If you are accessing the White Pages from an \XW/ display,
                    125: and if your TELNET connection is to a host running \XW/ client software,
                    126: then you might see something like this instead:
                    127: \begin{quote}\small\begin{verbatim}
                    128: % telnet wp.psi.com
                    129: login: fred
                    130: 
                    131: Welcome to the NYSERNet/PSI White Pages Pilot Project
                    132: 
                    133: If you want X window access, please enter your DISPLAY name,
                    134: otherwise, if you do not wish to use X, enter "none"
                    135: 
                    136: DISPLAY (default=myhost.nyser.net:0.0)=
                    137: \end{verbatim}\end{quote}
                    138: If you intend to use the \xwindows/,
                    139: then you should make sure that the machine you have a TELNET connection to is
                    140: allowed to access your \XW/ display.
                    141: This is usually accomplished by adding a line such as
                    142: \begin{quote}\small\begin{verbatim}
                    143: xhost +wp.psi.com
                    144: \end{verbatim}\end{quote}
                    145: to your \XW/ start-up file.
                    146: 
                    147: \subsubsection {via WHOIS}
                    148: The white pages service might also be available via the WHOIS network port.
                    149: In this case,
                    150: you use the \pgm{whois} program found on your machine,
                    151: usually with a special option,
                    152: e.g.,
                    153: \begin{quote}\small\begin{verbatim}
                    154: % whois -h wp.psi.com "query"
                    155: \end{verbatim}\end{quote}
                    156: Your \camayoc/ will provide the details.
                    157: There may even be a command called \pgm{whitepages} which shortens type-in
                    158: somewhat,
                    159: e.g.,
                    160: \begin{quote}\small\begin{verbatim}
                    161: % whitepages "query"
                    162: \end{verbatim}\end{quote}
                    163: Note that a key disadvantage of this approach is that it provides read-only
                    164: access to the white pages service.
                    165: You can never update your own entry using this technique.
                    166: 
                    167: \subsubsection {via mail}
                    168: Finally,
                    169: the white pages service might also be available via electronic mail.
                    170: In this case,
                    171: you use the \pgm{mail} program found on your machine,
                    172: and send a message to a special address,
                    173: e.g.,
                    174: \begin{quote}\small\begin{verbatim}
                    175: [email protected]
                    176: \end{verbatim}\end{quote}
                    177: Your query is placed in either the \verb"Subject:" field or the body of the
                    178: message.
                    179: Your \camayoc/ will provide the details.
                    180: 
                    181: In addition to providing read-only access to the white pages service,
                    182: this approach has the added disadvantage of not being interactive.
                    183: 
                    184: \section      {Giving commands to Fred}\label{fred:commands}
                    185: After invoking \pgm{fred},
                    186: you are prompted with ``\verb"fred> "'' indicating that \pgm{fred} is ready.
                    187: (Actually,
                    188: this is only true if \pgm{fred} is invoked from a \unix/ machine.
                    189: If invoked via WHOIS or mail,
                    190: then no prompts are given.)
                    191: 
                    192: If \pgm{fred} is invoked interactively,
                    193: it will look for a file in your home directory called \file{.fredrc}.
                    194: It will execute the commands contained in this file just as if you had typed
                    195: them directly to \pgm{fred}.
                    196: Following this,
                    197: you are given the ``\verb"fred> "'' prompt.
                    198: 
                    199: \section      {Let your fingers do the walking}
                    200: Although \pgm{fred} has several commands,
                    201: the most interesting command is \verb"whois",
                    202: which performs a white pages query.
                    203: 
                    204: If the value of the \verb"namesearch" variable is \verb"friendly",
                    205: then Kille's user-friendly name notation is used.
                    206: (Setting variables is discussed a little later on in
                    207: Section~\ref{setting:variables} on page~\pageref{setting:variables}.)
                    208: Kille's notation is ordered but untyped,
                    209: with components separated by commas.
                    210: Typical names include:
                    211: \begin{quote}\small\begin{verbatim}
                    212: rose, psi
                    213: kille, cs, ucl, gb
                    214: L. Eagle, "Sue, Grabbit and Runn", GB
                    215: \end{verbatim}\end{quote}
                    216: Note that you don't have to know all the components,
                    217: just list what you know, left-to-right,
                    218: starting with the person's name.
                    219: The user-friendly searching algorithm will usually figure out what you mean.
                    220: 
                    221: This is the preferred syntax as it is the most intuitive.
                    222: So,
                    223: you simply issue the \verb"whois" command followed by a name
                    224: and \pgm{fred} will do the rest,
                    225: e.g.,
                    226: \begin{quote}\small\begin{verbatim}
                    227: fred> whois schoffstall, psi
                    228: \end{verbatim}\end{quote}
                    229: In fact,
                    230: if you are only a casual user,
                    231: this is all you need to know.
                    232: You can stop reading now!
                    233: 
                    234: Otherwise,
                    235: there is an older searching procedure,
                    236: that is rather mechanical.
                    237: Let's begin with some simple examples and introduce the other commands along
                    238: the way.
                    239: If you already know the handle of the person you're interested in finding out
                    240: about,
                    241: just give the handle:
                    242: \begin{quote}\smaller\begin{verbatim}
                    243: fred> whois @c=US@cn=Manager
                    244: Manager (1)
                    245: 
                    246: Name:          Manager, US
                    247: \end{verbatim}\end{quote}
                    248: 
                    249: \subsection    {The Alias Command}
                    250: Since handles are long strings,
                    251: \pgm{fred} will automatically maintain a list of aliases of the entries you
                    252: have seen in the current session.
                    253: The alias is always a number.
                    254: When an entry is displayed,
                    255: it appears on the first line in parenthesis after the name of the object.
                    256: In the example above,
                    257: the alias is \verb"1".
                    258: 
                    259: To find out what aliases are currently defined,
                    260: use the \verb"alias" command:
                    261: \begin{quote}\smaller\begin{verbatim}
                    262: fred> alias
                    263: 1    @c=US@cn=Manager
                    264: \end{verbatim}\end{quote}
                    265: Thus,
                    266: the previous \verb"whois" command could have been shortened to simply:
                    267: \begin{quote}\small\begin{verbatim}
                    268: fred> whois !1
                    269:     ...
                    270: \end{verbatim}\end{quote}
                    271: Each time you invoke \pgm{fred},
                    272: its list of aliases is empty.
                    273: If there are few handles which you use often,
                    274: you might wish to define them in your \file{.fredrc} file,
                    275: e.g.,
                    276: \begin{quote}\small\begin{verbatim}
                    277: alias "@c=US@o=NYSERNet Inc.@cn=Manager"
                    278: \end{verbatim}\end{quote}
                    279: Of course,
                    280: the ordering of aliases is important.
                    281: \pgm{fred} will start numbering from~1 starting with the first \verb"alias"
                    282: command.
                    283: 
                    284: \subsection    {Back to Searching}
                    285: Suppose however,
                    286: that you don't know the handle for the person.
                    287: In this case,
                    288: you need to specify some search parameters.
                    289: Logically,
                    290: the first step is to ascertain the organization which the person is likely to
                    291: be associated with, e.g.,
                    292: ``NYSERNet, Inc.''.
                    293: This is done as:
                    294: \begin{quote}\small\begin{verbatim}
                    295: fred> whois organization nyser
                    296: NYSERNet Inc. (2)               +1 315-443-4120
                    297:   111 College Place
                    298:   Syracuse, NY 13244--1260
                    299:   US
                    300: 
                    301: FAX:       +1 315-443-1973
                    302: 
                    303: Not-for-profit organization providing network services and software
                    304: 
                    305: Locality:      Syracuse, New York
                    306: 
                    307: Name:          NYSERNet Inc., US (2)
                    308: \end{verbatim}\end{quote}
                    309: Second,
                    310: to search for a particular person,
                    311: you might use:
                    312: \begin{quote}\small\begin{verbatim}
                    313: fred> whois rose -area 2
                    314: Marshall Rose (3)            [email protected]
                    315:     aka: Marshall T. Rose
                    316:     aka: mtr
                    317: 
                    318: Principal Scientist
                    319: PSI, Inc.
                    320:     PSI California Office
                    321:     POB 391776
                    322:     Mountain View, CA  94039
                    323: 
                    324: Telephone:    +1 415-961-3380
                    325: FAX:          +1 415-961-3282
                    326: 
                    327: Mailbox information:
                    328:     Internet: [email protected]
                    329:     UUCP:     uupsi!mrose
                    330: 
                    331: Principal Implementor of the ISO Development Environment
                    332: 
                    333: Name:          Marshall Rose, NYSERNet Inc., US
                    334: \end{verbatim}\end{quote}
                    335: Note the use of the alias \verb"2".
                    336: The command could also have been:
                    337: \begin{quote}\small\begin{verbatim}
                    338: fred> whois rose -area "@c=US@o=NYSERNet Inc."
                    339:     ...
                    340: \end{verbatim}\end{quote}
                    341: Double-quotes are used so that the DN appears as a single token to \pgm{fred}.
                    342: 
                    343: Of course,
                    344: this two-step process,
                    345: whilst logical, is tedious.
                    346: Thus, you can combine them like this:
                    347: \begin{quote}\small\begin{verbatim}
                    348: fred> whois rose -org nyser
                    349:     ...
                    350: \end{verbatim}\end{quote}
                    351: which says to look for any organizations with ``nyser'' in its name.
                    352: Then, for each of these,
                    353: look for something called ``rose''.
                    354: 
                    355: \subsection    {The Area Command}
                    356: Suppose
                    357: you want information on several persons belonging to an organization.
                    358: You can use the \verb"area" command,
                    359: by itself,
                    360: to tell \pgm{fred} where to search for subsequent commands.
                    361: For example,
                    362: \begin{quote}\small\begin{verbatim}
                    363: fred> area "@c=US@o=NYSERNet Inc."
                    364: \end{verbatim}\end{quote}
                    365: or simply
                    366: \begin{quote}\small\begin{verbatim}
                    367: fred> area 2
                    368: \end{verbatim}\end{quote}
                    369: both tell \pgm{fred} the default area used by the \verb"whois" command.
                    370: Of course,
                    371: you can still use the \switch"area" area with the \verb"whois" command to
                    372: override the default area.
                    373: Thus,
                    374: \begin{quote}\small\begin{verbatim}
                    375: fred> whois alan -area "@c=US@o=Columbia University"
                    376: \end{verbatim}\end{quote}
                    377: will do what you expect.
                    378: 
                    379: If you use the \verb"area" command without any arguments,
                    380: \pgm{fred} will tell you what its default area is:
                    381: \begin{quote}\small\begin{verbatim}
                    382: fred> area
                    383: @c=US@o=Yoyodyne
                    384: \end{verbatim}\end{quote}
                    385: This indicates the default area for all commands,
                    386: {\em including\/} any subsequent \verb"area" commands.
                    387: Thus,
                    388: issuing:
                    389: \begin{quote}\small\begin{verbatim}
                    390: fred> area @c=US@o=Yoyodyne
                    391: @c=US@o=Yoyodyne
                    392: 
                    393: fred> area ou=Research
                    394: @c=US@o=Yoyodyne@ou=Research
                    395: \end{verbatim}\end{quote}
                    396: is equivalent to
                    397: \begin{quote}\small\begin{verbatim}
                    398: fred> area @c=US@o=Yoyodyne@ou=Research
                    399: @c=US@o=Yoyodyne@ou=Research
                    400: \end{verbatim}\end{quote}
                    401: because a leading \verb"`@'"-sign was not used before \verb"ou=Research".
                    402: 
                    403: As you might expect,
                    404: there is a special string ``\verb".."'' which may be used to move up one level:
                    405: \begin{quote}\small\begin{verbatim}
                    406: fred> area ..
                    407: @c=US@o=Yoyodyne
                    408: \end{verbatim}\end{quote}
                    409: Combinations are possible as well,
                    410: such as:
                    411: \begin{quote}\small\begin{verbatim}
                    412: fred> area ..@"NYSERNet Inc."
                    413: @c=US@o=NYSERNet Inc.
                    414: \end{verbatim}\end{quote}
                    415: which moves up a level and then down to \verb"o=NYSERNet Inc."
                    416: 
                    417: \subsection    {Getting Help}
                    418: For a brief summary of \pgm{fred} commands,
                    419: type:
                    420: \begin{quote}\small\begin{verbatim}
                    421: fred> help ?
                    422: \end{verbatim}\end{quote}
                    423: This will list the commands that \pgm{fred} knows about
                    424: along with a one-line summary of their function.
                    425: 
                    426: For help on a particular command,
                    427: type the name of the command followed by \switch"help",
                    428: e.g.,
                    429: \begin{quote}\small\begin{verbatim}
                    430: fred> alias -help
                    431: \end{verbatim}\end{quote}
                    432: 
                    433: If you need more help,
                    434: try
                    435: \begin{quote}\small\begin{verbatim}
                    436: fred> manual
                    437: \end{verbatim}\end{quote}
                    438: which is the same as
                    439: \begin{quote}\small\begin{verbatim}
                    440: % man fred
                    441: \end{verbatim}\end{quote}
                    442: from the shell.
                    443: If that's not enough,
                    444: contact your local \camayoc/.
                    445: 
                    446: \subsection    {Reporting problems}
                    447: To report something to your local white pages manager,
                    448: simply use the \verb"report" command.
                    449: You will be prompted for some text,
                    450: which \pgm{fred} will send to the appropriate mailbox.
                    451: 
                    452: \subsection    {Quitting}
                    453: To terminate \pgm{fred},
                    454: simply use:
                    455: \begin{quote}\small\begin{verbatim}
                    456: fred> quit
                    457: \end{verbatim}\end{quote}
                    458: 
                    459: \subsection    {Setting Variables}\label{setting:variables}
                    460: \pgm{fred} contains a few variables that may be manipulated to modify its
                    461: behavior: 
                    462: \begin{describe}
                    463: \item[debug:]  debug \pgm{fred}
                    464: 
                    465: \item[manager:]        mail address of local white pages manager
                    466: 
                    467: \item[namesearch:] type of named use for matching,
                    468:                either \verb"fullname", \verb"surname", or \verb"friendly"
                    469: 
                    470: \item[pager:]  program to use for terminal pagination
                    471: 
                    472: \item[phone:]  display phone numbers in one-liner
                    473: 
                    474: \item[query:]  confirm two-step operations
                    475: 
                    476: \item[soundex:]        use soundex for matching when no wildcards are present
                    477: 
                    478: \item[timelimit:]      maximum number of seconds to spend searching
                    479: 
                    480: \item[verbose:]        verbose interaction
                    481: 
                    482: \item[watch:]  watch dialogue with \pgm{dish}
                    483: \end{describe}
                    484: To view or change settings, use the \verb"set" command:
                    485: \begin{quote}\small\begin{verbatim}
                    486: fred> set query
                    487: \end{verbatim}\end{quote}
                    488: will display the current value of the \verb"query" variable,
                    489: whilst
                    490: \begin{quote}\small\begin{verbatim}
                    491: fred> set query on
                    492: \end{verbatim}\end{quote}
                    493: will change the variable accordingly.
                    494: 
                    495: \subsection    {via WHOIS or mail}
                    496: If you are accessing the white pages via WHOIS or mail,
                    497: then only the \verb"whois", \verb"area", \verb"help", and \verb"manual"
                    498: commands are available.
                    499: If your command to \pgm{fred} does not start with one of these keywords,
                    500: then it is assumed that your input is a list of arguments to the
                    501: \verb"whois" command.
                    502: 
                    503: Note that it is not possible to use aliases with the \verb"whois" command
                    504: since your \pgm{fred} session is not interactive.
                    505: 
                    506: \section      {More on Searching}
                    507: The full syntax to the \verb"whois" command is:
                    508: \begin{quote}\small\begin{verbatim}
                    509: whois input-field [record-type] [area-designator] [output-control]
                    510: \end{verbatim}\end{quote}
                    511: Only the {\em input-field\/} component need be present.
                    512: The components may appear in any order.
                    513: 
                    514: \subsection    {Input Field}
                    515: This component tells the white pages who or what to look for.
                    516: \begin{describe}
                    517: \item[name NAME {\rm or} .NAME]
                    518: \item[surname NAME]
                    519: \item[fullname NAME]
                    520: gives the name of the target.
                    521: 
                    522: Searching for names follows these rules:
                    523: \begin{enumerate}
                    524: \item  If the ``\verb"*"''-sign appears at the beginning and/or end of the
                    525: name, 
                    526: then wildcard-style matching is used:
                    527: the ``\verb"*"''-sign matches zero or more characters at the beginning
                    528: or end of a name.
                    529: 
                    530: \item  Otherwise,
                    531: if soundex has been enabled (set the variable \verb"soundex" to \verb"on"),
                    532: then imprecise matching occurs according to a Soundex algorithm.
                    533: 
                    534: \item  Otherwise,
                    535: if searching is to occur for a person's surname
                    536: (either the keyword \verb"surname" is used
                    537: or the value of the variable \verb"namesearch" is \verb"surname"),
                    538: then a case-insensitive match is used.%
                    539: \footnote{For compatibility with the older WHOIS service,
                    540: if \verb"surname" searching is used,
                    541: then a case-insensitive match is also performed on the local-part of the
                    542: entry's electronic-mail address}.
                    543: 
                    544: \item  Finally,
                    545: as a last resort,
                    546: \pgm{fred} will force a rather liberal wildcard-style match
                    547: (e.g., ``\verb"NAME"'' is treated as ``\verb"*NAME*"'').
                    548: \end{enumerate}
                    549: For compatibility with the WHOIS service,
                    550: an input field of ``\verb"NAME."'' is equivalent to ``\verb"NAME*"''
                    551: (i.e., a partial match for names having the given prefix).
                    552: Similarly,
                    553: an input field of ``\verb"*NAME"'' is equivalent to ``\verb"NAME expand"''.
                    554: Thus, to have wildcard matching at the beginning of the name,
                    555: use two ``\verb"*"''-signs,
                    556: e.g., ``\verb"**inc"'' matches names ending in ``\verb"inc"''.
                    557: (A terrible hack, but that's the price one pays to be consistent with the
                    558: WHOIS service.)
                    559: 
                    560: \item[handle HANDLE {\rm or} !HANDLE]
                    561: gives the Distinguished Name (DN) of the target.
                    562: Instead of a DN,
                    563: an alias for the DN may be used.
                    564: 
                    565: \item[mailbox STRING] gives the mailbox of the target.
                    566: (The mailbox search is more properly a Yellow Pages function.
                    567: It is included solely for the backwards compatibility with the WHOIS service.
                    568: As such,
                    569: use of mailbox matching is not recommended.)
                    570: \end{describe}
                    571: If a keyword is not given,
                    572: then \pgm{fred} attempts to intuit which kind of input field is being provided.
                    573: In most cases,
                    574: \pgm{fred} will treat the input field as a name,
                    575: unless it contains the \verb"`@'"-sign,
                    576: which makes it either a handle or a mailbox.
                    577: 
                    578: \subsection    {Record Type}
                    579: The {\em record type\/} is a single keyword,
                    580: one of:
                    581: \begin{describe}
                    582: \item[person:]         a person
                    583: 
                    584: \item[organization:]   an organization
                    585: 
                    586: \item[unit:]           a division under an organization
                    587: 
                    588: \item[role:]           a role within an organization
                    589: 
                    590: \item[locality:]       a geographic locality
                    591: 
                    592: \item[dsa:]            a white pages server
                    593: \end{describe}
                    594: If one of these keywords is not present,
                    595: then \pgm{fred} will not know what kind of entry you are looking for and
                    596: this can result in inefficient searches.
                    597: If you know what kind of entry you're looking for,
                    598: be kind and tell \pgm{fred}.
                    599: 
                    600: If you are searching for a person with a particular title,
                    601: then rather than using \verb"person",
                    602: use the \switch"title" switch.
                    603: For example,
                    604: \begin{quote}\small\begin{verbatim}
                    605: whois rose -title scientist
                    606: \end{verbatim}\end{quote}
                    607: looks for someone named \verb"rose" who is a scientist,
                    608: whilst
                    609: \begin{quote}\small\begin{verbatim}
                    610: whois -title operator
                    611: \end{verbatim}\end{quote}
                    612: looks for anyone who is an \verb"operator".
                    613: Naturally,
                    614: these searches are carried out relative to the appropriate area.
                    615: 
                    616: \subsubsection {More on the Area Command}
                    617: If the \verb"area" command is given two arguments then this defines the
                    618: default area for a particular record type.
                    619: For example,
                    620: \begin{quote}\small\begin{verbatim}
                    621: fred> area unit @c=US@o=Yoyodyne
                    622: \end{verbatim}\end{quote}
                    623: indicates that searches for organizational units should,
                    624: by default,
                    625: occur under the indicated area.
                    626: 
                    627: It is now time to confess to a little white lie told earlier.
                    628: If the \verb"area" command is invoked without arguments,
                    629: it doesn't just print one line of information,
                    630: it prints several:
                    631: \begin{quote}\small\begin{verbatim}
                    632: fred> area
                    633:                      default area @c=US@o=Yoyodyne
                    634: area for record-type organization @c=US
                    635: area for record-type         unit @c=US@o=Yoyodyne
                    636: area for record-type     locality @c=US@l=NY
                    637: area for record-type       person @c=US@o=Yoyodyne
                    638: area for record-type          dsa @c=US
                    639: area for record-type         role @c=US@o=Yoyodyne
                    640: \end{verbatim}\end{quote}
                    641: The first line tells what the default area is.
                    642: The remaining lines tell what the default area is for particular kinds of
                    643: searches.
                    644: 
                    645: These values are normally set by your local \camayoc/ in a system-wide file
                    646: read by \pgm{fred} during initialization.
                    647: The name of this file is probably \file{/usr/etc/fredrc},
                    648: check with your system administrator.
                    649: Since this file is read before your own \file{.fredrc} file,
                    650: you can automatically override these settings if you choose.
                    651: 
                    652: So,
                    653: what use does \pgm{fred} make of the record type you supply?
                    654: At the moment,
                    655: \pgm{fred} employs some rather simple heuristics.
                    656: If a default area is declared for a \verb"organization",
                    657: \verb"unit", \verb"locality", or \verb"dsa",
                    658: then searches for objects of this type will look {\em only\/} one-level deep.
                    659: This is an artifact of the rules used by the sponsors of the pilot project
                    660: when they defined the overall structure of the Directory tree.
                    661: In practical terms,
                    662: this severely limits the search to the areas where it is possible for these
                    663: objects to exist.
                    664: This means that searching is faster since parts of the tree,
                    665: believed to never contain entries of this type,
                    666: are never searched.
                    667: 
                    668: Note however that in order to take advantage of this heuristic,
                    669: not only must a default area be declared for the record type you are searching
                    670: for,
                    671: but you must also tell the \verb"whois" command what the record type is.
                    672: While this might seem obvious:
                    673: \begin{quote}\small\begin{verbatim}
                    674: fred> whois organization nysernet
                    675: \end{verbatim}\end{quote}
                    676: will,
                    677: given the default areas defined above,
                    678: invoke the search heuristic and result in a ``lightning fast'' search.
                    679: However,
                    680: \begin{quote}\small\begin{verbatim}
                    681: fred> whois nysernet
                    682: \end{verbatim}\end{quote}
                    683: will result in a slow search since \pgm{fred} has no way of knowing that
                    684: \verb"nysernet" isn't someone's name unless {\em you\/} tell it.
                    685: 
                    686: \subsection    {Area Designator}
                    687: The {\em area designator\/} takes one of two forms.
                    688: The most common form is one of the switches:
                    689: \begin{quote}\begin{tabular}{l}
                    690: \switch"org" (short for \switch"organization"),\\
                    691: \switch"unit", or,\\
                    692: \switch"locality"
                    693: \end{tabular}\end{quote}
                    694: followed by a name.
                    695: For example,
                    696: \begin{quote}\small\begin{verbatim}
                    697: fred> whois rose -org nyser
                    698: \end{verbatim}\end{quote}
                    699: which was introduced earlier,
                    700: says to look for any organization with ``nyser'' in its name.
                    701: Then, for each of these,
                    702: look for something called ``rose''.
                    703: 
                    704: In the second form,
                    705: the area designator consists of the switch \switch"area" followed by a location
                    706: in the white pages,
                    707: either a Distinguished Name or an alias for a DN.
                    708: If an area designator is not given,
                    709: then the area for the search is chosen as follows:
                    710: \begin{enumerate}
                    711: \item  If a {\em record type\/} was given for the search
                    712:        (always a good idea),
                    713:        and if a default area was declared for that record type,
                    714:        then the appropriate area is used.
                    715: 
                    716:        This also allows \pgm{fred} to use the special searching
                    717:        heuristic based on the way the Directory tree is structured
                    718:        under the pilot project.
                    719: 
                    720: \item  Otherwise,
                    721:        the default area is used.
                    722: \end{enumerate}
                    723: 
                    724: \subsection    {Output Control}
                    725: Any combination of the following keywords may appear in the
                    726: {\em output control\/} component:
                    727: \begin{describe}
                    728: \item[expand:]         give a detailed listing and show children of matched
                    729:                        entries.
                    730: 
                    731: \item[full:]           give a detailed listing, even on ambiguous matches
                    732:                        (the default is to give a detailed listing only
                    733:                        if a single match is found.)
                    734: 
                    735: \item[summary:]                give a one-line listing, even on unique matches
                    736:                        (the default is to give a one-line listing only
                    737:                        if a multiple matches are found.)
                    738: 
                    739: \item[subdisplay:]     give a one-line listing and show children of matched
                    740:                        entries (the default is to not show any children.)
                    741: \end{describe}
                    742: 
                    743: \section      {Editing your Entry}
                    744: Finally,
                    745: you should keep your own entry as accurate and current as possible.
                    746: This is your responsibility in order to add value to the white pages service.
                    747:        
                    748: The \verb"edit" command is used to examine and modify your entry in the white
                    749: pages.
                    750: 
                    751: \subsection    {Who are You?}
                    752: Of course,
                    753: the first step is to tell \pgm{fred} who you are so that it can find your
                    754: entry.
                    755: Recall that your local \camayoc/ indicated your handle and password earlier.
                    756: You use the \verb"thisis" command to tell the whitepages who you are,
                    757: e.g.,
                    758: \begin{quote}\small\begin{verbatim}
                    759: fred> thisis "@c=US@o=NYSERNet Inc.@cn=Manager"
                    760: Enter password for "@c=US@o=NYSERNet Inc.@cn=Manager": secret
                    761: \end{verbatim}\end{quote}
                    762: You can place this command in your \file{.fredrc} file to automatically tell
                    763: \pgm{fred} about your entry in the white pages.
                    764: Note however that if you do so,
                    765: then \pgm{fred} will also prompt you for a password whenever it starts.
                    766: To get around this you might choose to place the password in your
                    767: \file{.fredrc} file.
                    768: e.g.,
                    769: \begin{quote}\small\begin{verbatim}
                    770: thisis "@c=US@o=NYSERNet Inc.@cn=Manager" secret
                    771: \end{verbatim}\end{quote}
                    772: However,
                    773: you must now protect your \file{.fredrc} accordingly.
                    774: Entering:
                    775: \begin{quote}\small\begin{verbatim}
                    776: % chmod 0600 $HOME/.fredrc
                    777: \end{verbatim}\end{quote}
                    778: will do the trick.
                    779: 
                    780: \subsection    {Editing the Entry}
                    781: Once the \pgm{fred} knows about your entry in the white pages,
                    782: to edit your entry, use the \verb"edit" command:
                    783: \begin{quote}\small\begin{verbatim}
                    784: fred> edit
                    785: \end{verbatim}\end{quote}
                    786: This will invoke the editor defined by your \verb"$EDITOR" shell variable on a
                    787: template file.
                    788: (If you do not have the shell variable \verb"$EDITOR" set,
                    789: then you will be prompted for the name of an editor to use.)
                    790: Edit the template file accordingly and then exit the editor.
                    791: You will be asked if you want to update your entry with the new template.
                    792: If so,
                    793: the white pages will be informed of the changes.
                    794: 
                    795: It is a good idea to take a look at your entry after editing it.
                    796: To simplify type-in,
                    797: there is a special option to the \verb"whois" command which directs it to
                    798: display the entry for you:
                    799: \begin{quote}\small\begin{verbatim}
                    800: fred> whois !me
                    801: \end{verbatim}
                    802: \end{quote}
                    803: which isn't great grammar, but gets the job done.
                    804: 
                    805: Appendix~\ref{person:attributes} on page~\pageref{person:attributes} lists the
                    806: syntax and semantics of the attributes that you may have in your entry.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.