Projects
Kolab:3.4
cyrus-imapd
Log In
Username
Password
We truncated the diff of some files because they were too big. If you want to see the full diff for every file,
click here
.
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 8
View file
cyrus-imapd.spec
Changed
@@ -64,7 +64,7 @@ # Patches of which the status or upstream is unknown Patch903: %{name}-2.4.15-903-normalize-authorization-id.patch -Patch905: cyrus-imapd-2.4.10-bob-ptloader-ldap.patch +Patch905: cyrus-imapd-2.4.10-ptloader-ldap_user_attribute.patch BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
View file
cyrus-imapd-2.4.10-bob-ptloader-ldap.patch
Deleted
@@ -1,1230 +0,0 @@ -diff --git a/lib/imapoptions b/lib/imapoptions -index 464de37..98e0341 100644 ---- a/lib/imapoptions -+++ b/lib/imapoptions -@@ -483,6 +483,9 @@ Blank lines and lines beginning with ``#'' are ignored. - { "ldap_mech", NULL, STRING } - /* SASL mechanism for LDAP authentication */ - -+{ "ldap_user_attribute", NULL, STRING } -+/* Specify LDAP attribute to use as canonical user id */ -+ - { "ldap_member_attribute", NULL, STRING } - /* See ldap_member_method. */ - -diff --git a/ptclient/ldap.c b/ptclient/ldap.c -index 7bd8664..b3507d1 100644 ---- a/ptclient/ldap.c -+++ b/ptclient/ldap.c -@@ -91,7 +91,7 @@ - * This may not be restrictive enough. - * Here are the reasons for the restrictions: - * -- * & forbidden because of MUTF-7. (This could be fixed.) -+ * & forbidden because of MUTF-7. (This could be fixed.) - * : forbidden because it's special in /etc/passwd - * / forbidden because it can't be used in a mailbox name - * * % forbidden because they're IMAP magic in the LIST/LSUB commands -@@ -158,6 +158,7 @@ typedef struct _ptsm { - const char *tls_cert; - const char *tls_key; - int member_method; -+ const char *user_attribute; - const char *member_attribute; - const char *member_filter; - const char *member_base; -@@ -182,41 +183,41 @@ typedef struct _ptsm { - static t_ptsm *ptsm = NULL; - - static int ptsmodule_interact( -- LDAP *ld, -- unsigned flags __attribute__((unused)), -- void *def, -- void *inter) -+ LDAP *ld, -+ unsigned flags __attribute__((unused)), -+ void *def, -+ void *inter) - { -- sasl_interact_t *in = inter; -- const char *p; -- t_ptsm *ptsmdef = def; -- -- for (;in->id != SASL_CB_LIST_END;in++) { -- p = NULL; -- switch(in->id) { -- case SASL_CB_AUTHNAME: -- if (ISSET(ptsmdef->id)) -- p = ptsmdef->id; -- break; -- case SASL_CB_USER: -- if (ISSET(ptsmdef->authz)) -- p = ptsmdef->authz; -- break; -- case SASL_CB_GETREALM: -- if (ISSET(ptsmdef->realm)) -- p = ptsmdef->realm; -- break; -- case SASL_CB_PASS: -- if (ISSET(ptsmdef->password)) -- p = ptsmdef->password; -- break; -- } -- -- in->result = p ? p : ""; -- in->len = strlen(in->result); -- } -- -- return LDAP_SUCCESS; -+ sasl_interact_t *in = inter; -+ const char *p; -+ t_ptsm *ptsmdef = def; -+ -+ for (;in->id != SASL_CB_LIST_END;in++) { -+ p = NULL; -+ switch(in->id) { -+ case SASL_CB_AUTHNAME: -+ if (ISSET(ptsmdef->id)) -+ p = ptsmdef->id; -+ break; -+ case SASL_CB_USER: -+ if (ISSET(ptsmdef->authz)) -+ p = ptsmdef->authz; -+ break; -+ case SASL_CB_GETREALM: -+ if (ISSET(ptsmdef->realm)) -+ p = ptsmdef->realm; -+ break; -+ case SASL_CB_PASS: -+ if (ISSET(ptsmdef->password)) -+ p = ptsmdef->password; -+ break; -+ } -+ -+ in->result = p ? p : ""; -+ in->len = strlen(in->result); -+ } -+ -+ return LDAP_SUCCESS; - } - - /* -@@ -259,11 +260,11 @@ static char *ptsmodule_canonifyid(const char *identifier, size_t len) - switch (allowedchars[*(unsigned char*) p]) { - case 0: - return NULL; -- -+ - case 2: - sawalpha = 1; - /* FALL THROUGH */ -- -+ - default: - ; - } -@@ -275,149 +276,149 @@ static char *ptsmodule_canonifyid(const char *identifier, size_t len) - } - - --static int ptsmodule_connect(void) -+static int ptsmodule_connect(void) - { -- int rc = 0; -- -- if (ptsm == NULL) // Sanity Check -- return PTSM_FAIL; -- -- if (ptsm->ld != NULL) -- return PTSM_OK; -- -- if (ISSET(ptsm->tls_cacert_file)) { -- rc = ldap_set_option (NULL, LDAP_OPT_X_TLS_CACERTFILE, ptsm->tls_cacert_file); -- if (rc != LDAP_SUCCESS) { -- syslog (LOG_WARNING, "Unable to set LDAP_OPT_X_TLS_CACERTFILE (%s).", ldap_err2string (rc)); -- } -- } -- -- if (ISSET(ptsm->tls_cacert_dir)) { -- rc = ldap_set_option (NULL, LDAP_OPT_X_TLS_CACERTDIR, ptsm->tls_cacert_dir); -- if (rc != LDAP_SUCCESS) { -- syslog (LOG_WARNING, "Unable to set LDAP_OPT_X_TLS_CACERTDIR (%s).", ldap_err2string (rc)); -- } -- } -- -- if (ptsm->tls_check_peer != 0) { -- rc = ldap_set_option(NULL, LDAP_OPT_X_TLS_REQUIRE_CERT, &ptsm->tls_check_peer); -- if (rc != LDAP_SUCCESS) { -- syslog (LOG_WARNING, "Unable to set LDAP_OPT_X_TLS_REQUIRE_CERT (%s).", ldap_err2string (rc)); -- } -- } -- -- if (ISSET(ptsm->tls_ciphers)) { -- /* set cipher suite, certificate and private key: */ -- rc = ldap_set_option(NULL, LDAP_OPT_X_TLS_CIPHER_SUITE, ptsm->tls_ciphers); -- if (rc != LDAP_SUCCESS) { -- syslog (LOG_WARNING, "Unable to set LDAP_OPT_X_TLS_CIPHER_SUITE (%s).", ldap_err2string (rc)); -- } -- } -- -- if (ISSET(ptsm->tls_cert)) { -- rc = ldap_set_option(NULL, LDAP_OPT_X_TLS_CERTFILE, ptsm->tls_cert); -- if (rc != LDAP_SUCCESS) { -- syslog (LOG_WARNING, "Unable to set LDAP_OPT_X_TLS_CERTFILE (%s).", ldap_err2string (rc)); -- } -- } -- -- if (ISSET(ptsm->tls_key)) { -- rc = ldap_set_option(NULL, LDAP_OPT_X_TLS_KEYFILE, ptsm->tls_key); -- if (rc != LDAP_SUCCESS) { -- syslog (LOG_WARNING, "Unable to set LDAP_OPT_X_TLS_KEYFILE (%s).", ldap_err2string (rc)); -- } -- } -- -- rc = ldap_initialize(&ptsm->ld, ptsm->uri); -- if (rc != LDAP_SUCCESS) { -- syslog(LOG_ERR, "ldap_initialize failed (%s)", ptsm->uri); -- return PTSM_FAIL; -- } -- -- rc = ldap_set_option(ptsm->ld, LDAP_OPT_PROTOCOL_VERSION, &(ptsm->version)); -- if (rc != LDAP_OPT_SUCCESS) { -- -- if (ptsm->sasl || -- ptsm->start_tls) { -- syslog(LOG_ERR, "Failed to set LDAP_OPT_PROTOCOL_VERSION %d, required for ldap_start_tls and ldap_sasl.", ptsm->version); -- ldap_unbind(ptsm->ld); -+ int rc = 0; -+ -+ if (ptsm == NULL) // Sanity Check
View file
cyrus-imapd-2.4.10-ptloader-ldap_user_attribute.patch
Added
@@ -0,0 +1,1230 @@ +diff --git a/lib/imapoptions b/lib/imapoptions +index 464de37..98e0341 100644 +--- a/lib/imapoptions ++++ b/lib/imapoptions +@@ -483,6 +483,9 @@ Blank lines and lines beginning with ``#'' are ignored. + { "ldap_mech", NULL, STRING } + /* SASL mechanism for LDAP authentication */ + ++{ "ldap_user_attribute", NULL, STRING } ++/* Specify LDAP attribute to use as canonical user id */ ++ + { "ldap_member_attribute", NULL, STRING } + /* See ldap_member_method. */ + +diff --git a/ptclient/ldap.c b/ptclient/ldap.c +index 7bd8664..b3507d1 100644 +--- a/ptclient/ldap.c ++++ b/ptclient/ldap.c +@@ -91,7 +91,7 @@ + * This may not be restrictive enough. + * Here are the reasons for the restrictions: + * +- * & forbidden because of MUTF-7. (This could be fixed.) ++ * & forbidden because of MUTF-7. (This could be fixed.) + * : forbidden because it's special in /etc/passwd + * / forbidden because it can't be used in a mailbox name + * * % forbidden because they're IMAP magic in the LIST/LSUB commands +@@ -158,6 +158,7 @@ typedef struct _ptsm { + const char *tls_cert; + const char *tls_key; + int member_method; ++ const char *user_attribute; + const char *member_attribute; + const char *member_filter; + const char *member_base; +@@ -182,41 +183,41 @@ typedef struct _ptsm { + static t_ptsm *ptsm = NULL; + + static int ptsmodule_interact( +- LDAP *ld, +- unsigned flags __attribute__((unused)), +- void *def, +- void *inter) ++ LDAP *ld, ++ unsigned flags __attribute__((unused)), ++ void *def, ++ void *inter) + { +- sasl_interact_t *in = inter; +- const char *p; +- t_ptsm *ptsmdef = def; +- +- for (;in->id != SASL_CB_LIST_END;in++) { +- p = NULL; +- switch(in->id) { +- case SASL_CB_AUTHNAME: +- if (ISSET(ptsmdef->id)) +- p = ptsmdef->id; +- break; +- case SASL_CB_USER: +- if (ISSET(ptsmdef->authz)) +- p = ptsmdef->authz; +- break; +- case SASL_CB_GETREALM: +- if (ISSET(ptsmdef->realm)) +- p = ptsmdef->realm; +- break; +- case SASL_CB_PASS: +- if (ISSET(ptsmdef->password)) +- p = ptsmdef->password; +- break; +- } +- +- in->result = p ? p : ""; +- in->len = strlen(in->result); +- } +- +- return LDAP_SUCCESS; ++ sasl_interact_t *in = inter; ++ const char *p; ++ t_ptsm *ptsmdef = def; ++ ++ for (;in->id != SASL_CB_LIST_END;in++) { ++ p = NULL; ++ switch(in->id) { ++ case SASL_CB_AUTHNAME: ++ if (ISSET(ptsmdef->id)) ++ p = ptsmdef->id; ++ break; ++ case SASL_CB_USER: ++ if (ISSET(ptsmdef->authz)) ++ p = ptsmdef->authz; ++ break; ++ case SASL_CB_GETREALM: ++ if (ISSET(ptsmdef->realm)) ++ p = ptsmdef->realm; ++ break; ++ case SASL_CB_PASS: ++ if (ISSET(ptsmdef->password)) ++ p = ptsmdef->password; ++ break; ++ } ++ ++ in->result = p ? p : ""; ++ in->len = strlen(in->result); ++ } ++ ++ return LDAP_SUCCESS; + } + + /* +@@ -259,11 +260,11 @@ static char *ptsmodule_canonifyid(const char *identifier, size_t len) + switch (allowedchars[*(unsigned char*) p]) { + case 0: + return NULL; +- ++ + case 2: + sawalpha = 1; + /* FALL THROUGH */ +- ++ + default: + ; + } +@@ -275,149 +276,149 @@ static char *ptsmodule_canonifyid(const char *identifier, size_t len) + } + + +-static int ptsmodule_connect(void) ++static int ptsmodule_connect(void) + { +- int rc = 0; +- +- if (ptsm == NULL) // Sanity Check +- return PTSM_FAIL; +- +- if (ptsm->ld != NULL) +- return PTSM_OK; +- +- if (ISSET(ptsm->tls_cacert_file)) { +- rc = ldap_set_option (NULL, LDAP_OPT_X_TLS_CACERTFILE, ptsm->tls_cacert_file); +- if (rc != LDAP_SUCCESS) { +- syslog (LOG_WARNING, "Unable to set LDAP_OPT_X_TLS_CACERTFILE (%s).", ldap_err2string (rc)); +- } +- } +- +- if (ISSET(ptsm->tls_cacert_dir)) { +- rc = ldap_set_option (NULL, LDAP_OPT_X_TLS_CACERTDIR, ptsm->tls_cacert_dir); +- if (rc != LDAP_SUCCESS) { +- syslog (LOG_WARNING, "Unable to set LDAP_OPT_X_TLS_CACERTDIR (%s).", ldap_err2string (rc)); +- } +- } +- +- if (ptsm->tls_check_peer != 0) { +- rc = ldap_set_option(NULL, LDAP_OPT_X_TLS_REQUIRE_CERT, &ptsm->tls_check_peer); +- if (rc != LDAP_SUCCESS) { +- syslog (LOG_WARNING, "Unable to set LDAP_OPT_X_TLS_REQUIRE_CERT (%s).", ldap_err2string (rc)); +- } +- } +- +- if (ISSET(ptsm->tls_ciphers)) { +- /* set cipher suite, certificate and private key: */ +- rc = ldap_set_option(NULL, LDAP_OPT_X_TLS_CIPHER_SUITE, ptsm->tls_ciphers); +- if (rc != LDAP_SUCCESS) { +- syslog (LOG_WARNING, "Unable to set LDAP_OPT_X_TLS_CIPHER_SUITE (%s).", ldap_err2string (rc)); +- } +- } +- +- if (ISSET(ptsm->tls_cert)) { +- rc = ldap_set_option(NULL, LDAP_OPT_X_TLS_CERTFILE, ptsm->tls_cert); +- if (rc != LDAP_SUCCESS) { +- syslog (LOG_WARNING, "Unable to set LDAP_OPT_X_TLS_CERTFILE (%s).", ldap_err2string (rc)); +- } +- } +- +- if (ISSET(ptsm->tls_key)) { +- rc = ldap_set_option(NULL, LDAP_OPT_X_TLS_KEYFILE, ptsm->tls_key); +- if (rc != LDAP_SUCCESS) { +- syslog (LOG_WARNING, "Unable to set LDAP_OPT_X_TLS_KEYFILE (%s).", ldap_err2string (rc)); +- } +- } +- +- rc = ldap_initialize(&ptsm->ld, ptsm->uri); +- if (rc != LDAP_SUCCESS) { +- syslog(LOG_ERR, "ldap_initialize failed (%s)", ptsm->uri); +- return PTSM_FAIL; +- } +- +- rc = ldap_set_option(ptsm->ld, LDAP_OPT_PROTOCOL_VERSION, &(ptsm->version)); +- if (rc != LDAP_OPT_SUCCESS) { +- +- if (ptsm->sasl || +- ptsm->start_tls) { +- syslog(LOG_ERR, "Failed to set LDAP_OPT_PROTOCOL_VERSION %d, required for ldap_start_tls and ldap_sasl.", ptsm->version); +- ldap_unbind(ptsm->ld); ++ int rc = 0; ++ ++ if (ptsm == NULL) // Sanity Check
View file
debian.series
Added
@@ -0,0 +1,3 @@ +cyrus-imapd-2.4.10-ptloader-ldap_user_attribute.patch -p1 +cyrus-imapd-2.4.15-903-normalize-authorization-id.patch -p1 +
View file
debian.tar.gz/patches
Deleted
-(directory)
View file
debian.tar.gz/patches/cyrus-imapd-2.4.10-ptloader-ldap_user_attribute.patch
Deleted
@@ -1,1230 +0,0 @@ -diff --git a/lib/imapoptions b/lib/imapoptions -index 464de37..98e0341 100644 ---- a/lib/imapoptions -+++ b/lib/imapoptions -@@ -483,6 +483,9 @@ Blank lines and lines beginning with ``#'' are ignored. - { "ldap_mech", NULL, STRING } - /* SASL mechanism for LDAP authentication */ - -+{ "ldap_user_attribute", NULL, STRING } -+/* Specify LDAP attribute to use as canonical user id */ -+ - { "ldap_member_attribute", NULL, STRING } - /* See ldap_member_method. */ - -diff --git a/ptclient/ldap.c b/ptclient/ldap.c -index 7bd8664..b3507d1 100644 ---- a/ptclient/ldap.c -+++ b/ptclient/ldap.c -@@ -91,7 +91,7 @@ - * This may not be restrictive enough. - * Here are the reasons for the restrictions: - * -- * & forbidden because of MUTF-7. (This could be fixed.) -+ * & forbidden because of MUTF-7. (This could be fixed.) - * : forbidden because it's special in /etc/passwd - * / forbidden because it can't be used in a mailbox name - * * % forbidden because they're IMAP magic in the LIST/LSUB commands -@@ -158,6 +158,7 @@ typedef struct _ptsm { - const char *tls_cert; - const char *tls_key; - int member_method; -+ const char *user_attribute; - const char *member_attribute; - const char *member_filter; - const char *member_base; -@@ -182,41 +183,41 @@ typedef struct _ptsm { - static t_ptsm *ptsm = NULL; - - static int ptsmodule_interact( -- LDAP *ld, -- unsigned flags __attribute__((unused)), -- void *def, -- void *inter) -+ LDAP *ld, -+ unsigned flags __attribute__((unused)), -+ void *def, -+ void *inter) - { -- sasl_interact_t *in = inter; -- const char *p; -- t_ptsm *ptsmdef = def; -- -- for (;in->id != SASL_CB_LIST_END;in++) { -- p = NULL; -- switch(in->id) { -- case SASL_CB_AUTHNAME: -- if (ISSET(ptsmdef->id)) -- p = ptsmdef->id; -- break; -- case SASL_CB_USER: -- if (ISSET(ptsmdef->authz)) -- p = ptsmdef->authz; -- break; -- case SASL_CB_GETREALM: -- if (ISSET(ptsmdef->realm)) -- p = ptsmdef->realm; -- break; -- case SASL_CB_PASS: -- if (ISSET(ptsmdef->password)) -- p = ptsmdef->password; -- break; -- } -- -- in->result = p ? p : ""; -- in->len = strlen(in->result); -- } -- -- return LDAP_SUCCESS; -+ sasl_interact_t *in = inter; -+ const char *p; -+ t_ptsm *ptsmdef = def; -+ -+ for (;in->id != SASL_CB_LIST_END;in++) { -+ p = NULL; -+ switch(in->id) { -+ case SASL_CB_AUTHNAME: -+ if (ISSET(ptsmdef->id)) -+ p = ptsmdef->id; -+ break; -+ case SASL_CB_USER: -+ if (ISSET(ptsmdef->authz)) -+ p = ptsmdef->authz; -+ break; -+ case SASL_CB_GETREALM: -+ if (ISSET(ptsmdef->realm)) -+ p = ptsmdef->realm; -+ break; -+ case SASL_CB_PASS: -+ if (ISSET(ptsmdef->password)) -+ p = ptsmdef->password; -+ break; -+ } -+ -+ in->result = p ? p : ""; -+ in->len = strlen(in->result); -+ } -+ -+ return LDAP_SUCCESS; - } - - /* -@@ -259,11 +260,11 @@ static char *ptsmodule_canonifyid(const char *identifier, size_t len) - switch (allowedchars[*(unsigned char*) p]) { - case 0: - return NULL; -- -+ - case 2: - sawalpha = 1; - /* FALL THROUGH */ -- -+ - default: - ; - } -@@ -275,149 +276,149 @@ static char *ptsmodule_canonifyid(const char *identifier, size_t len) - } - - --static int ptsmodule_connect(void) -+static int ptsmodule_connect(void) - { -- int rc = 0; -- -- if (ptsm == NULL) // Sanity Check -- return PTSM_FAIL; -- -- if (ptsm->ld != NULL) -- return PTSM_OK; -- -- if (ISSET(ptsm->tls_cacert_file)) { -- rc = ldap_set_option (NULL, LDAP_OPT_X_TLS_CACERTFILE, ptsm->tls_cacert_file); -- if (rc != LDAP_SUCCESS) { -- syslog (LOG_WARNING, "Unable to set LDAP_OPT_X_TLS_CACERTFILE (%s).", ldap_err2string (rc)); -- } -- } -- -- if (ISSET(ptsm->tls_cacert_dir)) { -- rc = ldap_set_option (NULL, LDAP_OPT_X_TLS_CACERTDIR, ptsm->tls_cacert_dir); -- if (rc != LDAP_SUCCESS) { -- syslog (LOG_WARNING, "Unable to set LDAP_OPT_X_TLS_CACERTDIR (%s).", ldap_err2string (rc)); -- } -- } -- -- if (ptsm->tls_check_peer != 0) { -- rc = ldap_set_option(NULL, LDAP_OPT_X_TLS_REQUIRE_CERT, &ptsm->tls_check_peer); -- if (rc != LDAP_SUCCESS) { -- syslog (LOG_WARNING, "Unable to set LDAP_OPT_X_TLS_REQUIRE_CERT (%s).", ldap_err2string (rc)); -- } -- } -- -- if (ISSET(ptsm->tls_ciphers)) { -- /* set cipher suite, certificate and private key: */ -- rc = ldap_set_option(NULL, LDAP_OPT_X_TLS_CIPHER_SUITE, ptsm->tls_ciphers); -- if (rc != LDAP_SUCCESS) { -- syslog (LOG_WARNING, "Unable to set LDAP_OPT_X_TLS_CIPHER_SUITE (%s).", ldap_err2string (rc)); -- } -- } -- -- if (ISSET(ptsm->tls_cert)) { -- rc = ldap_set_option(NULL, LDAP_OPT_X_TLS_CERTFILE, ptsm->tls_cert); -- if (rc != LDAP_SUCCESS) { -- syslog (LOG_WARNING, "Unable to set LDAP_OPT_X_TLS_CERTFILE (%s).", ldap_err2string (rc)); -- } -- } -- -- if (ISSET(ptsm->tls_key)) { -- rc = ldap_set_option(NULL, LDAP_OPT_X_TLS_KEYFILE, ptsm->tls_key); -- if (rc != LDAP_SUCCESS) { -- syslog (LOG_WARNING, "Unable to set LDAP_OPT_X_TLS_KEYFILE (%s).", ldap_err2string (rc)); -- } -- } -- -- rc = ldap_initialize(&ptsm->ld, ptsm->uri); -- if (rc != LDAP_SUCCESS) { -- syslog(LOG_ERR, "ldap_initialize failed (%s)", ptsm->uri); -- return PTSM_FAIL; -- } -- -- rc = ldap_set_option(ptsm->ld, LDAP_OPT_PROTOCOL_VERSION, &(ptsm->version)); -- if (rc != LDAP_OPT_SUCCESS) { -- -- if (ptsm->sasl || -- ptsm->start_tls) { -- syslog(LOG_ERR, "Failed to set LDAP_OPT_PROTOCOL_VERSION %d, required for ldap_start_tls and ldap_sasl.", ptsm->version); -- ldap_unbind(ptsm->ld); -+ int rc = 0; -+ -+ if (ptsm == NULL) // Sanity Check
View file
debian.tar.gz/patches/cyrus-imapd-2.4.16-db51.patch
Deleted
@@ -1,32 +0,0 @@ ---- a/lib/cyrusdb_berkeley.c -+++ b/lib/cyrusdb_berkeley.c -@@ -281,17 +281,11 @@ - - assert(dbinit); - --#if !(DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1) -- do { --#endif - #if (DB_VERSION_MAJOR > 3) || ((DB_VERSION_MAJOR == 3) && (DB_VERSION_MINOR > 0)) - r = txn_checkpoint(dbenv, 0, 0, 0); - #else - r = txn_checkpoint(dbenv, 0, 0); - #endif --#if !(DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1) -- } while (r == DB_INCOMPLETE); /* Never returned by BDB 4.1 */ --#endif - if (r) { - syslog(LOG_ERR, "DBERROR: couldn't checkpoint: %s", - db_strerror(r)); -@@ -412,11 +406,7 @@ - /* xxx set comparator! */ - if (flags & CYRUSDB_MBOXSORT) db->set_bt_compare(db, mbox_compar); - --#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1 - r = (db->open)(db, NULL, fname, NULL, type, dbflags | DB_AUTO_COMMIT, 0664); --#else -- r = (db->open)(db, fname, NULL, type, dbflags, 0664); --#endif - - if (r != 0) { - int level = (flags & CYRUSDB_CREATE) ? LOG_ERR : LOG_DEBUG;
View file
debian.tar.gz/patches/cyrus-imapd-2.4.2-005-disable-rpath.patch
Deleted
@@ -1,36 +0,0 @@ -#! /bin/sh /usr/share/dpatch/dpatch-run -## 06-disable_runpath.dpatch by Sven Mueller <debian@incase.de> -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: disable runpath - -@DPATCH@ -Index: cyrus-imapd/cmulocal/cyrus.m4 -=================================================================== ---- cyrus-imapd.orig/cmulocal/cyrus.m4 2010-10-20 15:47:06.000000000 +0200 -+++ cyrus-imapd/cmulocal/cyrus.m4 2010-10-20 16:42:27.000000000 +0200 -@@ -3,6 +3,7 @@ - dnl $Id: cyrus.m4,v 1.6 2010/01/06 17:01:27 murch Exp $ - dnl tjs@andrew.cmu.edu 6-may-1998 - dnl -+dnl Debian fix (hmh@debian.org): We don't want runpath set in Debian - - dnl It would be good if ANDREW_ADD_LIBPATH could detect if something was - dnl already there and not redundantly add it if it is. -@@ -32,14 +33,5 @@ - dnl runpath initialization - AC_DEFUN([CMU_GUESS_RUNPATH_SWITCH], [ - # CMU GUESS RUNPATH SWITCH -- AC_CACHE_CHECK(for runpath switch, andrew_cv_runpath_switch, [ -- # first, try -R -- SAVE_LDFLAGS="${LDFLAGS}" -- LDFLAGS="-R /usr/lib" -- AC_TRY_LINK([],[],[andrew_cv_runpath_switch="-R"], [ -- LDFLAGS="-Wl,-rpath,/usr/lib" -- AC_TRY_LINK([],[],[andrew_cv_runpath_switch="-Wl,-rpath,"], -- [andrew_cv_runpath_switch="none"]) -- ]) -- LDFLAGS="${SAVE_LDFLAGS}" -- ])]) -+ andrew_cv_runpath_switch="none" -+])
View file
debian.tar.gz/patches/cyrus-imapd-2.4.2-902-accept-invalid-from-header.patch
Deleted
@@ -1,60 +0,0 @@ -From 8ab849423b250c0572e1786a64fcb3924a6b747e Mon Sep 17 00:00:00 2001 -From: Jeroen van Meeuwen (Kolab Systems) <vanmeeuwen@kolabsys.com> -Date: Tue, 3 Aug 2010 10:13:36 +0200 -Subject: [PATCH 08/13] Accept invalid From: header in email - -This stops Cyrus from ruining everything all by itself; Your MTA is -the point where the validity of headers should be checked. For more -information on such and so forth, see (amongst others): - - http://www.postfix.org/header_checks.5.html - -If one chooses to allow slightly invalid headers in the MTA, then -Cyrus should not raise problems. ---- - imap/message.c | 18 ++++++++++++++++-- - 1 files changed, 16 insertions(+), 2 deletions(-) - -Index: cyrus-imapd/imap/message.c -=================================================================== ---- cyrus-imapd.orig/imap/message.c 2010-10-20 16:04:15.000000000 +0200 -+++ cyrus-imapd/imap/message.c 2010-10-20 16:06:58.000000000 +0200 -@@ -246,6 +246,8 @@ - int reject8bit = config_getswitch(IMAPOPT_REJECT8BIT); - int munge8bit = config_getswitch(IMAPOPT_MUNGE8BIT); - int inheader = 1, blankline = 1; -+ char is_from; -+ static const char * from_header = "From "; - - while (size) { - n = prot_read(from, buf, size > 4096 ? 4096 : size); -@@ -322,11 +324,24 @@ - /* Check for valid header name */ - if (sawnl && buf[0] != ' ' && buf[0] != '\t') { - if (buf[0] == ':') return IMAP_MESSAGE_BADHEADER; -- if (strstr(buf, "From ") != buf) -- for (p = (unsigned char *)buf; *p != ':'; p++) { -- if (*p <= ' ') return IMAP_MESSAGE_BADHEADER; -- } -- } -+ p = (unsigned char *) buf; -+ if (*p == '>') p++; -+ -+ if (*p == from_header[0]) -+ is_from = 0; -+ else -+ is_from = -1; -+ -+ for (; *p != ':' && is_from < 5; p++) { -+ if (is_from > 0 && *p != from_header[is_from]) -+ is_from = -1; -+ -+ if (is_from >= 0) -+ is_from++; -+ else -+ if (*p <= ' ') return IMAP_MESSAGE_BADHEADER; -+ } -+ } - - /* Used to be some 8bit checks here but those were moved above so that - we could do something other than refuse the message.
View file
debian.tar.gz/patches/cyrus-imapd-2.4.2-903-normalize-authorization-id.patch
Deleted
@@ -1,97 +0,0 @@ -diff --git a/imap/global.c b/imap/global.c -index d2e5ba7..930d539 100644 ---- a/imap/global.c -+++ b/imap/global.c -@@ -219,6 +219,8 @@ int cyrus_init(const char *alt_config, const char *ident, unsigned flags) - config_getswitch(IMAPOPT_UNIX_GROUP_ENABLE)); - libcyrus_config_setswitch(CYRUSOPT_USERNAME_TOLOWER, - config_getswitch(IMAPOPT_USERNAME_TOLOWER)); -+ libcyrus_config_setswitch(CYRUSOPT_NORMALIZEUID, -+ config_getswitch(IMAPOPT_NORMALIZEUID)); - libcyrus_config_setswitch(CYRUSOPT_SKIPLIST_UNSAFE, - config_getswitch(IMAPOPT_SKIPLIST_UNSAFE)); - libcyrus_config_setstring(CYRUSOPT_TEMP_PATH, -diff --git a/lib/auth_unix.c b/lib/auth_unix.c -index c1f0329..d7abf79 100644 ---- a/lib/auth_unix.c -+++ b/lib/auth_unix.c -@@ -156,10 +156,12 @@ const char *identifier; - size_t len; - { - static char retbuf[81]; -+ char backup[81]; - struct group *grp; - char sawalpha; - char *p; - int username_tolower = 0; -+ int ic,rbc; - - if(!len) len = strlen(identifier); - if(len >= sizeof(retbuf)) return NULL; -@@ -211,6 +213,22 @@ size_t len; - /* now we don't */ - /* if (!sawalpha) return NULL; */ - -+ if( (libcyrus_config_getswitch(CYRUSOPT_NORMALIZEUID) == 1) ) { -+ strcpy(backup,retbuf); -+ /* remove leading blanks */ -+ for(ic=0; isblank(backup[ic]); ic++); -+ for(rbc=0; backup[ic]; ic++) { -+ retbuf[rbc] = ( isalpha(backup[ic]) ? -+ tolower(backup[ic]) : backup[ic] ); -+ rbc++; -+ } -+ retbuf[rbc] = '\0'; -+ /* remove trailing blanks */ -+ for(--rbc; isblank(retbuf[rbc]); rbc--) { -+ retbuf[rbc] = '\0'; -+ } -+ } -+ - return retbuf; - } - -diff --git a/lib/imapoptions b/lib/imapoptions -index c049501..4d16fb5 100644 ---- a/lib/imapoptions -+++ b/lib/imapoptions -@@ -1416,6 +1416,11 @@ product version in the capabilities */ - the special use flag "\Drafts" added. Later versions of Cyrus - have a much more flexible RFC 6154 compatible system. */ - -+{ "normalizeuid", 0, SWITCH } -+/* Lowercase uid and strip leading and trailing blanks. It is recommended -+ to set this to yes, especially if OpenLDAP is used as authentication -+ source. */ -+ - /* - .SH SEE ALSO - .PP -diff --git a/lib/libcyr_cfg.c b/lib/libcyr_cfg.c -index 688523c..b5c6008 100644 ---- a/lib/libcyr_cfg.c -+++ b/lib/libcyr_cfg.c -@@ -158,6 +158,10 @@ struct cyrusopt_s cyrus_options[] = { - CFGVAL(long, 1), - CYRUS_OPT_SWITCH }, - -+ { CYRUSOPT_NORMALIZEUID, -+ CFGVAL(long, 1), -+ CYRUS_OPT_SWITCH }, -+ - { CYRUSOPT_LAST, { NULL }, CYRUS_OPT_NOTOPT } - }; - -diff --git a/lib/libcyr_cfg.h b/lib/libcyr_cfg.h -index 7bdca06..1afe95a 100644 ---- a/lib/libcyr_cfg.h -+++ b/lib/libcyr_cfg.h -@@ -116,6 +116,8 @@ enum cyrus_opt { - CYRUSOPT_SQL_USESSL, - /* Checkpoint after every recovery (OFF) */ - CYRUSOPT_SKIPLIST_ALWAYS_CHECKPOINT, -+ /* Lowercase uid and strip leading and trailing blanks (OFF) */ -+ CYRUSOPT_NORMALIZEUID, - - CYRUSOPT_LAST -
View file
debian.tar.gz/patches/cyrus-imapd-perl5.14.patch
Deleted
@@ -1,96 +0,0 @@ -diff -up cyrus-imapd-2.4.8/perl/imap/IMAP.xs.perl5.14 cyrus-imapd-2.4.8/perl/imap/IMAP.xs ---- cyrus-imapd-2.4.8/perl/imap/IMAP.xs.perl5.14 2011-04-13 16:35:22.000000000 +0200 -+++ cyrus-imapd-2.4.8/perl/imap/IMAP.xs 2011-06-21 08:08:16.841989447 +0200 -@@ -125,10 +125,10 @@ void imclient_xs_cb(struct imclient *cli - SAVETMPS; - PUSHMARK(SP); - XPUSHs(sv_2mortal(newSVpv("-client", 0))); -- rv = newSVsv(&sv_undef); -+ rv = newSVsv(&PL_sv_undef); - sv_setref_pv(rv, NULL, (void *) rock->client); - XPUSHs(rv); -- if (rock->prock != &sv_undef) { -+ if (rock->prock != &PL_sv_undef) { - XPUSHs(sv_2mortal(newSVpv("-rock", 0))); - XPUSHs(sv_mortalcopy(rock->prock)); - } -@@ -393,7 +393,7 @@ CODE: - ST(0) = sv_newmortal(); - - if(client->authenticated) { -- ST(0) = &sv_no; -+ ST(0) = &PL_sv_no; - return; - } - -@@ -415,10 +415,10 @@ CODE: - rc = imclient_authenticate(client->imclient, mechlist, service, user, - minssf, maxssf); - if (rc) -- ST(0) = &sv_no; -+ ST(0) = &PL_sv_no; - else { - client->authenticated = 1; -- ST(0) = &sv_yes; -+ ST(0) = &PL_sv_yes; - } - - int -@@ -450,12 +450,12 @@ CODE: - #ifdef HAVE_SSL - rc = imclient_starttls(client->imclient, tls_cert_file, tls_key_file, CAfile, CApath); - if (rc) -- ST(0) = &sv_no; -+ ST(0) = &PL_sv_no; - else { -- ST(0) = &sv_yes; -+ ST(0) = &PL_sv_yes; - } - #else -- ST(0) = &sv_no; -+ ST(0) = &PL_sv_no; - #endif /* HAVE_SSL */ - - void -@@ -515,7 +515,7 @@ PPCODE: - (val = hv_fetch(cb, "Rock", 4, 0))) - prock = *val; - else -- prock = &sv_undef; -+ prock = &PL_sv_undef; - /* - * build our internal rock, which is used by our internal - * callback handler to invoke the Perl callback -@@ -526,7 +526,7 @@ PPCODE: - rock = (struct xsccb *) safemalloc(sizeof *rock); - /* bump refcounts on these so they don't go away */ - rock->pcb = SvREFCNT_inc(pcb); -- if (!prock) prock = &sv_undef; -+ if (!prock) prock = &PL_sv_undef; - rock->prock = SvREFCNT_inc(prock); - rock->client = client; - rock->autofree = 0; -@@ -653,9 +653,9 @@ PPCODE: - EXTEND(SP, 1); - pcb = av_shift(av); - if (strcmp(SvPV(pcb, arg), "OK") == 0) -- PUSHs(&sv_yes); -+ PUSHs(&PL_sv_yes); - else -- PUSHs(&sv_no); -+ PUSHs(&PL_sv_no); - pcb = perl_get_sv("@", TRUE); - sv_setsv(pcb, av_shift(av)); - if (av_len(av) != -1) { -@@ -688,9 +688,9 @@ PPCODE: - EXTEND(SP, 2); - PUSHs(sv_2mortal(newSViv(fd))); - if (writep) -- PUSHs(&sv_yes); -+ PUSHs(&PL_sv_yes); - else -- PUSHs(&sv_no); -+ PUSHs(&PL_sv_no); - - void - imclient_fromURL(client,url)
View file
debian.tar.gz/patches/series
Deleted
@@ -1,6 +0,0 @@ -cyrus-imapd-2.4.2-903-normalize-authorization-id.patch -cyrus-imapd-2.4.2-902-accept-invalid-from-header.patch -cyrus-imapd-2.4.2-005-disable-rpath.patch -cyrus-imapd-2.4.16-db51.patch -cyrus-imapd-perl5.14.patch -cyrus-imapd-2.4.10-ptloader-ldap_user_attribute.patch
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.