FILES(7P) FILES(7P)
files - local files name service parser library
/var/ns/lib/libns_files.so
The files client library parses traditional local name service
configuration files such as /etc/passwd and makes the data available
through the nsd(1M) filesystem. 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_files.so is opened by the nsd(1M) daemon
when files is listed as the protocol for some map in a nsswitch.conf
file.
Extended attributes in the nsswitch.conf file can be used to control the
behavior of the files 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:
compat
The compat attribute is only used for the password file. This
attribute specifies that lines beginning with +/- represent entries
supported in later libraries and results in a recursive call into
nsd. When the directive [notfound=return] follows this line then
entries which are not in the local password file, or where there is
no +/- entry which matches will fail. This allows the historic
behavior at the cost of performance. To get the same behavior from
previous OS releases use the following line for the password entry:
passwd: files(compat) [notfound=return] nis
library_compat
The library_compat attribute is set when a entry is generated from a
+/- compat request. Similar to the library attribute, it will be
set to the name of the library that the compat information was
returned from.
domain
The domain attribute determines the path used to find the source
file. 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. Given a domain DOMAINNAME
the library would open the file /var/ns/domains/DOMAINNAME/FILE
where file is the tradition file name for each table. If a table
does not match one of the traditional files then the table name
itself is used for the file name. If the domain attribute is unset
then the file /etc/FILE would be used. See the information about
the table and file attributes below. A client system can be a
member of multiple domains by including multiple instances of the
Page 1
FILES(7P) FILES(7P)
files keyword in the nsswitch.conf file like:
hosts: files(domain=engr) files(domain=corp)
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 default files for each of the
traditional maps are as follows:
lB lB l l . Filename Tables aliases mail.aliases,
mail.byaddr capability capability.byname
clearance clearance.byname ethers ethers.byname,
ethers.byaddr group group.byname, group.bygid,
group.bymember hosts hosts.byaddr, hosts.byname
mac mac.byname, mac.byvalue netgroup netgroup,
netgroup.byuser, netgroup.byhost networks networks.byaddr,
networks.byname passwd passwd.byname, passwd.byuid
protocols protocols.byname, protocols.bynumber rpc rpc.byname,
rpc.bynumber services services, services.byname
shadow shadow.byname
key The key attribute is used to fetch the data from the file. It is
set by the nsd(1M) daemon. Each of the traditional files uses the
key in a different way. For instance when looking up an address in
the hosts.byaddr map the library would open up the hosts file,
convert the key to an address, then walk through the file one line
at a time converting the first string in the file to an address and
then doing an address comparison until one matched.
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 data unless the
table matches one of the traditional files (see file attribute
above). For the hosts.byname map in the default domain the file
/etc/hosts would be opened and searched.
separator
The separator attribute is used when using the files library to
support a non-traditional file. The file is expected to be of the
format:
keySEPARATORvalue
The separator is a string which is passed directly to the strtok(3C)
function.
Page 2
FILES(7P) FILES(7P)
/etc/nsswitch.conf, /etc/aliases, /etc/capability, /etc/clearance,
/etc/ethers, /etc/group, /etc/hosts, /etc/mac, /etc/netgroup,
/etc/networks, /etc/passwd, /etc/protocols, /etc/rpc, /etc/services,
/etc/shadow
nsd(1M), strtok(3C), nsswitch.conf(4), aliases(4), capability(4),
clearance(4), ethers(4), group(4), hosts(4), mac(4), netgroup(4),
networks(4), passwd(4), protocols(4), rpc(4), services(4), shadow(4)
PPPPaaaaggggeeee 3333 [ Back ]
|