                    RWhois Server Operations Guide
                            Release 1.0B9
                                By
                           Mark Kosters
						   David Blacka
						   C. Ming Lu

Table of Contents

1. Introduction

2. General Overview of the Setup
   2.1 General Configuration Files
   2.2 Attribute Configuration Files
   2.3 Output Format Files

3. Configuration Files Explained
   3.1 Main Configuration File (rwhois.conf)
   3.2 Object Definition File (rwhois.objects)
   3.2.1 Individual Object Attribute Definition Files 
   3.2.2 Individual Display Definition Files
   3.3 Display Definition File (rwhois.display)
   3.4 Extended Directive File (rwhois.directive)
   3.5 Definition File (rwhois.define)
   3.6 Directive Security File (rwhois.allow/whois.deny)
   3.7 RWhois Parent File (rwhois.root)

4. RWhois Data Files Explained
   4.1 RWhois Objects
   4.1.1 The OBJECT Object
   4.1.2 The SOA Object
   4.1.3 The Referral Object
   4.2 RWhois Attributes
   4.2.1 The TEXT Attribute
   4.2.2 The SEE-ALSO Attribute
   4.2.3 The REFERRAL Attribute
   4.2.4 The FILE Attribute
   4.2.5 The MIME Attribute

5. RWhois Operations
   5.1. Filling Data Within Templates
   5.2. Running the Indexer

6. Common Questions Answered
   6.1 How Do I Create A New Object?
   6.2 How Do I Create a New Display Mode or Change the Default Modes?
   6.3 How Do I Add an Extended Directive?
   6.4 How Do I Register My Server into the Tree?

7. Related Documentation



1. Introduction

   Early in ARPANET development, the SRI-NIC established a centralized
   whois database that provided host and network information about the
   systems connected to the network and the E-mail addresses of the
   users on those systems.  The ARPANET experiment has evolved into a
   global network with countless people and hundreds of thousands of
   end systems.  Given the sheer size and effort needed to maintain a
   centralized database, an alternate, decentralized approach to store
   and display this information is desired.

   The Internet portions of the DDN NIC have been transitioned to what
   is now known as InterNIC Registration Services (RS).  The charter
   for InterNIC RS has been reduced to maintain information only for
   IP networks, top-level domains, Autonomous System Numbers, and the
   points of contact for each of these particular entities.  In
   addition, the InterNIC, in its role as an Internet Registry (IR),
   has delegated IP block assignment authority to Regional Registries
   such as the RIPE NCC for Europe and the APNIC for the Asian Pacific
   region, while retaining authority for North America and all
   non-delegated regions.  This has led to a fragmentation of whois
   service to the Internet user.

   Several different solutions have been proposed and developed by the
   various regional IR's.  Two solutions have been worked on
   extensively: the Shared Whois Project (SWIP) and X.500.

   The SWIP project has a common exchange format that can be parsed by
   the various IR's for input and output.  Thus, one can synchronize
   their databases with information obtained from the other IR's.
   This project is showing promise and is now operational.  However,
   this approach still requires a centralized database for store and
   display.

   The InterNIC has also been involved in the use of X.500 for display
   of registration information.  Among other things, this included
   defining schemas and Directory information tree structures for the
   purpose of distributing information amongst the various IR X.500
   Directory Service Agents (DSA).  Unfortunately, X.500's complexity,
   resource utilization, and lack of Internet support has made a
   search for an alternative solution necessary.

   The information that the various IR's maintain is inherently
   hierarchical in nature.  (Examples: hammer.nic.ddn.mil is under the
   nic.ddn.mil domain which is under the ddn.mil domain which is under
   the .mil domain. 198.41.0.21 is part of network 198.41.0.0/24 which
   is part of the block 198.41.0.0/16 which is part of the block
   198.0.0.0/8) The InterNIC may not have the information, but will at
   least be able to reduce the query and point or refer the users
   closer to their goal.  This has led to the development of a
   referral whois, and the corresponding RWhois protocol.

   The underlying premise for this project has been to retain the
   basic functionality of the whois server and client, making all of
   the extensions optional.  The server must respond to the original
   whois client, currently included with many operating systems.  The
   RWhois client must also interact with RFC954 [RFC-954] whois
   servers.

   RWhois has been designed as an extensible protocol to ensure that
   many uses can be accommodated.  Public extensions to the protocol
   should be documented as RFCs.  Private extensions can be used with
   agreement left up to the client and server.

2. General Overview of the RWhois Server Setup

   The RWhois server has been designed in such a way that objects and
   the way they are displayed may be defined without changing the
   underlying code.  This is accomplished by various configuration
   files that are read by the server at startup and will be discussed
   below.

2.1. General Configuration Files

   The RWhois server is invoked by using the -c option (i.e.  rwhoisd
   -c /home/new.location/rwhois.config). This configuration file sets
   the default directory location for the rwhois files, the object
   definition file, the display mode definition file, the extended
   directive file, the maximum hits default and allowed, the log files
   of the register and notify directives, and the directive security
   files.

2.2. Attribute Configuration Files

   Within each object definition, there is a file that describes the
   various attributes for that particular object. Attributes within an
   object are identified by their attribute names, their attribute
   aliases, their types, their formats, delineation of being a primary
   key, how they should be indexed, and if the attributes are required
   for this object.

   The default configuration has the attribute definitions stored
   under a subdirectory called "attribute_defs" of the main
   configuration directory as to not clutter the main directory with
   extra files.

2.3. Output Format Files

   Within each object definition, there is one or more files that
   describe the various formats that this object can be displayed
   in. Within each output display file is the field data placement
   interspersed with static text. It also displays delimiters for
   multi-value answers, and sub-format items.

   The default configuration has the output definitions stored under a
   subdirectory called "output_templates" of the main configuration
   directory as to not clutter the main directory with extra files.

3. Detailed Examination of the Configuration Files

   Each of the configuration files are now going to be examined in
   detail to show their options.

3.1. The Main Configuration File (rwhois.conf)

    The main configuration file is a "tag: value" delimited file with
    the following tags:

      root-dir: Specifies the directory in which the rwhois
        server is to run, allowing the other filenames to use relative
        pathnames.  The 'default-dir' parameter is an alias for this
        option.

      schema-file: the file that defines the schema of this server.
        This file contains an entry for each class (object type),
        describing class level parameters (e.g., location of the data
        files, display types, restrictor keywords, english description
        of the class).  The attributes of each class are described in
        the referenced file.  The 'object-file' parameter is an alias
        for this option.

      display-file: the file that defines the output formats of this
        server.  This file, like the schema-file, describes top-level
        information, delagating the actual description of the template
        on a class-by-class basis from the schema-file.

      directive-file: the file that defines the extended directives of
        this server.

      define-file: the file that defines the output macros (called "defines")
        for format specification.

      max-hits-default: the default ceiling for number of hits on a
        query.

      max-hits-ceiling: the maximum value to which a server can set
		the hit ceiling.

      notify-log: a file that contains notifications of bad referrals,
        recursive referrals, etc.

      register-log: a file that contains all the registration
        requests.

      register-spool: a directory that contains all files of all pending
        registration requests.

      local-host: the fully-qualified name of the host that this server
        resides on.

      local-port: the port number that this server is listening on.

      deadman-time: the number of seconds that a server will wait for
         a response before disconnecting

      security-allow: the file that contains allowable hosts/networks
        see hosts_access(5) for details.

      security-deny: the file that disallows hosts/networks. See
        hosts_access(5) for details.

      server-type: switch between running rwhoisd as a daemon or as
        a single session process under inetd. 

      userid: if the server is run as root, it will setuid and setgid
        to the values indicated by this user.

      bin-path: the directory where the parser and indexer are stored within
        rwhois.  'bin-loc' is an alias to this option.

	  update-prog: the program to dynamically update the database (at
	    this point, rwhoisparse).

	  index-prog: the program to dynamically re-index the database (at
	    this point, rmkdbindex).

	  chrooted: whether or not the server should try to chroot.

      verbosity: the level of screen logging.  0 is no screen logging,
        1 is normal screen logging, numbers greater than 1 are for debugging.

   Example:

      root-dir: /home/databases/rwhois
      schema-file: rwhois.objects
      display-file: rwhois.display
      directive-file: rwhois.directive
      define-file: rwhois.define
      max-hits-default: 20
      max-hits-ceiling: 2000
      notify-log: notify.log
      register-log: register.log
      register-spool: register_spool
      updates-dir: data/updates
      local-host: rs.internic.net
      local-port: 4321 
      security-allow: rwhois.allow
      security-deny: rwhois.deny
      deadman-time: 200
      server-type: daemon
      userid: guest
      bin-path: bin
      update-prog: rwhoisparse
      index-prog: rmkdbindex
	  chrooted: YES
      verbosity: 2

3.2. The Object Definition File (rwhois.objects)

  The main object definition file is a "tag: value" delimited
  file with the following tags:

      type: type of object which takes one of these values
        OBJECT - a new object
        REFERRAL - an object that contains referrals
        SOA - an object that describes the server of authorities
      name: the name of the particular object
      command: the command that restricts the server to look at this 
        particular object. If the command has a ":<number>", the command can 
        be shortened to that particular sequence
      attributedef: the file that describes the attributes of the object
      localdb: the name of the local database
      cachedb: the name of the cached database
      display: a colon delimited entry with the format
        display_command:filename_of_output_file. The Display command
        must be defined in the output definition file.
      description: gives a brief description of the object
      ---: record separator

  Examples:
      type:OBJECT
      name:user
      command:person:3
      command:user
      attributedef:attribute_defs/user.tmpl
      localdb:data/user/local
      cachedb:data/user/cache
      display:full:output_templates/user.full.output
      display:summary:output_templates/user.sum.output
      description:User object
      ---
      type:OBJECT
      name:domain 
      command:domain:3
        attributedef:attribute_defs/domain.tmpl  
      localdb:data/domain/local
      cachedb:data/domain/cache
      display:full:output_templates/domain.full.output
      display:summary:output_templates/domain.sum.output
      description:Domain object

3.2.1. Individual Object Attribute Definition Files

   The attribute definition file is a "tag: value" delimited
   file with the following tags:

     attribute: the name of the data element.
     attribute-alias: another, usually shorter, name for the attribute.
     type:  determines the type of attribute and default indexing method
       TEXT - a text string (can be indexed)
       SEE-ALSO - this is a see-also record (cannot be indexed)
       MIME - a mime file (cannot be indexed)
       FILE - a regular file (cannot be indexed)
     description: a textual description of the attribute.
     def_object: attribute that names the object type.
	 is-primary-key: attribute is a primary key (and all primary keys
	   put together should form a unique identifier).
     index: determines the indexing method
       ALL - can restrict (via attribute name) to any word of that record
       FIRST - can restrict only on the first word of that record
       NONE - do not index this attribute
       ---: record separator

   Examples:
     attribute: Handle
     abbrev-attribute: H
     type: TEXT
     description: Locally Unique Identification
     index: ALL
     ---
     attribute: Object-Type
     abbrev-attribute: TT
     type: TEXT
     description: Name of the object
     def_object: TRUE
     index: NONE

3.2.2. Individual Object Output Format Files

   The output format file is a "tag: value" delimited
   file with the following tags:

     type: type of element that this record describes
       TEXT - this is a block of static text.
       FIELD - if the attribute named in field has a value, this record
         is involked
     field: the name of the particular attribute for a FIELD type record
       text for a TEXT type record
     multi-delim: If the particular attribute has multiple values, this  
       set of characters is placed between them
     title: A static section of text for a FIELD type record.
     data: The placement of the data of the attribute found for the
       FIELD type record.
     sub-format: If the attribute is defined as a see-also, the sub-format
       describes the display mode for the see-also.

   Examples:
     type: FIELD
     field: Domain-Name
     title: "   Domain Name: "
     data: TRUE
     title: \n
     ---
     type: TEXT
     field: \n
     ---
     type: FIELD
     field: Admin-Contact
     sub-format: contact
     multi-delim: "\n      "
     title: "   Administrative Contact:\n     "
     data: TRUE
     title: \n

3.3. Display Definition File (rwhois.display)

   The output definition file is a "tag: value" delimited
   file with the following tags:

     type: gives the type of display object
       COMMAND - rest defines the display command
       DEFAULTS - sets the defaults to the particular command
     command: name of the command
     command-len: minimum length that will activate the command
     magic: a special character that will activate the command
     description: gives a short description of the command
     default-multi: default multiple occurrence display format (for DEFAULTS
       only)
     default-single: default single occurrence display format (for DEFAULTS
       only)
     ---: record separator

   Examples:
     type: COMMAND
     command: summary
     command-len: 3
     magic: $
     description: Gives a one to two line summary for each record
     ---
     type: COMMAND
     command: full
     command-len: 4
     magic: =
     description: Gives the full output for each record
     ---
     type: DEFAULTS
     default-multi: summary
     default-single: full

3.4. Extended Directive File (rwhois.directive)

    The extended directive file is a "tag: value" delimited
    file with the following tags:

     command: name of the command
     command-len: minimum length that will activate the command
     program: binary/script that will be executed
     ---: record separator

  Examples
     command: date
     command-len: 4
     program: /usr/bin/date

3.5. Definition File (rwhois.define)

  The define file is a "tag: value" delimited file with the following 
  tags:

      type: gives the type of define
        MACRO - defines a formatting macro record
      name: name of the element
      value: value of the element
      ---: record separator

    Examples:

      type: MACRO
      name: test1
      value: %s
      ---
      type: MACRO
      name: test2
      value: %s%s

3.6. Directive Security Files (rwhois.allow/rwhois.deny)

  The define file is a "tag: value" delimited file with the following 
  tags:
  
    <directive>: <security_pattern>

  Examples (rwhois.allow):
    xfer: 198.41.0.
    x-date: ALL

  Examples (rwhois.deny):
    xfer: ALL
     

  Hosts described in hosts.allow are given access to those directives.
  Hosts not described in hosts.allow but described in rwhois.deny are
  denied access to those directives. To read more on the security
  pattern, please look at hosts_access.5. If the directive is not
  described in rwhois.allow/rwhois.deny - then it defaults to world
  access.

3.7. Parent RWhois Server (rwhois.root)

    This is a special referral-type record that gives referral information
    to a higher point in the tree for records not found locally.

    Example:
		referral:Referral: rwhois.internic.net:4321:rwhois

4. RWhois Data by Example

  As part of the rwhois source distribution, we have furnished some
  scripts as well as sample data to help you in setting up your
  server.  The pertinent information is stored under the sample.data
  subdirectory.  Within that subdirectory (sample.data), you will find
  example rwhois configuration files, example attribute definition
  files (sample.data/attribute_defs), example output definition files
  (sample.data/output_formats), the data itself (sample.data/data),
  and example scripts to index the data (sample.data/index_scripts).

4.1 Types of RWhois Server Objects

   Within the RWhois data structure, there are three distinct types of 
   objects (defined in the rwhois object definition file by the tag type):
     OBJECT - Files that contain records of the objects that have 
       been defined. They can be a part of the authoritative area as
       defined by the tag localdb (in the sample.data set, they
       all are postfixed with .txt), or defined as cached where
       the answer is not authoritative but held on the server (in the
       sample.data set, they are postfixed with .ca).
     SOA - Files that contain server of authority records for a particular
       authority area. There should be an SOA record for each authority
       area that your server will maintain.
     REFERRAL - Files that contain delegations of your rwhois information.
       They contain the authority areas that have been sub-delegated
       from your site (such as a sub-domain or a subnetted net).
     
4.1.1  OBJECT Objects

   A sample data set is provided as a part of the rwhois distribution to
   show one way how one can organize their whois tree. It is setup as
   follows:

   sample.data/data/<your_object_name>/*

   Under each <your_object_name>, you then can either load your
   records under one big file, multiple files, or a combo of both.
   Each record in the data file(s) consists of lines of the form
   <object>:<tag>: <value>.  The records are separated by "---"

   Here is an example of a domain record 
   (sample.data/data/domain/shoe-me.com.txt):

    domain:Handle: SHOE-ME-DOM
    domain:Domain-Name: SHOE-ME.COM
    domain:Organization-Name: Cobbler Shoppe
    domain:Organization-Postal: Main Street
    domain:Organization-Postal: Britt, IA 50423
    domain:Servers: saddam.internic.net:4321:rwhois host NS.SHOE-ME.COM
    domain:Servers: saddam.internic.net:4321:rwhois host RS.INTERNIC.NET
    domain:Admin-Contact: saddam.internic.net:4321:rwhois user BillE@SHOE-ME.COM
    domain:Tech-Contact: saddam.internic.net:4321:rwhois user Eckels, Bill
    domain:SOA: rwhois.foobar.edu:4343
    domain:Source: SHOE-ME
    domain:Maintainer: SHOE-ME
    domain:Updated: 940721
    domain:updated-by: BillE@SHOE-ME.COM

   Notice that they are tag-delimited records with the text to the
   left of the first colon being the attribute name, and to the right
   of the colon being the data that this attribute describes.  You may
   have noticed the strange format of the Servers, Admin-Contact, and
   Tech-Contact records - they are see-also typed records. It will be
   explained in more detail later.

   Here is an example of multiple records within a file
   (sample.data/data/user/shoe-me.multiple.txt):

   user:First-Name:	Forrest
   user:Last-Name:	Eckels
   user:Name: Forrest Eckels
   user:Organization-Name: Cobbler Shoppe
   user:Organization-Postal: Main Street
   user:Organization-Postal: Britt, IA 50423
   user:Organization-Phone:	(515) 843-3512
   user:Organization-Fax:	(515) 843-3512
   user:Email:	ForrestE@shoe-me.com
   user:Handle: FE
   user:Updated: 23-Apr-93
   --------------------
   user:First-Name: Bernice
   user:Last-Name:  Eckels
   user:Name: Bernice Eckels
   user:Organization-Name: Cobbler Shoppe
   user:Organization-Postal: Main Street
   user:Organization-Postal: Britt, IA 50423
   user:Organization-Phone: (515) 843-3512
   user:Organization-Fax:   (515) 843-3512
   user:Email:  BerniceE@shoe-me.com
   user:Handle: BE
   user:Updated: 23-Apr-93

   Within the sample.data/data tree there are also examples of network
   records, Autonomous System records, and host records.

4.1.2. The SOA Object

  The SOA type of object is a special record that describes the authority
  area for non-cached data stored on this rwhois server. There should be
  one record for each authority area that is described in the server. This
  record describes the various contacts (technical, administrative, and 
  hostmaster) as well as information that is pertinent to the secondary
  RWhois server for this particular authority area. Here is an example of 
  the authority area for shoe-me.com (sample.data/data/soa/shoe-me.txt):

  soa:Authority-area: shoe-me.com
  soa:TTL: 7500
  soa:Serial: 940301
  soa:Refresh: 60
  soa:Increment: 30
  soa:Retry: 4
  soa:Tech-Contact: BillE@SHOE-ME.COM
  soa:Admin-Contact: BillE@SHOE-ME.COM
  soa:Hostmaster: hostmaster@SHOE-ME.COM

4.1.3 The REFERRAL Object

  The REFERRAL type of object describes the sub-delegations that this 
  server has contained in it. It describes the authority area of the
  subdelegation and the server/port/type of service triplet that the
  rwhois client then can next contact. Below is an delegation of
  a subdomain (more.shoe-me.com) and a subnet of 192.168.0.0/24
  (sample.data/data/referral/shoe-me-more.txt):

  referral:Provider: SHOE-ME
  referral:Referral: rwhois.more.shoe-me.com:4321:rwhois
  referral:Domain-Name: more.shoe-me.com
  referral:IP-Network: 172.16.0.0/16

4.2 RWhois Attributes

  An example RWhois attribute set for each object is included in the
  source distribution and is located in the sample.data/attribute_defs
  subdirectory. Each file within this subdirectory is dedicated to 
  define the attributes of a particular object. Most of the information
  is straight forward (is the attribute required, is the attribute
  indexible, etc), but more explanation of the particular types is
  definitely in order.

4.2.1. The TEXT Attribute

   The TEXT type is for the regular data attributes that show up
   as indexible/non-indexible information elements. 
    
4.2.2. The SEE-ALSO Attribute

   The SEE-ALSO type of attribute is for elements that are links to
   another record within the same rwhois server or at another information
   server. The SEE-ALSO type of attribute can be defined as either
   a pointer to another rwhois record or as a url to a site. The
   first example shows three SEE-ALSO type attributes - Servers,
   Tech-Contact, and Admin-Contact.  The first Server entry, for example
   will run a query for "host ns.shoe-me.com" on your.hostname.here port
   4343 which is defined as a rwhois server. Note that the server will
   detect that this see-also query is internal (same host) so it will
   run the "sub-query" transparently to the client.

   domain:Handle: SHOE-ME-DOM
   domain:Domain-Name: SHOE-ME.COM
   domain:Organization-Name: Cobbler Shoppe
   domain:Organization-Postal: Main Street
   domain:Organization-Postal: Britt, IA 50423
   domain:Servers: your.hostname.here:4343:rwhois host NS.SHOE-ME.COM
   domain:Servers: your.hostname.here:4343:rwhois host RS.INTERNIC.NET
   domain:Admin-Contact: your.hostname.here:4343:rwhois user BillE@SHOE_ME.COM
   domain:Tech-Contact: your.hostname.here:4343:rwhois user Eckels, Bill
   domain:SOA: rwhois.shoe-me.com:4343
   domain:Source: SHOE-ME
   domain:Maintainer: SHOE-ME
   domain:Updated: 940721
   domain:updated-by: BillE@SHOE-ME.COM

   The second example shows a url pointing to my http home page for
   the attribute MoreInfo.


   user:First-Name:     Mark
   user:Last-Name:     Kosters
   user:Name:     Mark Kosters
   user:Organization-Name:     Network Solutions
   user:Organization-Postal:     505 Huntmar Park Drive
   user:Organization-Postal:     Herndon, VA 22071
   user:Organization-Country-Code: US
   user:Organization-Phone:    (703) 742-4795
   user:Organization-Fax:    (703) 742-4811
   user:Email:     markk@internic.net
   user:Handle: MAK21
   user:Source: NIC
   user:Maintainer: NIC
   user:updated: 06-Apr-94
   user:updated-by: markk@internic.net
   user:MoreInfo: url:http://slam.internic.net/markk.html

4.2.3. The REFERRAL Attribute

  The REFERRAL attribute should only be defined for the referral attribute
  for the referral object :^). Its format should be 
  rwhois_hostname:rwhois_port:(whois|rwhois).

  Example (sample.data/data/referral/shoe-me-more.txt):

    referral:Provider: SHOE-ME
    referral:Referral: rwhois.more.shoe-me.com:43:rwhois
    referral:Domain-Name: more.shoe_me.com
    referral:IP-Network: 172.16.0.0/16

4.2.4. The FILE Attribute

  The FILE attribute should be defined for a non-searchable block of
  text that one would want to show the user. It's format should be the
  fully-qualified filename.

  Example:

    user:InfoFile:/home/databases/rwhois/stuff/info.guide

4.2.5. The MIME Attribute

  The MIME attribute is defined for a non-searchable MIME message. Its
  format should be the fully qualified filename.

  Example:

    user:Picture: /home/databases/rwhois/data/user/scottw.mime

5. RWhois Operations

  Once you feel comfortable with the setup, you are now ready to replace
  the sample data with your whois information.

5.1. Filling Data Within Templates

  As a start, replace the sample data with a few records of your own.
  Make sure not to mess up the attribute names and if you have
  multiple records within your file, use the record separator '---'.
  The index scripts are built to see any file ending in *.txt as your
  authoritative data and any with *.ca as cached information.

5.2. Running the Indexer

  After inserting some data within the sample.data hierarchy, go to
  the sample_data/index_scripts directory. Look at the index_all
  script and make sure that the BASE_DIR variable is set correctly. Go
  ahead and type "index_all" within this directory to operate the
  scripts and rmkdbindex will create the required search indexes.

  Right now, the rwhois indexer is based on static data. A dynamic
  database update procedure is under development and partially
  implemented in this release. So if you edit the data, make sure you
  reindex it afterwards.
  
6. Common Questions Answered

  Here are some common questions:

6.1. How do I create a new class?

  1. Create a new object within rwhois.objects. Follow the examples from
     existing objects.
  2. Create the attribute definitions file in attribute_defs.  Make sure it 
     has an element with the primary-key set.
  3. Create the output formats required for this object in output_templates.
  4. Create a index script for this object in index_scripts. 

6.2. How do I create a new display mode or change the default modes?

  1. Edit rwhois.display to include your new display mode. If you want
     to change the single answer default, change default-single to the
     desired command. Similarly with multiple answers with default-multi.
  2. Add display elements to rwhois.objects. Again follow the examples.
  3. Add the files for each type under the output_templates subdirectory.

6.3. How do I add an extended directive?

  1. Add an entry to rwhois.directive. Follow the model and BE CAREFUL.
     MAKE SURE THAT YOU DO NOT EXPOSE YOURSELF TO SECURITY HOLES.

6.4. How do I register my server into the tree?

  1. Send a filled-in referral record to the hostmaster on the next level
     up of the rwhois tree.

7. Related Documents

RFC 1714 Williamson,S., Kosters,M. "Referral Whois Protocol 
                     (RWhois)", September 1994
