From df992b84fce88478648b3263f948f71d411bf625 Mon Sep 17 00:00:00 2001 From: bms Date: Mon, 22 Jan 2007 11:45:25 +0000 Subject: Docuemnt exactly which functions access which NSS databases. Point out that FreeBSD libc has compat stubs for GNU glibc NSS modules which access NSDB_PASSWD/NSDB_GROUP, but not NSDB_HOSTS; based on painful experience porting nss_mdns. Reviewed by: ru --- lib/libc/net/nsdispatch.3 | 16 +++++++++++++- share/man/man5/nsswitch.conf.5 | 48 +++++++++++++++++++++++++++++++++++++----- 2 files changed, 58 insertions(+), 6 deletions(-) diff --git a/lib/libc/net/nsdispatch.3 b/lib/libc/net/nsdispatch.3 index 96e700f..cf15002 100644 --- a/lib/libc/net/nsdispatch.3 +++ b/lib/libc/net/nsdispatch.3 @@ -32,7 +32,7 @@ .\" .\" $FreeBSD$ .\" -.Dd April 16, 2003 +.Dd January 22, 2007 .Dt NSDISPATCH 3 .Os .Sh NAME @@ -209,6 +209,20 @@ function returns the value of the method that caused the dispatcher to terminate, or .Dv NS_NOTFOUND otherwise. +.Sh NOTES +.Fx Ns 's +.Lb libc +provides stubs for compatibility with NSS modules +written for the +.Tn GNU +C Library +.Nm nsswitch +interface. +However, these stubs only support the use of the +.Dq Li passwd +and +.Dq Li group +databases. .Sh SEE ALSO .Xr hesiod 3 , .Xr stdarg 3 , diff --git a/share/man/man5/nsswitch.conf.5 b/share/man/man5/nsswitch.conf.5 index 2501e48..685b3f7 100644 --- a/share/man/man5/nsswitch.conf.5 +++ b/share/man/man5/nsswitch.conf.5 @@ -33,7 +33,7 @@ .\" .\" $FreeBSD$ .\" -.Dd May 20, 2006 +.Dd January 22, 2007 .Dt NSSWITCH.CONF 5 .Os .Sh NAME @@ -105,21 +105,45 @@ The following databases are used by the following C library functions: .It Sy Database .Sy "Used by" .It group -.Xr getgrent 3 +.Xr getgrent 3 , +.Xr getgrent_r 3 , +.Xr getgrgid_r 3 , +.Xr getgrnam_r 3 , +.Xr setgrent 3 , +.Xr endgrent 3 .It hosts -.Xr gethostbyname 3 +.Xr getaddrinfo 3 , +.Xr gethostbyaddr 3 , +.Xr gethostbyaddr_r 3 , +.Xr gethostbyname 3 , +.Xr gethostbyname2 3 , +.Xr gethostbyname_r 3 , +.Xr getipnodebyaddr 3 , +.Xr getipnodebyname 3 .It networks -.Xr getnetbyname 3 +.Xr getnetbyaddr 3 , +.Xr getnetbyaddr_r 3 , +.Xr getnetbyname 3 , +.Xr getnetbyname_r 3 .It passwd -.Xr getpwent 3 +.Xr getpwent 3 , +.Xr getpwent_r 3 , +.Xr getpwnam_r 3 , +.Xr getpwuid_r 3 , +.Xr setpwent 3 , +.Xr endpwent 3 .It shells .Xr getusershell 3 .It services .Xr getservent 3 .It rpc +.Xr getrpcbyname 3 , +.Xr getrpcbynumber 3 , .Xr getrpcent 3 .It proto .Xr getprotobyname 3 +.Xr getprotobynumber 3 , +.Xr getprotoent 3 .El .Ss Status codes The following status codes are available: @@ -313,6 +337,20 @@ If system got compiled with you have to remove .Sq nis entries. +.Pp +.Fx Ns 's +.Lb libc +provides stubs for compatibility with NSS modules +written for the +.Tn GNU +C Library +.Nm nsswitch +interface. +However, these stubs only support the use of the +.Dq Li passwd +and +.Dq Li group +databases. .Sh SEE ALSO .Xr nsdispatch 3 , .Xr cached.conf 5 , -- cgit v1.1