diff options
| author | manuel <manuel@mausz.at> | 2026-01-19 22:40:44 +0100 |
|---|---|---|
| committer | manuel <manuel@mausz.at> | 2026-01-19 22:40:44 +0100 |
| commit | 859afd6c154625e18be4b2f8123e40cd9e0cce05 (patch) | |
| tree | c963f65cdba725be2e3627d4b59ebabc983fd9d4 /preline.c | |
| parent | 0cd96fce7e5477aebed341e996fcc903f0e6a835 (diff) | |
| download | qmail-859afd6c154625e18be4b2f8123e40cd9e0cce05.tar.gz qmail-859afd6c154625e18be4b2f8123e40cd9e0cce05.tar.bz2 qmail-859afd6c154625e18be4b2f8123e40cd9e0cce05.zip | |
this was actually way harder than assumed. turns out we need to issue
HELO after EHLO, in case EHLO is not supported. however qmail overwrites
the old reply as soon as we issue the next command. furthermore some
mail servers drop the connection after issueing a 5xx reply. we only
notice this after reading from the socket which usually happens on the
next smtp commmand.
so we need to run HELO to determine if the connection has been
dropped, however running HELO truncates the EHLO reply we want to show
in the bounce message. and we have TLS-required as possible variants.
so after EHLO fails..
* in TLS-required: show EHLO reponse in case EHLO code is non-success
* in non-TLS: copy EHLO response, issue HELO, show EHLO response in case
connection dies, otherwise show HELO response
Diffstat (limited to 'preline.c')
0 files changed, 0 insertions, 0 deletions
