git » chasquid » commit 17b7bbe

dovecot: Remove "experimental" qualifiers

author Alberto Bertogli
2018-06-04 22:45:18 UTC
committer Alberto Bertogli
2018-06-04 22:45:18 UTC
parent cf81fbee74ad992962cfd52698cbee8b2bd6a414

dovecot: Remove "experimental" qualifiers

dovecot support has been around for a release, has decent testing and
seems stable enough to remove the "experimental" qualifier.

README.md +1 -1
docs/dovecot.md +2 -6
docs/man/chasquid.conf.5 +9 -1
docs/man/chasquid.conf.5.pod +9 -0
etc/chasquid/chasquid.conf +13 -0
internal/config/config.pb.go +3 -3
internal/config/config.proto +3 -3

diff --git a/README.md b/README.md
index 20176de..432c011 100644
--- a/README.md
+++ b/README.md
@@ -24,7 +24,7 @@ It's written in [Go](https://golang.org), and distributed under the
     * Monitoring HTTP server, with exported variables and tracing to help
       debugging.
     * Integrated with [Debian] and [Ubuntu].
-    * Supports using [Dovecot] for authentication (experimental).
+    * Supports using [Dovecot] for authentication.
 * Useful
     * Multiple/virtual domains, with per-domain users and aliases.
     * Suffix dropping (`user+something@domain` → `user@domain`).
diff --git a/docs/dovecot.md b/docs/dovecot.md
index af9577c..3f87e2f 100644
--- a/docs/dovecot.md
+++ b/docs/dovecot.md
@@ -1,16 +1,12 @@
 
 # Dovecot integration
 
-As of version 0.04 (2018-02), [chasquid] has _experimental_ integration with
-[dovecot] for authenticating users.
+As of version 0.04 (2018-02), [chasquid] has integration with [dovecot] for
+authenticating users.
 
 This means that chasquid can ask dovecot to authenticate users, instead/in
 addition to having its own per-domain user databases.
 
-It is experimental because it was added recently, and the semantics and
-options are prone to be changed in the future. If you use this feature, please
-let the authors know, at chasquid@googlegroups.com.
-
 
 ## Configuring dovecot
 
diff --git a/docs/man/chasquid.conf.5 b/docs/man/chasquid.conf.5
index b8176dc..b44c415 100644
--- a/docs/man/chasquid.conf.5
+++ b/docs/man/chasquid.conf.5
@@ -129,7 +129,7 @@
 .\" ========================================================================
 .\"
 .IX Title "chasquid.conf 5"
-.TH chasquid.conf 5 "2018-04-03" "" ""
+.TH chasquid.conf 5 "2018-06-04" "" ""
 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
 .\" way too many mistakes in technical documents.
 .if n .ad l
@@ -214,6 +214,14 @@ you set this to \f(CW\*(C`._\*(C'\fR, email to local user \f(CW\*(C`u.se_r\*(C'\
 .IX Item "mail_log_path (string):"
 Path where to write the mail log to.  If \f(CW\*(C`<syslog>\*(C'\fR, log using the
 syslog (at \f(CW\*(C`MAIL|INFO\*(C'\fR priority).  Default: \f(CW\*(C`<syslog>\*(C'\fR.
+.IP "\fBdovecot_auth\fR (bool):" 8
+.IX Item "dovecot_auth (bool):"
+Enable dovecot authentication. If true, users that are not found in chasquid's
+databases will be authenticated via dovecot.  Default: \f(CW\*(C`false\*(C'\fR.
+.Sp
+The path to dovecot's auth sockets is autodetected, but can be manually
+overriden using the \f(CW\*(C`dovecot_userdb_path\*(C'\fR and \f(CW\*(C`dovecot_client_path\*(C'\fR if
+needed.
 .SH "SEE ALSO"
 .IX Header "SEE ALSO"
 \&\fIchasquid\fR\|(1)
diff --git a/docs/man/chasquid.conf.5.pod b/docs/man/chasquid.conf.5.pod
index c2a2b16..3295a53 100644
--- a/docs/man/chasquid.conf.5.pod
+++ b/docs/man/chasquid.conf.5.pod
@@ -95,6 +95,15 @@ C<user>.  Default: C<.>.
 Path where to write the mail log to.  If C<< <syslog> >>, log using the
 syslog (at C<MAIL|INFO> priority).  Default: C<< <syslog> >>.
 
+=item B<dovecot_auth> (bool):
+
+Enable dovecot authentication. If true, users that are not found in chasquid's
+databases will be authenticated via dovecot.  Default: C<false>.
+
+The path to dovecot's auth sockets is autodetected, but can be manually
+overriden using the C<dovecot_userdb_path> and C<dovecot_client_path> if
+needed.
+
 =back
 
 =head1 SEE ALSO
diff --git a/etc/chasquid/chasquid.conf b/etc/chasquid/chasquid.conf
index ff28898..19e1b2d 100644
--- a/etc/chasquid/chasquid.conf
+++ b/etc/chasquid/chasquid.conf
@@ -71,3 +71,16 @@
 # If "<syslog>", log using the syslog (at MAIL|INFO priority).
 # Default: <syslog>
 #mail_log_path: "<syslog>"
+
+# Enable dovecot authentication.
+# If set to true, users not found in chasquid's user databases will be
+# authenticated via dovecot.
+# Default: false
+#dovecot_auth: false
+
+# Dovecot userdb and client socket paths.
+# Most of the time this is not needed, as chasquid will auto-detect their
+# location by searching standard paths.
+# Default: "" (autodetect)
+#dovecot_userdb_path: ""
+#dovecot_client_path: ""
diff --git a/internal/config/config.pb.go b/internal/config/config.pb.go
index 6f6b241..e1c9082 100644
--- a/internal/config/config.pb.go
+++ b/internal/config/config.pb.go
@@ -90,15 +90,15 @@ type Config struct {
 	// If "<syslog>", log using the syslog (at MAIL|INFO priority).
 	// Default: <syslog>
 	MailLogPath string `protobuf:"bytes,12,opt,name=mail_log_path,json=mailLogPath" json:"mail_log_path,omitempty"`
-	// EXPERIMENTAL - Enable dovecot authentication.
+	// Enable dovecot authentication.
 	// Domains that don't have an user database will be authenticated via
 	// dovecot.
 	DovecotAuth bool `protobuf:"varint,13,opt,name=dovecot_auth,json=dovecotAuth" json:"dovecot_auth,omitempty"`
-	// EXPERIMENTAL - Dovecot userdb path. If dovecot_auth is set and this
+	// Dovecot userdb path. If dovecot_auth is set and this
 	// is not, we will try to autodetect it.
 	// Example: /var/run/dovecot/auth-userdb
 	DovecotUserdbPath string `protobuf:"bytes,14,opt,name=dovecot_userdb_path,json=dovecotUserdbPath" json:"dovecot_userdb_path,omitempty"`
-	// EXPERIMENTAL - Dovecot client path. If dovecot_auth is set and this
+	// Dovecot client path. If dovecot_auth is set and this
 	// is not, we will try to autodetect it.
 	// Example: /var/run/dovecot/auth-client
 	DovecotClientPath string `protobuf:"bytes,15,opt,name=dovecot_client_path,json=dovecotClientPath" json:"dovecot_client_path,omitempty"`
diff --git a/internal/config/config.proto b/internal/config/config.proto
index e23427a..2d0f280 100644
--- a/internal/config/config.proto
+++ b/internal/config/config.proto
@@ -75,17 +75,17 @@ message Config {
 	// Default: <syslog>
 	string mail_log_path = 12;
 
-	// EXPERIMENTAL - Enable dovecot authentication.
+	// Enable dovecot authentication.
 	// Domains that don't have an user database will be authenticated via
 	// dovecot.
 	bool dovecot_auth = 13;
 
-	// EXPERIMENTAL - Dovecot userdb path. If dovecot_auth is set and this
+	// Dovecot userdb path. If dovecot_auth is set and this
 	// is not, we will try to autodetect it.
 	// Example: /var/run/dovecot/auth-userdb
 	string dovecot_userdb_path = 14;
 
-	// EXPERIMENTAL - Dovecot client path. If dovecot_auth is set and this
+	// Dovecot client path. If dovecot_auth is set and this
 	// is not, we will try to autodetect it.
 	// Example: /var/run/dovecot/auth-client
 	string dovecot_client_path = 15;