diff --git a/src/managesieve-login/client-authenticate.c b/src/managesieve-login/client-authenticate.c index b342f4a067fb079fd19f847cac4b27dcbb97d664..7dfcf70098ea6ab3616013680e93d33e3782603f 100644 --- a/src/managesieve-login/client-authenticate.c +++ b/src/managesieve-login/client-authenticate.c @@ -242,7 +242,7 @@ managesieve_client_auth_read_response(struct managesieve_client *msieve_client, return 1; } -void managesieve_client_auth_parse_response(struct client *client) +bool managesieve_client_auth_parse_response(struct client *client) { struct managesieve_client *msieve_client = (struct managesieve_client *)client; @@ -254,20 +254,11 @@ void managesieve_client_auth_parse_response(struct client *client) if (ret < 0) { if (error != NULL) client_auth_fail(client, error); - return; + return FALSE; } if (ret == 0) - return; - - if (strcmp(str_c(client->auth_response), "*") == 0) { - client_auth_abort(client); - return; - } - - client_auth_respond(client, str_c(client->auth_response)); - - memset(str_c_modifiable(client->auth_response), 0, - str_len(client->auth_response)); + return FALSE; + return TRUE; } int cmd_authenticate(struct managesieve_client *msieve_client, diff --git a/src/managesieve-login/client-authenticate.h b/src/managesieve-login/client-authenticate.h index e58c8fe5c092e034e0dada0d8491750c59cac26d..3deb83ba6b70796eda426a375c8fc66115da8075 100644 --- a/src/managesieve-login/client-authenticate.h +++ b/src/managesieve-login/client-authenticate.h @@ -12,7 +12,7 @@ void managesieve_client_auth_result(struct client *client, void managesieve_client_auth_send_challenge(struct client *client, const char *data); -void managesieve_client_auth_parse_response(struct client *client); +bool managesieve_client_auth_parse_response(struct client *client); int cmd_authenticate(struct managesieve_client *client, const struct managesieve_arg *args);