Authenticate with infrastructure via the Skydive analyzer

        This method will also set the authentication cookie to be used in
        the future requests
        :param host_spec: Host IP and port (e.g. 192.168.10.1:8082)
        :type host_spec: string
        :param username: Username to use for login
        :type username: string
        :param password: Password to use for login
        :type password: string
        :return: True on successful authentication, False otherwise

def login(self, host_spec="", username="", password=""):
        """ Authenticate with infrastructure via the Skydive analyzer

        This method will also set the authentication cookie to be used in
        the future requests
        :param host_spec: Host IP and port (e.g. 192.168.10.1:8082)
        :type host_spec: string
        :param username: Username to use for login
        :type username: string
        :param password: Password to use for login
        :type password: string
        :return: True on successful authentication, False otherwise
        """

        warnings.warn(
            "shouldn't use this function anymore ! use connect which handles"
            "handles authentication directly.",
            DeprecationWarning
        )

        scheme = "http"
        if not host_spec:
            u = urlparse(self.endpoint)
            host_spec = u.netloc
            if u.scheme == "wss":
                scheme = "https"
            if self.username:
                username = self.username
            if self.password:
                password = self.password

        auth = Authenticate(host_spec, scheme=scheme,
                            username=username, password=password)
        try:
            auth.login()
            cookie = 'authtok={}'.format(auth.authtok)
            if self.cookies:
                self.cookies.append(cookie)
            else:
                self.cookies = [cookie, ]
            return True
        except Exception:
            return False