]> git.ipfire.org Git - thirdparty/tornado.git/commitdiff
*: Use OSError instead of its aliases
authorBen Darnell <ben@bendarnell.com>
Thu, 13 Jun 2024 18:06:26 +0000 (14:06 -0400)
committerBen Darnell <ben@bendarnell.com>
Thu, 13 Jun 2024 18:06:26 +0000 (14:06 -0400)
Various errors were merged into OSError in Python 3.4.

Automated change with modified pyupgrade.

tornado/iostream.py
tornado/netutil.py
tornado/platform/caresresolver.py
tornado/tcpclient.py
tornado/tcpserver.py
tornado/test/tcpserver_test.py
tornado/test/util.py

index a8955148fd6568e23a47d7065cbd4388d10badf4..40b4f8d4e73eaeaab3796026cf2a3f051cf418e9 100644 (file)
@@ -859,7 +859,7 @@ class BaseIOStream:
                     else:
                         buf = bytearray(self.read_chunk_size)
                     bytes_read = self.read_from_fd(buf)
-                except (socket.error, IOError, OSError) as e:
+                except OSError as e:
                     # ssl.SSLError is a subclass of socket.error
                     if self._is_connreset(e):
                         # Treat ECONNRESET as a connection close rather than
@@ -966,7 +966,7 @@ class BaseIOStream:
                 self._total_write_done_index += num_bytes
             except BlockingIOError:
                 break
-            except (socket.error, IOError, OSError) as e:
+            except OSError as e:
                 if not self._is_connreset(e):
                     # Broken pipe errors are usually caused by connection
                     # reset, and its better to not log EPIPE errors to
@@ -1180,7 +1180,7 @@ class IOStream(BaseIOStream):
             # In non-blocking mode we expect connect() to raise an
             # exception with EINPROGRESS or EWOULDBLOCK.
             pass
-        except socket.error as e:
+        except OSError as e:
             # On freebsd, other errors such as ECONNREFUSED may be
             # returned immediately when attempting to connect to
             # localhost, so handle them the same way as an error
@@ -1271,7 +1271,7 @@ class IOStream(BaseIOStream):
     def _handle_connect(self) -> None:
         try:
             err = self.socket.getsockopt(socket.SOL_SOCKET, socket.SO_ERROR)
-        except socket.error as e:
+        except OSError as e:
             # Hurd doesn't allow SO_ERROR for loopback sockets because all
             # errors for such sockets are reported synchronously.
             if errno_from_exception(e) == errno.ENOPROTOOPT:
@@ -1305,7 +1305,7 @@ class IOStream(BaseIOStream):
                 self.socket.setsockopt(
                     socket.IPPROTO_TCP, socket.TCP_NODELAY, 1 if value else 0
                 )
-            except socket.error as e:
+            except OSError as e:
                 # Sometimes setsockopt will fail if the socket is closed
                 # at the wrong time.  This can happen with HTTPServer
                 # resetting the value to ``False`` between requests.
@@ -1342,7 +1342,7 @@ class SSLIOStream(IOStream):
         # If the socket is already connected, attempt to start the handshake.
         try:
             self.socket.getpeername()
-        except socket.error:
+        except OSError:
             pass
         else:
             # Indirectly start the handshake, which will run on the next
@@ -1387,7 +1387,7 @@ class SSLIOStream(IOStream):
             # in Python 3.7, this error is a subclass of SSLError
             # and will be handled by the previous block instead.
             return self.close(exc_info=err)
-        except socket.error as err:
+        except OSError as err:
             # Some port scans (e.g. nmap in -sT mode) have been known
             # to cause do_handshake to raise EBADF and ENOTCONN, so make
             # those errors quiet as well.
@@ -1606,7 +1606,7 @@ class PipeIOStream(BaseIOStream):
     def read_from_fd(self, buf: Union[bytearray, memoryview]) -> Optional[int]:
         try:
             return self._fio.readinto(buf)  # type: ignore
-        except (IOError, OSError) as e:
+        except OSError as e:
             if errno_from_exception(e) == errno.EBADF:
                 # If the writing half of a pipe is closed, select will
                 # report it as readable but reads will fail with EBADF.
index e83afad570ead4d03dbdd0499b08e82579354350..da134c15044cd41eb666d7e9f8045f023d470732 100644 (file)
@@ -126,14 +126,14 @@ def bind_sockets(
             continue
         try:
             sock = socket.socket(af, socktype, proto)
-        except socket.error as e:
+        except OSError as e:
             if errno_from_exception(e) == errno.EAFNOSUPPORT:
                 continue
             raise
         if os.name != "nt":
             try:
                 sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
-            except socket.error as e:
+            except OSError as e:
                 if errno_from_exception(e) != errno.ENOPROTOOPT:
                     # Hurd doesn't support SO_REUSEADDR.
                     raise
@@ -204,7 +204,7 @@ if hasattr(socket, "AF_UNIX"):
         sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
         try:
             sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
-        except socket.error as e:
+        except OSError as e:
             if errno_from_exception(e) != errno.ENOPROTOOPT:
                 # Hurd doesn't support SO_REUSEADDR
                 raise
index 1ba45c9ac472adc3a32371f8ef1a257e1da39deb..d53cf83909a6b6eeb9c2871e5f747f816b141337 100644 (file)
@@ -73,7 +73,7 @@ class CaresResolver(Resolver):
             )
             result, error = yield fut
             if error:
-                raise IOError(
+                raise OSError(
                     "C-Ares returned error %s: %s while resolving %s"
                     % (error, pycares.errno.strerror(error), host)
                 )
@@ -87,7 +87,7 @@ class CaresResolver(Resolver):
             else:
                 address_family = socket.AF_UNSPEC
             if family != socket.AF_UNSPEC and family != address_family:
-                raise IOError(
+                raise OSError(
                     "Requested socket family %d but got %d" % (family, address_family)
                 )
             addrinfo.append((typing.cast(int, address_family), (address, port)))
index 0971ac084031cd630f0d8d02fa5ea146bbca14a5..2e4b28482dc6f369669888448c4bc786f51fbd81 100644 (file)
@@ -318,13 +318,13 @@ class TCPClient:
             # If the user requires binding also to a specific IP/port.
             try:
                 socket_obj.bind((source_ip_bind, source_port_bind))
-            except socket.error:
+            except OSError:
                 socket_obj.close()
                 # Fail loudly if unable to use the IP/port.
                 raise
         try:
             stream = IOStream(socket_obj, max_buffer_size=max_buffer_size)
-        except socket.error as e:
+        except OSError as e:
             fu = Future()  # type: Future[IOStream]
             fu.set_exception(e)
             return stream, fu
index 4b84af311a4b66300051373e9f9076489f0e6629..a9ae88def77ad924e591484f78ebbf5ccf22a3e0 100644 (file)
@@ -352,7 +352,7 @@ class TCPServer:
                     return connection.close()
                 else:
                     raise
-            except socket.error as err:
+            except OSError as err:
                 # If the connection is closed immediately after it is created
                 # (as in a port scan), we can get one of several errors.
                 # wrap_socket makes an internal call to getpeername,
index c636c8586fb48c7ecd4b851cb5e0eaec937a8856..3c691cffd2bce02ebc89e58c37b91203db68593d 100644 (file)
@@ -93,7 +93,7 @@ class TCPServerTest(AsyncTestCase):
         def connect(c):
             try:
                 yield c.connect(server_addr)
-            except EnvironmentError:
+            except OSError:
                 pass
             else:
                 connected_clients.append(c)
index bcb9bbde24139c5a6998b5611b6d828a826c4b5e..53719ac959bb45d64e4b8a6a94b8b3e0579b01ab 100644 (file)
@@ -48,7 +48,7 @@ def _detect_ipv6():
     try:
         sock = socket.socket(socket.AF_INET6)
         sock.bind(("::1", 0))
-    except socket.error:
+    except OSError:
         return False
     finally:
         if sock is not None: