mirror of
https://blitiri.com.ar/repos/chasquid
synced 2026-01-08 17:51:57 +00:00
chasquid: Dovecot support (experimental)
This patch adds dovecot support to the chasquid daemon, using the internal dovecot library added in previous patches. Dovecot support is still considered EXPERIMENTAL and may be reverted, or changed in backwards-incompatible ways. The patch also adds the corresponding integration test, which brings up a dovecot server with a custom configuration, and tests chasquid's authentication against it. If dovecot is not installed, the test is skipped.
This commit is contained in:
14
test/t-11-dovecot/config/chasquid.conf
Normal file
14
test/t-11-dovecot/config/chasquid.conf
Normal file
@@ -0,0 +1,14 @@
|
||||
smtp_address: ":1025"
|
||||
submission_address: ":1587"
|
||||
submission_over_tls_address: ":1465"
|
||||
monitoring_address: ":1099"
|
||||
|
||||
mail_delivery_agent_bin: "test-mda"
|
||||
mail_delivery_agent_args: "%to%"
|
||||
|
||||
data_dir: "../.data"
|
||||
mail_log_path: "../.logs/mail_log"
|
||||
|
||||
dovecot_auth: true
|
||||
dovecot_userdb_path: "/tmp/chasquid-dovecot-test/run/auth-userdb"
|
||||
dovecot_client_path: "/tmp/chasquid-dovecot-test/run/auth-client"
|
||||
0
test/t-11-dovecot/config/domains/srv/.keep
Normal file
0
test/t-11-dovecot/config/domains/srv/.keep
Normal file
45
test/t-11-dovecot/config/dovecot.conf.in
Normal file
45
test/t-11-dovecot/config/dovecot.conf.in
Normal file
@@ -0,0 +1,45 @@
|
||||
base_dir = $ROOT/run/
|
||||
log_path = $ROOT/dovecot.log
|
||||
ssl = no
|
||||
|
||||
default_internal_user = $USER
|
||||
default_login_user = $USER
|
||||
|
||||
|
||||
passdb {
|
||||
driver = passwd-file
|
||||
args = $ROOT/passwd
|
||||
}
|
||||
|
||||
userdb {
|
||||
driver = passwd-file
|
||||
args = $ROOT/passwd
|
||||
}
|
||||
|
||||
service auth {
|
||||
unix_listener auth {
|
||||
mode = 0666
|
||||
}
|
||||
}
|
||||
|
||||
# Dovecot refuses to start without protocols, so we need to give it one.
|
||||
protocols = imap
|
||||
|
||||
service imap-login {
|
||||
chroot =
|
||||
inet_listener imap {
|
||||
address = 127.0.0.1
|
||||
port = 0
|
||||
}
|
||||
}
|
||||
|
||||
service anvil {
|
||||
chroot =
|
||||
}
|
||||
|
||||
# Turn on debugging information, to help troubleshooting issues.
|
||||
auth_verbose = yes
|
||||
auth_debug = yes
|
||||
auth_debug_passwords = yes
|
||||
auth_verbose_passwords = yes
|
||||
mail_debug = yes
|
||||
1
test/t-11-dovecot/config/passwd
Normal file
1
test/t-11-dovecot/config/passwd
Normal file
@@ -0,0 +1 @@
|
||||
user@srv:{plain}password:1000:1000::/home/user
|
||||
Reference in New Issue
Block a user