diff --git a/Lib/test/test_socket.py b/Lib/test/test_socket.py
index cb00c38..546d793 100644
--- a/Lib/test/test_socket.py
+++ b/Lib/test/test_socket.py
@@ -4451,7 +4451,7 @@
     UNIX_PATH_MAX = 108
 
     def testLinuxAbstractNamespace(self):
-        address = "\x00python-test-hello\x00\xff"
+        address = b"\x00python-test-hello\x00\xff"
         with socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) as s1:
             s1.bind(address)
             s1.listen(1)
@@ -4462,7 +4462,7 @@
                     self.assertEqual(s2.getpeername(), address)
 
     def testMaxName(self):
-        address = "\x00" + "h" * (self.UNIX_PATH_MAX - 1)
+        address = b"\x00" + b"h" * (self.UNIX_PATH_MAX - 1)
         with socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) as s:
             s.bind(address)
             self.assertEqual(s.getsockname(), address)
@@ -4472,12 +4472,12 @@
         with socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) as s:
             self.assertRaises(OSError, s.bind, address)
 
-    def testBytesName(self):
-        # Check that an abstract name can be passed as bytes.
+    def testStrName(self):
+        # Check that an abstract name can be passed as a string.
         s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
         try:
-            s.bind(b"\x00python\x00test\x00")
-            self.assertEqual(s.getsockname(), "\x00python\x00test\x00")
+            s.bind("\x00python\x00test\x00")
+            self.assertEqual(s.getsockname(), b"\x00python\x00test\x00")
         finally:
             s.close()
 
diff --git a/Misc/NEWS b/Misc/NEWS
index 12bb2d4..acd89e4 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -99,9 +99,6 @@
 Library
 -------
 
-- Issue #17683: socket module: return AF_UNIX addresses in Linux abstract
-  namespace as string.
-
 - Issue #17914: Add os.cpu_count(). Patch by Yogesh Chaudhari, based on an
   initial patch by Trent Nelson.
 
diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c
index ae2924c..20db3d9 100644
--- a/Modules/socketmodule.c
+++ b/Modules/socketmodule.c
@@ -1018,7 +1018,7 @@
 #ifdef linux
         if (a->sun_path[0] == 0) {  /* Linux abstract namespace */
             addrlen -= offsetof(struct sockaddr_un, sun_path);
-            return PyUnicode_DecodeFSDefaultAndSize(a->sun_path, addrlen);
+            return PyBytes_FromStringAndSize(a->sun_path, addrlen);
         }
         else
 #endif /* linux */
