bpo-18540: Fix EAI_NONAME in imaplib.IMAP4*() (GH-8634)

(cherry picked from commit e4dcbbd7f4ac18d01c0ec85f64ae98b8281ed403)

Co-authored-by: Berker Peksag <berker.peksag@gmail.com>
diff --git a/Lib/imaplib.py b/Lib/imaplib.py
index 0dfd852..e451413 100644
--- a/Lib/imaplib.py
+++ b/Lib/imaplib.py
@@ -282,7 +282,11 @@
 
 
     def _create_socket(self):
-        return socket.create_connection((self.host, self.port))
+        # Default value of IMAP4.host is '', but socket.getaddrinfo()
+        # (which is used by socket.create_connection()) expects None
+        # as a default value for host.
+        host = None if not self.host else self.host
+        return socket.create_connection((host, self.port))
 
     def open(self, host = '', port = IMAP4_PORT):
         """Setup connection to remote server on "host:port"