if (poprint)
fprintf (stderr, "<--- %s\n", response);
if (*response == '+') {
+ nmh_creds_t creds;
+
if (sasl) {
char server_mechs[256];
if (check_mech(server_mechs, sizeof(server_mechs)) != OK)
return NOTOK;
}
return OK;
- } else {
- nmh_creds_t creds;
-
- if (!(creds = nmh_get_credentials(host, user)))
- return NOTOK;
- if (command ("USER %s", nmh_cred_get_user(creds))
- != NOTOK) {
- if (command("PASS %s", nmh_cred_get_password(creds))
- != NOTOK) {
- nmh_credentials_free(creds);
- return OK;
- }
- }
- nmh_credentials_free(creds);
}
+
+ if (!(creds = nmh_get_credentials(host, user)))
+ return NOTOK;
+ if (command ("USER %s", nmh_cred_get_user(creds))
+ != NOTOK) {
+ if (command("PASS %s", nmh_cred_get_password(creds))
+ != NOTOK) {
+ nmh_credentials_free(creds);
+ return OK;
+ }
+ }
+ nmh_credentials_free(creds);
}
strncpy (buffer, response, sizeof(buffer));
command ("QUIT");
if (line == NULL)
return NOTOK;
- if (strncmp(line, "+OK", 3) != 0) {
+ if (!HasPrefix(line, "+OK")) {
netsec_err(errstr, "Authentication failed: %s", line);
return NOTOK;
}
if (pop_getline (buffer, sizeof buffer, nsc) != OK)
return NOTOK;
- if (strncmp (buffer, TRM, TRMLEN) == 0) {
+ if (HasPrefix(buffer, TRM)) {
if (buffer[TRMLEN] == 0)
return DONE;
- else
- strncpy (response, buffer + TRMLEN, sizeof(response));
+ strncpy (response, buffer + TRMLEN, sizeof(response));
}
else
strncpy (response, buffer, sizeof(response));