foxcpp / foxcpp/maddy

SMTP Error code received doesn't match LMTP response

Abierto
#800 0 comentarios 0 reacciones 1 asignado Reclamado por @foxcpp Ver en GitHub
bug
Lenguaje dominante
Go
Estrellas
6.1k
Forks
327
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

# Description of the bug

When using LMTP to offload IMAP delivery to dovecot for instance, the return SMTP error code is not properly propagated

# Steps to reproduce

1. Send a mail to a maddy server that is using LTMP with dovecot as an IMAP backend
2. Let's say the recipient is exceeding its quota with this email
3. Maddy receives back a 552 error code from Dovecot
4. The error code is rewritten to 452 as per: https://github.com/foxcpp/maddy/blob/master/internal/smtpconn/smtpconn.go#L121 (for legacy support of too many RCPT If I got it correctly ?)
5. The sender mail server receives back a 554 (Internal server error) from maddy

# Log files

Here is a log of the different interaction (sender/receiver/dovecot). Both sender and receiver are running a maddy server:

https://hastebin.milkywan.fr/aqupejalus.pl

# Configuration file

Simple LMTP taget:
```
target.lmtp local_mailboxes {
targets unix:///var/run/dovecot2/lmtp-maddy
}
```
Called by a simple message pipeline:
```
msgpipeline local_routing {
destination $(local_domains) {
modify {
replace_rcpt &local_rewrites
}
deliver_to &local_mailboxes
}
default_destination {
reject 550 5.1.1 "User doesn't exist"
}
}
```
For dovecot:
```
service lmtp {
unix_listener lmtp-maddy {
mode = 0600
user = maddy
}
}
```

# Environment information

* maddy version: 0.8.1 linux/amd64 go1.24.6

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.