def connect()

in aliyun/log/ext/syslogclient.py [0:0]


    def connect(self):
        if self.socket is None:
            r = socket.getaddrinfo(self.server, self.port, socket.AF_UNSPEC, self.proto)
            if r is None:
                return False
            for (addr_fam, sock_kind, proto, ca_name, sock_addr) in r:

                sock = socket.socket(addr_fam, self.proto)
                if six.PY3 and self.ssl_kwargs:
                    self.socket = ssl.wrap_socket(sock, **self.ssl_kwargs)
                else:
                    self.socket = sock

                if self.socket is None:
                    return False

                self.socket.settimeout(self.timeout)

                try:
                    self.socket.connect(sock_addr)
                    return True

                except socket.timeout as e:
                    if self.socket is not None:
                        self.socket.close()
                        self.socket = None
                    continue

                except socket.error as e:
                    if self.socket is not None:
                        self.socket.close()
                        self.socket = None
                    continue

            return False

        else:
            return True