int auth_get_no64_data(uschar **aptr, uschar *challenge) { int c; int p = 0; smtp_printf("334 %s\r\n", challenge); while ((c = receive_getc()) != '\n' && c != EOF) { if (p >= big_buffer_size - 1) return BAD64; big_buffer[p++] = c; } if (p > 0 && big_buffer[p-1] == '\r') p--; big_buffer[p] = 0; if (Ustrcmp(big_buffer, "*") == 0) return CANCELLED; *aptr = big_buffer; return OK; }
int auth_get_data(uschar **aptr, uschar *challenge, int challen) { int c; int p = 0; smtp_printf("334 %s\r\n", b64encode(challenge, challen)); while ((c = receive_getc()) != '\n' && c != EOF) { if (p >= big_buffer_size - 1) return BAD64; big_buffer[p++] = c; } if (p > 0 && big_buffer[p-1] == '\r') p--; big_buffer[p] = 0; DEBUG(D_receive) debug_printf("SMTP<< %s\n", big_buffer); if (Ustrcmp(big_buffer, "*") == 0) return CANCELLED; *aptr = big_buffer; return OK; }