socket.gethostbyname(socket.gethostname()) can fail when host name resolution is not set up correctly; do not fail test_socket if this is the case.
diff --git a/Lib/test/test_socket.py b/Lib/test/test_socket.py
index 57395b0..9f27a51 100644
--- a/Lib/test/test_socket.py
+++ b/Lib/test/test_socket.py
@@ -544,7 +544,11 @@
# XXX(nnorwitz): http://tinyurl.com/os5jz seems to indicate
# it reasonable to get the host's addr in addition to 0.0.0.0.
# At least for eCos. This is required for the S/390 to pass.
- my_ip_addr = socket.gethostbyname(socket.gethostname())
+ try:
+ my_ip_addr = socket.gethostbyname(socket.gethostname())
+ except socket.error:
+ # Probably name lookup wasn't set up right; skip this test
+ return
self.assertIn(name[0], ("0.0.0.0", my_ip_addr), '%s invalid' % name[0])
self.assertEqual(name[1], port)
diff --git a/Misc/NEWS b/Misc/NEWS
index 530cc6f..b9e8d16 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -46,6 +46,9 @@
Tests
-----
+- Do not fail test_socket when the IP address of the local hostname
+ cannot be looked up.
+
- Issue #8886: Use context managers throughout test_zipfile. Patch by
Eric Carstensen.