D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
proc
/
self
/
root
/
opt
/
plesk
/
python
/
3
/
lib
/
python3.10
/
site-packages
/
imapclient
/
Filename :
imap4.py
back
Copy
# Copyright (c) 2015, Menno Smits # Released subject to the New BSD License # Please see http://en.wikipedia.org/wiki/BSD_licenses import imaplib import socket from typing import Optional class IMAP4WithTimeout(imaplib.IMAP4): def __init__(self, address: str, port: int, timeout: Optional[float]) -> None: self._timeout = timeout imaplib.IMAP4.__init__(self, address, port) def open( self, host: str = "", port: int = 143, timeout: Optional[float] = None ) -> None: # This is overridden to make it consistent across Python versions. self.host = host self.port = port self.sock = self._create_socket(timeout) self.file = self.sock.makefile("rb") def _create_socket(self, timeout: Optional[float] = None) -> socket.socket: return socket.create_connection( (self.host, self.port), timeout if timeout is not None else self._timeout )