X-Git-Url: https://git.exim.org/users/jgh/exim.git/blobdiff_plain/57233af5f91cdca9a0232a71fab2d12a538cb1a6..b4a2b536841292bde7e8e6dc6ef25d97a11641a3:/src/src/verify.c diff --git a/src/src/verify.c b/src/src/verify.c index 52404575f..a09782bcd 100644 --- a/src/src/verify.c +++ b/src/src/verify.c @@ -722,11 +722,26 @@ else } } + /* Try to AUTH */ + + else done = smtp_auth(responsebuffer, sizeof(responsebuffer), + addr, host, ob, esmtp, &inblock, &outblock) == OK && + + /* Copy AUTH info for logging */ + ( (addr->authenticator = client_authenticator), + (addr->auth_id = client_authenticated_id), + + /* Build a mail-AUTH string (re-using responsebuffer for convenience */ + !smtp_mail_auth_str(responsebuffer, sizeof(responsebuffer), addr, ob) + ) && + + ( (addr->auth_sndr = client_authenticated_sender), + /* Send the MAIL command */ + (smtp_write_command(&outblock, FALSE, "MAIL FROM:<%s>%s\r\n", + from_address, responsebuffer) >= 0) + ) && - else done = - smtp_write_command(&outblock, FALSE, "MAIL FROM:<%s>\r\n", - from_address) >= 0 && smtp_read_response(&inblock, responsebuffer, sizeof(responsebuffer), '2', callout);