[Python-checkins] bpo-40635: Fix getfqdn() docstring and docs (GH-27971)
webhook-mailer at python.org
Thu Aug 26 14:40:32 EDT 2021
author: andrei kulakov <andrei.avk at gmail.com>
committer: ambv <lukasz at langa.pl>
bpo-40635: Fix getfqdn() docstring and docs (GH-27971)
Co-authored-by: Łukasz Langa <lukasz at langa.pl>
diff --git a/Doc/library/socket.rst b/Doc/library/socket.rst
index 95c7d7e0699f0..d668c6b797271 100755
@@ -808,8 +808,9 @@ The :mod:`socket` module also offers various network-related services:
it is interpreted as the local host. To find the fully qualified name, the
hostname returned by :func:`gethostbyaddr` is checked, followed by aliases for the
host, if available. The first name which includes a period is selected. In
- case no fully qualified domain name is available, the hostname as returned by
- :func:`gethostname` is returned.
+ case no fully qualified domain name is available and *name* was provided,
+ it is returned unchanged. If *name* was empty or equal to ``'0.0.0.0'``,
+ the hostname from :func:`gethostname` is returned.
.. function:: gethostbyname(hostname)
diff --git a/Lib/socket.py b/Lib/socket.py
index a64ae400ce988..ef82c496cb85a 100755
@@ -782,8 +782,9 @@ def getfqdn(name=''):
An empty argument is interpreted as meaning the local host.
First the hostname returned by gethostbyaddr() is checked, then
- possibly existing aliases. In case no FQDN is available, hostname
- from gethostname() is returned.
+ possibly existing aliases. In case no FQDN is available and `name`
+ was given, it is returned unchanged. If `name` was empty or '0.0.0.0',
+ hostname from gethostname() is returned.
name = name.strip()
if not name or name == '0.0.0.0':
More information about the Python-checkins