]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Handle when IOCTL_VM_SOCKETS_GET_LOCAL_CID does not exist in "socket" (GH-19270)
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Wed, 1 Apr 2020 01:25:34 +0000 (18:25 -0700)
committerGitHub <noreply@github.com>
Wed, 1 Apr 2020 01:25:34 +0000 (18:25 -0700)
Running `test_socket` or anything that depends on it (like python -m
test.pythoninfo) crashes if IOCTL_VM_SOCKETS_GET_LOCAL_CID does not
exist in the socket module.

Automerge-Triggered-By: @pablogsal
(cherry picked from commit 6eb9619c88612565b424be14196a8adae6d51978)

Co-authored-by: Pablo Galindo <Pablogsal@gmail.com>
Lib/test/test_socket.py

index 1bf562a03d556cad202a53bcbee6108cf58201ff..f9370d8e52dca17faa1b275f6e24e855c3ff581d 100644 (file)
@@ -50,6 +50,8 @@ except ImportError:
 def get_cid():
     if fcntl is None:
         return None
+    if not hasattr(socket, 'IOCTL_VM_SOCKETS_GET_LOCAL_CID'):
+        return None
     try:
         with open("/dev/vsock", "rb") as f:
             r = fcntl.ioctl(f, socket.IOCTL_VM_SOCKETS_GET_LOCAL_CID, "    ")