RFC 1464 (rfc1464) - Page 3 of 4


Using the Domain Name System To Store Arbitrary String Attributes



Alternative Format: Original Text Document



RFC 1464          Storing Arbitrary Attributes in DNS           May 1993


   All whitespace in the attribute value is returned to the requestor
   (it is up to the application to decide if it is significant.)

   Examples

    indicates a space character.

   Attribute    Attribute       Internal Form           External Form
   Name         Value           (server to resolver)    (TXT record)

   color        blue            color=blue              "color=blue"
   equation     a=4             equation=a=4            "equation=a=4"
   a=a          true            a`=a=true               "a`=a=true"
   a\=a false           a\`=a=false             "a\\`=a=false"
   =            \=              `==\=                   "`==\\="

   string       "Cat"           string="Cat"            "string=\"Cat\""
   string2      `abc`           string2=``abc``         "string2=``abc``"
   novalue                      novalue=                "novalue="
   a b          c d             a b=c d                 "a b=c d"
   abc      123         abc` =123           "abc` =123 "

3.  Application Usage

   The attributes can be accessed by the standard resolver library, but
   it is recommended that a library routine designed specially for this
   attribute format be used.  Such a routine might provide an analogue
   to gethostbyname:

         getattributebyname(objectname,          name of object
                            attributename,       name of attribute
                            attributevalue,      pointer to buffer
                            attributevaluelen)   length of buffer

   This routine would remove all quoting characters before returning the
   information to the caller.  A more complex routine could return
   attributes with multiple values, or several different attributes.

4.  Attribute Name Registration

   To permit ease of interoperability and to reduce the chance of naming
   conflicts, a registration process for well known attribute names
   might be established.  This could be a periodically updated list of
   names and/or adherence to other name registration mechanisms such as
   published object identifiers.

   This paper does not address attribute name registration.




Rosenbaum