Fix fetchmail syntax errors for fetchmail 6.6.x on Alpine
fetchmailrc.j2: - Move `ssl` to user section (inline after password); in 6.6.x it is a user-level keyword, not a server-level one — placing it after `proto pop3` caused 'unexpected USERNAME at user' syntax error - Move `interval` before user section (it is server-level) - Replace `smtphost dovecot` + `smtpport 24` with `smtphost dovecot/24`; `smtpport` is not a valid rcfile keyword in 6.6.x — port must be given as host/port in the smtphost value dovecot.conf.j2: - Add `auth_username_format = %Ln` to protocol lmtp block so that the LMTP recipient address `ml@dovecot` (appended by fetchmail) is stripped to just `ml` for userdb lookup
This commit is contained in:
@@ -39,5 +39,10 @@ service lmtp {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Strip domain from LMTP recipient so fetchmail's "ml@dovecot" resolves to user "ml"
|
||||||
|
protocol lmtp {
|
||||||
|
auth_username_format = %Ln
|
||||||
|
}
|
||||||
|
|
||||||
# SSL disabled — Traefik handles TLS
|
# SSL disabled — Traefik handles TLS
|
||||||
ssl = no
|
ssl = no
|
||||||
|
|||||||
@@ -6,15 +6,14 @@ set logfile /dev/stdout
|
|||||||
set daemon 60
|
set daemon 60
|
||||||
|
|
||||||
{% for account in fetchmail_accounts | default([]) %}
|
{% for account in fetchmail_accounts | default([]) %}
|
||||||
poll {{ account.server }} proto {{ account.protocol | default('pop3') }}{% if account.ssl | default(true) %} ssl{% endif %}
|
poll {{ account.server }} proto {{ account.protocol | default('pop3') }}
|
||||||
|
interval {{ account.poll_minutes | default(10) }}
|
||||||
|
user "{{ account.username }}" password "{{ account.password }}"{% if account.ssl | default(true) %} ssl{% endif %}
|
||||||
|
|
||||||
user "{{ account.username }}" password "{{ account.password }}"
|
|
||||||
is {{ account.local_user }} here
|
is {{ account.local_user }} here
|
||||||
smtphost dovecot
|
smtphost dovecot/24
|
||||||
smtpport 24
|
|
||||||
lmtp
|
lmtp
|
||||||
fetchall
|
fetchall
|
||||||
{{ 'keep' if account.keep | default(true) else 'no keep' }}
|
{{ 'keep' if account.keep | default(true) else 'no keep' }}
|
||||||
interval {{ account.poll_minutes | default(10) }}
|
|
||||||
|
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|||||||
Reference in New Issue
Block a user