Beispiel #1
0
    def _tls_wrap(self):
        server_hostname = None
        if not utils.is_ip(self._hostname):
            server_hostname = self._hostname

        self._socket = utils.security.ssl_wrap(self._socket,
            cert=self._cert, key=self._key, verify=self._tls_verify,
            hostname=server_hostname)
Beispiel #2
0
    def _tls_wrap(self):
        server_hostname = None
        if not utils.is_ip(self._hostname):
            server_hostname = self._hostname

        self._socket = utils.security.ssl_wrap(self._socket,
            cert=self._cert, key=self._key, verify=self._tls_verify,
            hostname=server_hostname)
Beispiel #3
0
    def tls_wrap(self):
        context = ssl.SSLContext(ssl.PROTOCOL_TLS)
        context.options |= ssl.OP_NO_SSLv2
        context.options |= ssl.OP_NO_SSLv3
        context.options |= ssl.OP_NO_TLSv1

        context.load_default_certs()
        if self.get_setting("ssl-verify", True):
            context.verify_mode = ssl.CERT_REQUIRED

        client_certificate = self.bot.config.get("tls-certificate", None)
        client_key = self.bot.config.get("tls-key", None)
        if client_certificate and client_key:
            context.load_cert_chain(client_certificate, keyfile=client_key)

        server_hostname = None
        if not utils.is_ip(self.connection_params.hostname):
            server_hostname = self.connection_params.hostname

        self.socket = context.wrap_socket(self.socket,
                                          server_hostname=server_hostname)
Beispiel #4
0
 def parse(self, value: str) -> typing.Any:
     if utils.is_ip(value):
         return value
     return None
Beispiel #5
0
def _parse(value):
    if utils.is_ip(value):
        return value
    return None