Skip to contentSkip to conversation

gethostbyname.3: NSS plugins searched first.

PATCH Applied Carlos O'Donell 2 participants 4 messages Apr 29, 2015 – May 4, 2015 3 messages not in the archive Man-pages: manual pages for Linux -- Sections 2, 3, 4, 5, and 7

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 gethostbyname.3: NSS plugins searched first.

The gethostbyname man page should first and foremost list that the source of the data comes from the NSS plugins. I accept that the man page is intentionally trying to be vague because these things are not guaranteed anywhere, the truth is far more mundane and "default" here IMO applies to a normal glibc installation on Linux, and the fallback is always a localhost nameserver.

I suggest the following changes, but feel free to reword as you see fit.

Patch against master.

man3/gethostbyname.3 +9 -7
index 7875f88..59c7bb1 100644
@@ -224,18 +224,20 @@ The domain name queries carried out by
 .BR gethostbyname ()
 and
 .BR gethostbyaddr ()
-use a combination of any or all of the name server
+use a combination of any or all of Name Service Switch
+.BR nsswitch.conf(5)
+configured sources, name servers in \fI/etc/resolv.conf\fP
+.BR resolv.conf(5),
+a local name server
 .BR named (8),
 a broken out line from \fI/etc/hosts\fP, and the Network
 Information Service (NIS or YP), depending upon the contents of the
 \fIorder\fP line in
 .IR /etc/host.conf .
-.\" (See
-.\" .BR resolv+ (8)).
-The default action is to query
-.BR named (8),
-followed by
-.IR /etc/hosts .
+The default action is to query the Name Service Switch
+.BR nsswitch.conf(5)
+configured sources, followed by a local name server
+.BR named (8).
 .PP
 The \fIhostent\fP structure is defined in \fI<netdb.h>\fP as follows:
 .sp

---

Cheers,
Carlos.
--
To unsubscribe from this list: send the line "unsubscribe linux-man" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html

A message that is not in the archive (sent off-list or not yet received): [email protected]

#2 lore raw

[CC += Stéphane, since he's been working on related pages recently]

Hi Carlos,

Quoted 10 lines · Carlos O'Donell

The gethostbyname man page should first and foremost list that the source of the data comes from the NSS plugins. I accept that the man page is intentionally trying to be vague because these things are not guaranteed anywhere, the truth is far more mundane and "default" here IMO applies to a normal glibc installation on Linux, and the fallback is always a localhost nameserver.

I suggest the following changes, but feel free to reword as you see fit.

Thanks. Applied, with a few formatting teaks.

One question below.

Quoted 13 lines

Patch against master.

man3/gethostbyname.3 +0 -1
index 7875f88..59c7bb1 100644
@@ -224,18 +224,20 @@ The domain name queries carried out by
 .BR gethostbyname ()
 and
 .BR gethostbyaddr ()
-use a combination of any or all of the name server

man3/gethostbyname.3 The domain name queries carried out by · line 236

Quoted 10 lines
man3/gethostbyname.3 +5 -0
+use a combination of any or all of Name Service Switch
+.BR nsswitch.conf(5)
+configured sources, name servers in \fI/etc/resolv.conf\fP
+.BR resolv.conf(5),
+a local name server
 .BR named (8),
 a broken out line from \fI/etc/hosts\fP, and the Network
 Information Service (NIS or YP), depending upon the contents of the
 \fIorder\fP line in
 .IR /etc/host.conf .

Your patch didn't change the last few lines, but you may be able to help... Is the reference to "order" and /etc/host.conf on this page not obsolete by now. Looking at host.conf(5), one sees,

Historical
The nsswitch.conf(5) file is the modern way of controlling the order of host lookups.

In glibc 2.4 and earlier, the following keyword is recognized:

order This keyword specifies how host lookups are to be per‐
formed. It should be followed by one or more lookup
methods, separated by commas. Valid methods are bind, hosts, and nis.

So, it looks like some fix is required here also. Right?

Cheers,

Michael

Quoted 22 lines
man3/gethostbyname.3 +4 -7
-.\" (See
-.\" .BR resolv+ (8)).
-The default action is to query
-.BR named (8),
-followed by
-.IR /etc/hosts .
+The default action is to query the Name Service Switch
+.BR nsswitch.conf(5)
+configured sources, followed by a local name server
+.BR named (8).
 .PP
 The \fIhostent\fP structure is defined in \fI<netdb.h>\fP as follows:
 .sp
---

Cheers,
Carlos.
--
To unsubscribe from this list: send the line "unsubscribe linux-man" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html

Signature · 7 lines
Michael Kerrisk
Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/
Linux/UNIX System Programming Training: http://man7.org/training/
--
To unsubscribe from this list: send the line "unsubscribe linux-man" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

A message that is not in the archive (sent off-list or not yet received): [email protected]

#4 lore raw
Quoted 39 lines · Michael Kerrisk (man-pages)

[CC += Stéphane, since he's been working on related pages recently]

Hi Carlos,

Quoted 10 lines · Carlos O'Donell

The gethostbyname man page should first and foremost list that the source of the data comes from the NSS plugins. I accept that the man page is intentionally trying to be vague because these things are not guaranteed anywhere, the truth is far more mundane and "default" here IMO applies to a normal glibc installation on Linux, and the fallback is always a localhost nameserver.

I suggest the following changes, but feel free to reword as you see fit.

Thanks. Applied, with a few formatting teaks.

One question below.

Quoted 19 lines

Patch against master.

man3/gethostbyname.3 +5 -1
index 7875f88..59c7bb1 100644
@@ -224,18 +224,20 @@ The domain name queries carried out by
 .BR gethostbyname ()
 and
 .BR gethostbyaddr ()
-use a combination of any or all of the name server
+use a combination of any or all of Name Service Switch
+.BR nsswitch.conf(5)
+configured sources, name servers in \fI/etc/resolv.conf\fP
+.BR resolv.conf(5),
+a local name server
 .BR named (8),
Quoted 8 lines

man3/gethostbyname.3 The domain name queries carried out by · line 236

Quoted 4 lines
man3/gethostbyname.3 +0 -0
 a broken out line from \fI/etc/hosts\fP, and the Network
 Information Service (NIS or YP), depending upon the contents of the
 \fIorder\fP line in
 .IR /etc/host.conf .

Your patch didn't change the last few lines, but you may be able to help... Is the reference to "order" and /etc/host.conf on this page not obsolete by now. Looking at host.conf(5), one sees,

No, order *is* obsolete.

Quoted 4 lines

Historical
The nsswitch.conf(5) file is the modern way of controlling the order of host lookups.

Quoted 8 lines

In glibc 2.4 and earlier, the following keyword is recognized:

order This keyword specifies how host lookups are to be per‐
formed. It should be followed by one or more lookup
methods, separated by commas. Valid methods are bind, hosts, and nis.

So, it looks like some fix is required here also. Right?

Yes. I didn't know how we wanted to talk about this particular topic. The use of "order" is obsolete as of 2.5.

The following is a sketch of how I'd rewrite this to be more correct, I'm out of time for today, but if you want to fix the formatting and check it in that would be awesome.

man3/gethostbyname.3 +16 -13
index 96f8cd6..5ce1e17 100644
@@ -224,23 +224,26 @@ The domain name queries carried out by
 .BR gethostbyname ()
 and
 .BR gethostbyaddr ()
-use a combination of any or all of the Name Service Switch
+rely on the Name Service Switch
 .RB ( nsswitch.conf (5))
-configured sources, name servers in \fI/etc/resolv.conf\fP
-.RB ( resolv.conf (5)),
-a local name server
-.RB ( named (8)),
-a broken-out line from
-.IR /etc/hosts
-.RB ( hosts (5)),
-and the Network
-Information Service (NIS or YP), depending on the contents of the
-\fIorder\fP line in
-.IR /etc/host.conf .
+configured sources or a local name server
+.RB ( named (8)).
 The default action is to query the Name Service Switch
 .RB ( nsswitch.conf(5))
-configured sources, followed by a local name server
+configured sources, failing that, a local name server
 .RB ( named (8)).
+
+.SS Historical
+The
+.BR nsswitch.conf (5)
+file is the modern way of controlling the order of host lookups.
+.PP
+In glibc 2.4 and earlier, the
+.I order
+keyword was used to control the order of host lookups as defined in
+.IR /etc/host.conf
+.RB ( host.conf(5)).
+
 .PP
 The \fIhostent\fP structure is defined in \fI<netdb.h>\fP as follows:
 .sp

---

Cheers,
Carlos.

--
To unsubscribe from this list: send the line "unsubscribe linux-man" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html

A message that is not in the archive (sent off-list or not yet received): [email protected]

#6 lore raw
Quoted 62 lines · Carlos O'Donell
Quoted 39 lines · Michael Kerrisk (man-pages)

[CC += Stéphane, since he's been working on related pages recently]

Hi Carlos,

Quoted 10 lines · Carlos O'Donell

The gethostbyname man page should first and foremost list that the source of the data comes from the NSS plugins. I accept that the man page is intentionally trying to be vague because these things are not guaranteed anywhere, the truth is far more mundane and "default" here IMO applies to a normal glibc installation on Linux, and the fallback is always a localhost nameserver.

I suggest the following changes, but feel free to reword as you see fit.

Thanks. Applied, with a few formatting teaks.

One question below.

Quoted 19 lines

Patch against master.

man3/gethostbyname.3 +5 -1
index 7875f88..59c7bb1 100644
@@ -224,18 +224,20 @@ The domain name queries carried out by
 .BR gethostbyname ()
 and
 .BR gethostbyaddr ()
-use a combination of any or all of the name server
+use a combination of any or all of Name Service Switch
+.BR nsswitch.conf(5)
+configured sources, name servers in \fI/etc/resolv.conf\fP
+.BR resolv.conf(5),
+a local name server
 .BR named (8),
Quoted 8 lines

man3/gethostbyname.3 The domain name queries carried out by · line 236

Quoted 4 lines
man3/gethostbyname.3 +0 -0
 a broken out line from \fI/etc/hosts\fP, and the Network
 Information Service (NIS or YP), depending upon the contents of the
 \fIorder\fP line in
 .IR /etc/host.conf .

Your patch didn't change the last few lines, but you may be able to help... Is the reference to "order" and /etc/host.conf on this page not obsolete by now. Looking at host.conf(5), one sees,

No, order *is* obsolete.

Quoted 11 lines

Historical
The nsswitch.conf(5) file is the modern way of controlling the order of host lookups.

In glibc 2.4 and earlier, the following keyword is recognized:

order This keyword specifies how host lookups are to be per‐
formed. It should be followed by one or more lookup
methods, separated by commas. Valid methods are bind, hosts, and nis.

Quoted 8 lines
Quoted 1 line

So, it looks like some fix is required here also. Right?

Yes. I didn't know how we wanted to talk about this particular topic. The use of "order" is obsolete as of 2.5.

The following is a sketch of how I'd rewrite this to be more correct, I'm out of time for today, but if you want to fix the formatting and check it in that would be awesome.

Applied, with a minor formatting tweak. Thanks, Carlos!

Cheers,

Michael

Quoted 53 lines
man3/gethostbyname.3 +16 -14
index 96f8cd6..5ce1e17 100644
@@ -224,23 +224,26 @@ The domain name queries carried out by
 .BR gethostbyname ()
 and
 .BR gethostbyaddr ()
-use a combination of any or all of the Name Service Switch
+rely on the Name Service Switch
 .RB ( nsswitch.conf (5))
-configured sources, name servers in \fI/etc/resolv.conf\fP
-.RB ( resolv.conf (5)),
-a local name server
-.RB ( named (8)),
-a broken-out line from
-.IR /etc/hosts
-.RB ( hosts (5)),
-and the Network
-Information Service (NIS or YP), depending on the contents of the
-\fIorder\fP line in
-.IR /etc/host.conf .
+configured sources or a local name server
+.RB ( named (8)).
 The default action is to query the Name Service Switch
 .RB ( nsswitch.conf(5))
-configured sources, followed by a local name server
+configured sources, failing that, a local name server
 .RB ( named (8)).
+
+.SS Historical
+The
+.BR nsswitch.conf (5)
+file is the modern way of controlling the order of host lookups.
+.PP
+In glibc 2.4 and earlier, the
+.I order
+keyword was used to control the order of host lookups as defined in
+.IR /etc/host.conf
+.RB ( host.conf(5)).
+
 .PP
 The \fIhostent\fP structure is defined in \fI<netdb.h>\fP as follows:
 .sp
---

Cheers,
Carlos.

Signature · 7 lines
Michael Kerrisk
Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/
Linux/UNIX System Programming Training: http://man7.org/training/
--
To unsubscribe from this list: send the line "unsubscribe linux-man" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html