nis — Interface to Sun’s NIS (Yellow Pages)

Deprecated since version 3.11, will be removed in version 3.13: The nis module is deprecated (see PEP 594 for details).


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.

Availability: not Emscripten, not WASI.

This module does not work or is not available on WebAssembly platforms wasm32-emscripten and wasm32-wasi. See WebAssembly platforms for more information.

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.