Issue #16802: Document fileno parameter of socket.socket()

Patch by Henrik Heimbuerger and Bar Harel.
diff --git a/Doc/library/socket.rst b/Doc/library/socket.rst
index e583ebd..f7b7d3d 100644
--- a/Doc/library/socket.rst
+++ b/Doc/library/socket.rst
@@ -384,7 +384,11 @@
    :const:`SOCK_DGRAM`, :const:`SOCK_RAW` or perhaps one of the other ``SOCK_``
    constants. The protocol number is usually zero and may be omitted or in the
    case where the address family is :const:`AF_CAN` the protocol should be one
-   of :const:`CAN_RAW` or :const:`CAN_BCM`.
+   of :const:`CAN_RAW` or :const:`CAN_BCM`.  If *fileno* is specified, the other
+   arguments are ignored, causing the socket with the specified file descriptor
+   to return.  Unlike :func:`socket.fromfd`, *fileno* will return the same
+   socket and not a duplicate. This may help close a detached socket using
+   :meth:`socket.close()`.
 
    The newly created socket is :ref:`non-inheritable <fd_inheritance>`.