35.12. "nis" --- Interface to Sun's NIS (Yellow Pages)
******************************************************

======================================================================

The "nis" module gives a thin wrapper around the NIS library, useful
for central administration of several hosts.

Because NIS exists only on Unix systems, this module is only available
for Unix.

The "nis" module defines the following functions:

nis.match(key, mapname, domain=default_domain)

   Return the match for *key* in map *mapname*, or raise an error
   ("nis.error") if there is none. Both should be strings, *key* is
   8-bit clean. Return value is an arbitrary array of bytes (may
   contain "NULL" and other joys).

   Note that *mapname* is first checked if it is an alias to another
   name.

   The *domain* argument allows overriding the NIS domain used for the
   lookup. If unspecified, lookup is in the default NIS domain.

nis.cat(mapname, domain=default_domain)

   Return a dictionary mapping *key* to *value* such that "match(key,
   mapname)==value". Note that both keys and values of the dictionary
   are arbitrary arrays of bytes.

   Note that *mapname* is first checked if it is an alias to another
   name.

   The *domain* argument allows overriding the NIS domain used for the
   lookup. If unspecified, lookup is in the default NIS domain.

nis.maps(domain=default_domain)

   Return a list of all valid maps.

   The *domain* argument allows overriding the NIS domain used for the
   lookup. If unspecified, lookup is in the default NIS domain.

nis.get_default_domain()

   Return the system default NIS domain.

The "nis" module defines the following exception:

exception nis.error

   An error raised when a NIS function returns an error code.
