NDBM(7P)                                                              NDBM(7P)


NAME
     ndbm - local name service database

SYNOPSIS
     /var/ns/lib/libns_ndbm.so

DESCRIPTION
     The ndbm client library fetches name service data out of an ndbm(3B)
     format database file on the local host.  This library is meant to be used
     only by the nsd(1M) daemon to efficiently access local name service data.

     The library /var/ns/lib/libns_ndbm.so is opened by the nsd(1M) daemon
     when ndbm is listed as the protocol for some map in a nsswitch.conf file.

     The library contains code to fetch data from a local ndbm file and
     present it as lines from the configuration file from which it came.  The
     nsd daemon then presents that data in the filesystem mounted under /ns.

     Extended attributes in the nsswitch.conf file can be used to control the
     behavior of the ndbm library.  Extended attributes are simply lists of
     key/value pairs attached to each object in the nsd filesystem.  The
     attributes supported in this library are:

     domain
          This is the domainname given as a parameter to the remote name
          server.  This attribute is typically inherited from the daemon
          depending on the nsswitch.conf file that is being read.  Given the
          configuration file /var/ns/domains/DOMAINNAME/nsswitch.conf the
          attribute "domain" is set to DOMAINNAME.  This attribute controls
          which file is used to supply the requested information.  Given a
          domain DOMAINNAME the library would open the file
          /var/ns/domains/DOMAINNAME/{table.dir,table.pag}.  If the domain
          attribute is unset then the file /etc/{table.dir,table.pag} would be
          used.  See the information about the table attribute below.  A
          client system can be a member of multiple domains by including
          multiple instances of the ndbm keyword in the nsswitch.conf file
          like:
               hosts: ndbm(domain=engr) ndbm(domain=corp)

     table
          The table attribute is typically inherited from the daemon based on
          the line from which this entry occurs in the nsswitch.conf file.  In
          the above example the table attribute would be set to hosts.byname
          or hosts.byaddr depending on the context of the request.  This
          attribute is used as the file name containing the ndbm data. Ndbm
          databases are made up of two files, a directory file which has a
          ".dir" extension and a data file which has a ".pag" extension.  For
          the hosts.byname map in the default domain the files
          /etc/hosts.byname.dir and /etc/hosts.byname.pag would be opened and
          searched.


     key  The key attribute is used to fetch the data from the ndbm(3B)
          database.  It is set by the nsd(1M) daemon, and is used without
          alteration.

     file The file attribute overrides the domain and table attributes to set
          the name of the file to be opened.  If the file begins with a
          leading '/' then that file is simply opened.  If not, then the
          contents of this attribute are appended to the directory name --
          either /etc/ for the default domain, or /var/ns/domains/DOMAINNAME/
          when the domain attribute is set.  The file should not have any
          extension; the ".dir" and ".pag" are automatically appended when
          opening the files.

     null_extend_key
          The null_extend_key attribute specifies that the null character
          which terminates the key is really part of the key.  Some
          applications (such as sendmail) have historically included the null
          in the key so this attribute provides backward compatibility with
          the old behavior.

FILES
     /var/ns/lib/libns_ndbm.so

SEE ALSO
     nsd(1M), nsswitch.conf(4)
     IRIX Admin: Networking and Mail


                                                                        Page 2