diff --git a/lib/smtp.c b/lib/smtp.c index fd8d71226270025fde26cdf23052aeb54d006015..dd08575beb3adc5a67721d944006e024e49a4fd4 100644 --- a/lib/smtp.c +++ b/lib/smtp.c @@ -224,7 +224,7 @@ static int smtp_endofresp(struct pingpong *pp, int *resp) *resp = curlx_sltosi(strtol(line, NULL, 10)); /* Are we processing EHLO command data? */ - if(smtpc->state == SMTP_EHLO && (!result || (result && *resp == 250))) { + if(smtpc->state == SMTP_EHLO && (!result || (result && *resp/100 == 2))) { line += 4; len -= 4; diff --git a/tests/data/test805 b/tests/data/test805 index 4595221c9e0943cfc1a2bcfac376dfdf3b5cf9a9..d124e40e71e0a465bf326bd69c208ab1aaa2d212 100644 --- a/tests/data/test805 +++ b/tests/data/test805 @@ -12,7 +12,7 @@ RFC4954 # Server-side <reply> <servercmd> -REPLY EHLO 220 AUTH PLAIN +REPLY EHLO 250 AUTH PLAIN REPLY AUTH 235 Authenticated </servercmd> </reply> diff --git a/tests/data/test806 b/tests/data/test806 index b71ac5cceef77a44dcfcbd2ce0f536086867abed..9d1c9881496523698dc07272cf21ab38d994d435 100644 --- a/tests/data/test806 +++ b/tests/data/test806 @@ -11,7 +11,7 @@ RFC4954 # Server-side <reply> <servercmd> -REPLY EHLO 220 AUTH LOGIN +REPLY EHLO 250 AUTH LOGIN REPLY AUTH 334 UGFzc3dvcmQ6 REPLY MTIzNA== 235 Authenticated </servercmd> diff --git a/tests/data/test807 b/tests/data/test807 index d171ffabc78cc20c5069644ea343a5cbb0d010e4..4165a1553e0612591fdc2add75f6df95668e1e3e 100644 --- a/tests/data/test807 +++ b/tests/data/test807 @@ -12,7 +12,7 @@ RFC4954 # Server-side <reply> <servercmd> -REPLY EHLO 220 AUTH CRAM-MD5 +REPLY EHLO 250 AUTH CRAM-MD5 REPLY AUTH 334 PDE4OTYuNjk3MTcwOTUyQHBvc3RvZmZpY2UucmVzdG9uLm1jaS5uZXQ+ REPLY dGltIGI5MTNhNjAyYzdlZGE3YTQ5NWI0ZTZlNzMzNGQzODkw 235 Authenticated </servercmd>