commit 1b80c26c039bcf5528ac24d736348a8e6f8921b3
Author: Arkadiusz Miśkiewicz <[email protected]>
Date:   Wed Aug 20 14:46:05 2014 +0200

    - rel 3; initialize auth settings earlier if we want custom per protocol 
settings to be working

 dovecot-auth-settings.patch | 69 +++++++++++++++++++++++++++++++++++++++++++++
 dovecot.spec                |  4 ++-
 2 files changed, 72 insertions(+), 1 deletion(-)
---
diff --git a/dovecot.spec b/dovecot.spec
index ba4c4c3..256988a 100644
--- a/dovecot.spec
+++ b/dovecot.spec
@@ -11,7 +11,7 @@ Summary:      IMAP and POP3 server written with security 
primarily in mind
 Summary(pl.UTF-8):     Serwer IMAP i POP3 pisany głównie z myślą o 
bezpieczeństwie
 Name:          dovecot
 Version:       2.2.13
-Release:       2
+Release:       3
 Epoch:         1
 License:       MIT (libraries), LGPL v2.1 (the rest)
 Group:         Networking/Daemons
@@ -23,6 +23,7 @@ Source3:      %{name}.sysconfig
 Source4:       %{name}.tmpfiles
 Patch0:                %{name}-config.patch
 Patch1:                %{name}-rpath.patch
+Patch2:                %{name}-auth-settings.patch
 URL:           http://dovecot.org/
 BuildRequires: autoconf
 BuildRequires: automake
@@ -147,6 +148,7 @@ Współdzielone biblioteki Dovecota.
 %setup -q
 %patch0 -p1
 %patch1 -p1
+%patch2 -p1
 
 %{__sed} -i 's,/usr/lib/dovecot,%{_libdir}/dovecot,g' 
doc/example-config/*.conf doc/example-config/conf.d/*.conf
 
diff --git a/dovecot-auth-settings.patch b/dovecot-auth-settings.patch
new file mode 100644
index 0000000..cdd8361
--- /dev/null
+++ b/dovecot-auth-settings.patch
@@ -0,0 +1,69 @@
+
+# HG changeset patch
+# User Timo Sirainen <[email protected]>
+# Date 1408538127 -7200
+# Node ID c3da5ffaa0f259711fcaf8334b1998a3af77dc62
+# Parent  febedba15c7ebc87a90de5bc935783eb42438126
+auth: protocol-specific username settings weren't used for userdb lookups.
+The username was set before the service-specific settings were looked up, so
+global settings were always used. This affected auth_default_realm,
+auth_username_translation and auth_username_format settings.
+
+diff -r febedba15c7e -r c3da5ffaa0f2 src/auth/auth-master-connection.c
+--- a/src/auth/auth-master-connection.c        Wed Aug 20 14:22:28 2014 +0300
++++ b/src/auth/auth-master-connection.c        Wed Aug 20 14:35:27 2014 +0200
+@@ -167,7 +167,7 @@
+                         const char **error_r)
+ {
+       struct auth_request *auth_request;
+-      const char *const *list, *name, *arg;
++      const char *const *list, *name, *arg, *username;
+       unsigned int id;
+ 
+       /* <id> <userid> [<parameters>] */
+@@ -182,11 +182,7 @@
+       auth_request->id = id;
+       auth_request->master = conn;
+       auth_master_connection_ref(conn);
+-
+-      if (!auth_request_set_username(auth_request, list[1], error_r)) {
+-              *request_r = auth_request;
+-              return 0;
+-      }
++      username = list[1];
+ 
+       for (list += 2; *list != NULL; list++) {
+               arg = strchr(*list, '=');
+@@ -209,6 +205,11 @@
+       }
+ 
+       auth_request_init(auth_request);
++
++      if (!auth_request_set_username(auth_request, username, error_r)) {
++              *request_r = auth_request;
++              return 0;
++      }
+       *request_r = auth_request;
+       return 1;
+ }
+diff -r febedba15c7e -r c3da5ffaa0f2 src/auth/auth-postfix-connection.c
+--- a/src/auth/auth-postfix-connection.c       Wed Aug 20 14:22:28 2014 +0300
++++ b/src/auth/auth-postfix-connection.c       Wed Aug 20 14:35:27 2014 +0200
+@@ -51,13 +51,13 @@
+       auth_request->context = conn;
+       auth_postfix_connection_ref(conn);
+ 
++      (void)auth_request_import_info(auth_request, "service", "postfix");
++      auth_request_init(auth_request);
++
+       if (!auth_request_set_username(auth_request, username, error_r)) {
+               *request_r = auth_request;
+               return FALSE;
+       }
+-      (void)auth_request_import_info(auth_request, "service", "postfix");
+-
+-      auth_request_init(auth_request);
+       *request_r = auth_request;
+       return TRUE;
+ }
+
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/dovecot.git/commitdiff/1b80c26c039bcf5528ac24d736348a8e6f8921b3

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to