Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TLS fails to authorise if the server stopped supporting HELO command #31

Open
qnikst opened this issue Nov 23, 2021 · 0 comments · May be fixed by #32
Open

TLS fails to authorise if the server stopped supporting HELO command #31

qnikst opened this issue Nov 23, 2021 · 0 comments · May be fixed by #32

Comments

@qnikst
Copy link

qnikst commented Nov 23, 2021

Yandex smtp server dropped support of the HELO command in the protocol as a result authorisation fail with log:

HaskellNet-SSL RECV: "220 sas1-37da021029ee.qloud-c.yandex.net SMTP\r"
HaskellNet-SSL SEND: "HELO Alexanders-MacBook-Pro.local\r\n"
HaskellNet-SSL RECV: "502 5.5.1 Unrecognized command\r"
)

If we don't try to send HELO , and sent EHLO immediately everything works fine:

openssl s_client -connect smtp.yandex.ru:465
220 iva8-a4a480c9f089.qloud-c.yandex.net SMTP
EHLO alexander.vershilov.localhost
250-8BITMIME
250-PIPELINING
250-SIZE 42991616
250-STARTTLS
250-AUTH LOGIN PLAIN XOAUTH2
250-DSN
250 ENHANCEDSTATUSCODES

There are two options to fix this issue:

  1. drop support of the old servers that can't work with HELO
  2. do not fail if the server returns 502 on HELO command.

I think that the second option is better and will try to provide a MR soon.

qnikst added a commit to SiriusCourses/HaskellNet-SSL that referenced this issue Nov 23, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant