code: def run(self, host, port=25, with_ssl=False):
          
          try:
              dns_rec = self._lookup(host, port)
              self._connect(dns_rec)
              if with_ssl:
                  self._wrap_ssl()
              banner = self._get_banner()
              self._check_banner(banner)
          except Exception:
              exc_type, exc_value, exc_tb = sys.exc_info()
              self.results['Exception-Type'] = str(exc_type.__name__)
              self.results['Exception-Value'] = str(exc_value)
              self.results['Exception-Traceback'] = repr(traceback.format_exc())
          finally:
              self._close(with_ssl)
docs: Executes a single health check against a remote host and port. This
          method may only be called once per object.
  
          :param host: The hostname or IP address of the SMTP server to check.
          :type host: str
          :param port: The port number of the SMTP server to check.
          :type port: int
          :param with_ssl: If ``True``, SSL will be initiated before attempting
                           to get the banner message.
          :type with_ssl: bool