diff options
Diffstat (limited to 'extra/cyrus-sasl')
-rw-r--r-- | extra/cyrus-sasl/0003_saslauthd_mdoc.patch | 35 | ||||
-rw-r--r-- | extra/cyrus-sasl/0012_xopen_crypt_prototype.patch | 20 | ||||
-rw-r--r-- | extra/cyrus-sasl/0016_pid_file_lock_creation_mask.patch | 27 | ||||
-rw-r--r-- | extra/cyrus-sasl/0018_auth_rimap_quotes.patch | 35 | ||||
-rw-r--r-- | extra/cyrus-sasl/0019_ldap_deprecated.patch | 22 | ||||
-rw-r--r-- | extra/cyrus-sasl/0022_gcc4.4_preprocessor_syntax.patch | 26 | ||||
-rw-r--r-- | extra/cyrus-sasl/0027_db5_support.patch | 24 | ||||
-rw-r--r-- | extra/cyrus-sasl/PKGBUILD | 53 | ||||
-rw-r--r-- | extra/cyrus-sasl/cyrus-sasl-2.1.19-checkpw.c.patch | 170 | ||||
-rw-r--r-- | extra/cyrus-sasl/cyrus-sasl-2.1.22-automake-1.10.patch | 94 | ||||
-rw-r--r-- | extra/cyrus-sasl/cyrus-sasl-2.1.22-crypt.patch | 71 | ||||
-rw-r--r-- | extra/cyrus-sasl/cyrus-sasl-2.1.23-authd-fix.patch | 28 | ||||
-rw-r--r-- | extra/cyrus-sasl/cyrus-sasl-2.1.26-size_t.patch | 11 |
13 files changed, 24 insertions, 592 deletions
diff --git a/extra/cyrus-sasl/0003_saslauthd_mdoc.patch b/extra/cyrus-sasl/0003_saslauthd_mdoc.patch deleted file mode 100644 index 694f4bb67..000000000 --- a/extra/cyrus-sasl/0003_saslauthd_mdoc.patch +++ /dev/null @@ -1,35 +0,0 @@ -0003_saslauthd_mdoc.dpatch by <fabbe@debian.org> - -Use the correct path for the saslauthd.conf file, and use another -date format (cosmetic). - -diff -urNad trunk~/saslauthd/saslauthd.mdoc trunk/saslauthd/saslauthd.mdoc ---- trunk~/saslauthd/saslauthd.mdoc 2006-05-29 22:52:42.000000000 +0300 -+++ trunk/saslauthd/saslauthd.mdoc 2006-07-12 15:05:25.000000000 +0300 -@@ -10,7 +10,7 @@ - .\" manpage in saslauthd.8 whenever you change this source - .\" version. Only the pre-formatted manpage is installed. - .\" --.Dd 10 24 2002 -+.Dd October 24 2002 - .Dt SASLAUTHD 8 - .Os "CMU-SASL" - .Sh NAME -@@ -216,7 +216,7 @@ - .Em (All platforms that support OpenLDAP 2.0 or higher) - .Pp - Authenticate against an ldap server. The ldap configuration parameters are --read from /usr/local/etc/saslauthd.conf. The location of this file can be -+read from /etc/saslauthd.conf. The location of this file can be - changed with the -O parameter. See the LDAP_SASLAUTHD file included with the - distribution for the list of available parameters. - .It Li sia -@@ -249,7 +249,7 @@ - .Bl -tag -width "/var/run/saslauthd/mux" - .It Pa /var/run/saslauthd/mux - The default communications socket. --.It Pa /usr/local/etc/saslauthd.conf -+.It Pa /etc/saslauthd.conf - The default configuration file for ldap support. - .El - .Sh SEE ALSO diff --git a/extra/cyrus-sasl/0012_xopen_crypt_prototype.patch b/extra/cyrus-sasl/0012_xopen_crypt_prototype.patch deleted file mode 100644 index d50ec8343..000000000 --- a/extra/cyrus-sasl/0012_xopen_crypt_prototype.patch +++ /dev/null @@ -1,20 +0,0 @@ -0012_xopen_crypt_prototype.dpatch by <dannf@debian.org> - -When _XOPEN_SOURCE is defined, the subsequent #include <unistd.h> -will define a correct function prototype for the crypt function. -This avoids segfaults on architectures where the size of a pointer -is greater than the size of an integer (ia64 and amd64 are examples). -This may be detected by looking for build log lines such as the -following: -auth_shadow.c:183: warning: implicit declaration of function ‘crypt’ -auth_shadow.c:183: warning: cast to pointer from integer of different -size - -diff -urNad trunk~/saslauthd/auth_shadow.c trunk/saslauthd/auth_shadow.c ---- trunk~/saslauthd/auth_shadow.c 2006-05-29 22:52:42.000000000 +0300 -+++ trunk/saslauthd/auth_shadow.c 2006-11-08 13:44:23.000000000 +0200 -@@ -1,3 +1,4 @@ -+#define _XOPEN_SOURCE - #define PWBUFSZ 256 /***SWB***/ - - /* MODULE: auth_shadow */ diff --git a/extra/cyrus-sasl/0016_pid_file_lock_creation_mask.patch b/extra/cyrus-sasl/0016_pid_file_lock_creation_mask.patch deleted file mode 100644 index e9170cef3..000000000 --- a/extra/cyrus-sasl/0016_pid_file_lock_creation_mask.patch +++ /dev/null @@ -1,27 +0,0 @@ -0016_pid_file_lock_creation_mask.dpatch by Sam Hocevar <sam@zoy.org> - -pid_file_lock is created with a mask of 644 instead of 0644. -This patch fixes this octal/decimal confusion as well as the -(harmless) one in the previous umask() call. - -diff -urNad trunk~/saslauthd/saslauthd-main.c trunk/saslauthd/saslauthd-main.c ---- trunk~/saslauthd/saslauthd-main.c 2006-05-29 22:52:42.000000000 +0300 -+++ trunk/saslauthd/saslauthd-main.c 2007-06-26 12:07:10.000000000 +0300 -@@ -276,7 +276,7 @@ - exit(1); - } - -- umask(077); -+ umask(0077); - - pid_file_size = strlen(run_path) + sizeof(PID_FILE_LOCK) + 1; - if ((pid_file_lock = malloc(pid_file_size)) == NULL) { -@@ -287,7 +287,7 @@ - strlcpy(pid_file_lock, run_path, pid_file_size); - strlcat(pid_file_lock, PID_FILE_LOCK, pid_file_size); - -- if ((pid_file_lock_fd = open(pid_file_lock, O_CREAT|O_TRUNC|O_RDWR, 644)) < 0) { -+ if ((pid_file_lock_fd = open(pid_file_lock, O_CREAT|O_TRUNC|O_RDWR, 0644)) < 0) { - rc = errno; - logger(L_ERR, L_FUNC, "could not open pid lock file: %s", pid_file_lock); - logger(L_ERR, L_FUNC, "open: %s", strerror(rc)); diff --git a/extra/cyrus-sasl/0018_auth_rimap_quotes.patch b/extra/cyrus-sasl/0018_auth_rimap_quotes.patch deleted file mode 100644 index 13fa999f0..000000000 --- a/extra/cyrus-sasl/0018_auth_rimap_quotes.patch +++ /dev/null @@ -1,35 +0,0 @@ -0016_auth_rimap_quotes.dpatch by <fabbe@debian.org> - -All lines beginning with `## DP:' are a description of the patch. -Avoid infinite loop when username/password has a double quote character. -Upstream change: https://bugzilla.andrew.cmu.edu/cgi-bin/cvsweb.cgi/src/sasl/saslauthd/auth_rimap.c.diff?r1=1.12;r2=1.13 - -diff -urNad etch~/saslauthd/auth_rimap.c etch/saslauthd/auth_rimap.c ---- etch~/saslauthd/auth_rimap.c 2007-03-29 15:16:20.000000000 +0300 -+++ etch/saslauthd/auth_rimap.c 2008-02-13 13:42:53.000000000 +0200 -@@ -162,6 +162,7 @@ - num_quotes = 0; - p1 = s; - while ((p1 = strchr(p1, '"')) != NULL) { -+ p1++; - num_quotes++; - } - -@@ -438,7 +439,7 @@ - syslog(LOG_WARNING, "auth_rimap: writev: %m"); - memset(qlogin, 0, strlen(qlogin)); - free(qlogin); -- memset(qpass, 0, strlen(qlogin)); -+ memset(qpass, 0, strlen(qpass)); - free(qpass); - (void)close(s); - return strdup(RESP_IERROR); -@@ -447,7 +448,7 @@ - /* don't need these any longer */ - memset(qlogin, 0, strlen(qlogin)); - free(qlogin); -- memset(qpass, 0, strlen(qlogin)); -+ memset(qpass, 0, strlen(qpass)); - free(qpass); - - /* read and parse the LOGIN response */ diff --git a/extra/cyrus-sasl/0019_ldap_deprecated.patch b/extra/cyrus-sasl/0019_ldap_deprecated.patch deleted file mode 100644 index 8825256cb..000000000 --- a/extra/cyrus-sasl/0019_ldap_deprecated.patch +++ /dev/null @@ -1,22 +0,0 @@ -0019_ldap_deprecated.dpatch by dann frazier <dannf@debian.org> - -The function ldap_get_values, used in saslauthd/lak.c, is deprecated. -Therefore, its prototype is not included by default when compiling -against the ldap.h headers. As a result, the compiler cannot know the -return type of the function at compile time, and will implicitly -convert to a pointer. This has implications on 64-bit systems. -This patch sets the deprecation mode on, so that the function prototype -gets included when compiling. -(Description by Fabian Fagerholm <fabbe@debian.org>) - -diff -urNad trunk~/saslauthd/lak.c trunk/saslauthd/lak.c ---- trunk~/saslauthd/lak.c 2006-06-04 12:26:20.000000000 +0300 -+++ trunk/saslauthd/lak.c 2008-02-15 14:32:11.000000000 +0200 -@@ -55,6 +55,7 @@ - #include <openssl/des.h> - #endif - -+#define LDAP_DEPRECATED 1 - #include <ldap.h> - #include <lber.h> - #include <sasl.h> diff --git a/extra/cyrus-sasl/0022_gcc4.4_preprocessor_syntax.patch b/extra/cyrus-sasl/0022_gcc4.4_preprocessor_syntax.patch deleted file mode 100644 index a49b553f0..000000000 --- a/extra/cyrus-sasl/0022_gcc4.4_preprocessor_syntax.patch +++ /dev/null @@ -1,26 +0,0 @@ -0022_gcc4.4_preprocessor_syntax.dpatch by <fabbe@paniq.net> - -The #elif preprocessor directive requires a test condition. -GCC 4.4 enforces this rule. - -diff -urNad trunk~/plugins/digestmd5.c trunk/plugins/digestmd5.c ---- trunk~/plugins/digestmd5.c 2006-06-04 12:26:19.000000000 +0300 -+++ trunk/plugins/digestmd5.c 2009-01-26 13:29:40.000000000 +0200 -@@ -2715,7 +2715,7 @@ - "DIGEST-MD5", /* mech_name */ - #ifdef WITH_RC4 - 128, /* max_ssf */ --#elif WITH_DES -+#elif defined(WITH_DES) - 112, - #else - 1, -@@ -4034,7 +4034,7 @@ - "DIGEST-MD5", - #ifdef WITH_RC4 /* mech_name */ - 128, /* max ssf */ --#elif WITH_DES -+#elif defined(WITH_DES) - 112, - #else - 1, diff --git a/extra/cyrus-sasl/0027_db5_support.patch b/extra/cyrus-sasl/0027_db5_support.patch deleted file mode 100644 index 522824074..000000000 --- a/extra/cyrus-sasl/0027_db5_support.patch +++ /dev/null @@ -1,24 +0,0 @@ -Author: Ondřej Surý <ondrej@debian.org> -Description: Support newer Berkeley DB versions ---- a/sasldb/db_berkeley.c -+++ b/sasldb/db_berkeley.c -@@ -101,7 +101,7 @@ static int berkeleydb_open(const sasl_ut - ret = db_create(mbdb, NULL, 0); - if (ret == 0 && *mbdb != NULL) - { --#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1 -+#if (DB_VERSION_MAJOR > 4) || ((DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 1)) - ret = (*mbdb)->open(*mbdb, NULL, path, NULL, DB_HASH, flags, 0660); - #else - ret = (*mbdb)->open(*mbdb, path, NULL, DB_HASH, flags, 0660); ---- a/utils/dbconverter-2.c -+++ b/utils/dbconverter-2.c -@@ -214,7 +214,7 @@ static int berkeleydb_open(const char *p - ret = db_create(mbdb, NULL, 0); - if (ret == 0 && *mbdb != NULL) - { --#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1 -+#if (DB_VERSION_MAJOR > 4) || ((DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 1)) - ret = (*mbdb)->open(*mbdb, NULL, path, NULL, DB_HASH, DB_CREATE, 0664); - #else - ret = (*mbdb)->open(*mbdb, path, NULL, DB_HASH, DB_CREATE, 0664); diff --git a/extra/cyrus-sasl/PKGBUILD b/extra/cyrus-sasl/PKGBUILD index e35c47f05..117c2434f 100644 --- a/extra/cyrus-sasl/PKGBUILD +++ b/extra/cyrus-sasl/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 180680 2013-03-25 19:15:31Z bpiotrowski $ +# $Id: PKGBUILD 185591 2013-05-15 13:17:58Z eric $ # Maintainer: Jan de Groot <jgc@archlinux.org> # This package spans multiple repositories. @@ -7,53 +7,33 @@ pkgbase=('cyrus-sasl') pkgname=('cyrus-sasl' 'cyrus-sasl-gssapi' 'cyrus-sasl-ldap' 'cyrus-sasl-sql') #pkgname=libsasl -pkgver=2.1.23 -pkgrel=12 +pkgver=2.1.26 +pkgrel=2 pkgdesc="Cyrus Simple Authentication Service Layer (SASL) library" arch=('i686' 'x86_64' 'mips64el') url="http://cyrusimap.web.cmu.edu/" license=('custom') options=('!makeflags' '!libtool') -makedepends=('postgresql-libs' 'libmariadbclient' 'libldap' 'krb5' 'openssl') -source=(ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/cyrus-sasl-${pkgver}.tar.gz - cyrus-sasl-2.1.19-checkpw.c.patch - cyrus-sasl-2.1.22-crypt.patch +makedepends=('postgresql-libs' 'libmariadbclient' 'libldap' 'krb5' 'openssl' 'sqlite2') +source=(ftp://ftp.cyrusimap.org/cyrus-sasl/cyrus-sasl-${pkgver}.tar.gz cyrus-sasl-2.1.22-qa.patch - cyrus-sasl-2.1.22-automake-1.10.patch - cyrus-sasl-2.1.23-authd-fix.patch - 0003_saslauthd_mdoc.patch + cyrus-sasl-2.1.26-size_t.patch 0010_maintainer_mode.patch 0011_saslauthd_ac_prog_libtool.patch - 0012_xopen_crypt_prototype.patch - 0016_pid_file_lock_creation_mask.patch - 0018_auth_rimap_quotes.patch - 0019_ldap_deprecated.patch - 0022_gcc4.4_preprocessor_syntax.patch 0025_ld_as_needed.patch 0026_drop_krb5support_dependency.patch - 0027_db5_support.patch 0030-dont_use_la_files_for_opening_plugins.patch saslauthd.service saslauthd.conf.d saslauthd tmpfiles.conf) -md5sums=('2eb0e48106f0e9cd8001e654f267ecbc' - 'e27ddff076342e7a3041c4759817d04b' - 'd7e6886e88af04d05f3dec7f0a59ccf7' +md5sums=('a7f4e5e559a0e37b3ffc438c9456e425' '79b8a5e8689989e2afd4b7bda595a7b1' - 'f4131b077ddb5240b375d749162f1b7a' - 'c7ad2c70c1ef814eb4b119f316c064f2' - 'caeeac3feba19cbbd36e7345cc805600' + 'f45aa8c42b32e0569ab3d14a83485b37' 'f45d8b60e8f74dd7f7c2ec1665fa602a' '9d93880514cb5ff5da969f1ceb64a661' - 'dfdc052a7e678db9f687482c5d52f34e' - '4a09f6b24b91f8450892a78e378860da' - '213abe7c5dfe0d7f446992787da1e780' - '5a0321177ad30cb5518c8b6812e3961a' - '0c965748970eea29fa295524821d43f0' '62bf892fe4d1df41ff748e91a1afaf67' 'b7848957357e7c02d6490102be496bf9' - 'd86a5aa2e3b5b7c1bad6f8b548b7ea36' '8e7106f32e495e9ade69014fd1b3352a' '3499dcd610ad1ad58e0faffde2aa7a23' '49219af5641150edec288a3fdb65e7c1' @@ -61,25 +41,18 @@ md5sums=('2eb0e48106f0e9cd8001e654f267ecbc' '45bb0192d2f188066240b9a66ee6365f') build() { + export CFLAGS="$CFLAGS -fPIC" + cd "${srcdir}/cyrus-sasl-${pkgver}" - patch -Np1 -i "${srcdir}/cyrus-sasl-2.1.19-checkpw.c.patch" - patch -Np1 -i "${srcdir}/cyrus-sasl-2.1.22-crypt.patch" patch -Np1 -i "${srcdir}/cyrus-sasl-2.1.22-qa.patch" - patch -Np1 -i "${srcdir}/cyrus-sasl-2.1.22-automake-1.10.patch" - patch -Np0 -i "${srcdir}/cyrus-sasl-2.1.23-authd-fix.patch" - patch -Np1 -i "${srcdir}/0003_saslauthd_mdoc.patch" + patch -Np1 -i "${srcdir}/cyrus-sasl-2.1.26-size_t.patch" patch -Np1 -i "${srcdir}/0010_maintainer_mode.patch" patch -Np1 -i "${srcdir}/0011_saslauthd_ac_prog_libtool.patch" - patch -Np1 -i "${srcdir}/0012_xopen_crypt_prototype.patch" - patch -Np1 -i "${srcdir}/0016_pid_file_lock_creation_mask.patch" - patch -Np1 -i "${srcdir}/0018_auth_rimap_quotes.patch" - patch -Np1 -i "${srcdir}/0019_ldap_deprecated.patch" - patch -Np1 -i "${srcdir}/0022_gcc4.4_preprocessor_syntax.patch" patch -Np1 -i "${srcdir}/0025_ld_as_needed.patch" patch -Np1 -i "${srcdir}/0026_drop_krb5support_dependency.patch" - patch -Np1 -i "${srcdir}/0027_db5_support.patch" patch -Np1 -i "${srcdir}/0030-dont_use_la_files_for_opening_plugins.patch" + sed 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/' -i configure.in rm -f config/config.guess config/config.sub rm -f config/ltconfig config/ltmain.sh config/libtool.m4 rm -fr autom4te.cache @@ -196,7 +169,7 @@ package_cyrus-sasl-ldap() { package_cyrus-sasl-sql() { pkgdesc="SQL auxprop module for Cyrus SASL" - depends=("libsasl=${pkgver}" 'postgresql-libs' 'libmariadbclient') + depends=("libsasl=${pkgver}" 'postgresql-libs' 'libmariadbclient' 'sqlite2') replaces=('cyrus-sasl-plugins') cd "${srcdir}/cyrus-sasl-${pkgver}/plugins" diff --git a/extra/cyrus-sasl/cyrus-sasl-2.1.19-checkpw.c.patch b/extra/cyrus-sasl/cyrus-sasl-2.1.19-checkpw.c.patch deleted file mode 100644 index f7bf44b79..000000000 --- a/extra/cyrus-sasl/cyrus-sasl-2.1.19-checkpw.c.patch +++ /dev/null @@ -1,170 +0,0 @@ -diff -ur ../cyrus-sasl-2.1.19.orig/lib/Makefile.in ./lib/Makefile.in ---- ../cyrus-sasl-2.1.19.orig/lib/Makefile.in 2004-07-02 21:40:15.000000000 +0200 -+++ ./lib/Makefile.in 2004-09-07 13:21:22.746680576 +0200 -@@ -120,7 +120,7 @@ - JAVA_TRUE = @JAVA_TRUE@ - LDFLAGS = @LDFLAGS@ - LIBOBJS = @LIBOBJS@ --LIBS = @LIBS@ -+LIBS = -lcrypt @LIBS@ - LIBTOOL = @LIBTOOL@ - LIB_CRYPT = @LIB_CRYPT@ - LIB_DES = @LIB_DES@ -diff -ur ../cyrus-sasl-2.1.19.orig/lib/checkpw.c ./lib/checkpw.c ---- ../cyrus-sasl-2.1.19.orig/lib/checkpw.c 2004-03-17 14:58:13.000000000 +0100 -+++ ./lib/checkpw.c 2004-09-07 13:21:12.645916147 +0200 -@@ -94,6 +94,23 @@ - # endif - #endif - -+/****************************** -+ * crypt(3) patch start * -+ ******************************/ -+char *crypt(const char *key, const char *salt); -+ -+/* cleartext password formats */ -+#define PASSWORD_FORMAT_CLEARTEXT 1 -+#define PASSWORD_FORMAT_CRYPT 2 -+#define PASSWORD_FORMAT_CRYPTTRAD 3 -+#define PASSWORD_SALT_BUF_LEN 22 -+ -+/* weeds out crypt(3) password's salt */ -+int _sasl_get_salt (char *dest, char *src, int format); -+ -+/****************************** -+ * crypt(3) patch stop * -+ ******************************/ - - /* we store the following secret to check plaintext passwords: - * -@@ -143,7 +160,51 @@ - "*cmusaslsecretPLAIN", - NULL }; - struct propval auxprop_values[3]; -- -+ -+ /****************************** -+ * crypt(3) patch start * -+ * for password format check * -+ ******************************/ -+ sasl_getopt_t *getopt; -+ void *context; -+ const char *p = NULL; -+ /** -+ * MD5: 12 char salt -+ * BLOWFISH: 16 char salt -+ */ -+ char salt[PASSWORD_SALT_BUF_LEN]; -+ int password_format; -+ -+ /* get password format from auxprop configuration */ -+ if (_sasl_getcallback(conn, SASL_CB_GETOPT, &getopt, &context) == SASL_OK) { -+ getopt(context, NULL, "password_format", &p, NULL); -+ } -+ -+ /* set password format */ -+ if (p) { -+ /* -+ memset(pass_format_str, '\0', PASSWORD_FORMAT_STR_LEN); -+ strncpy(pass_format_str, p, (PASSWORD_FORMAT_STR_LEN - 1)); -+ */ -+ /* modern, modular crypt(3) */ -+ if (strncmp(p, "crypt", 11) == 0) -+ password_format = PASSWORD_FORMAT_CRYPT; -+ /* traditional crypt(3) */ -+ else if (strncmp(p, "crypt_trad", 11) == 0) -+ password_format = PASSWORD_FORMAT_CRYPTTRAD; -+ /* cleartext password */ -+ else -+ password_format = PASSWORD_FORMAT_CLEARTEXT; -+ } else { -+ /* cleartext password */ -+ password_format = PASSWORD_FORMAT_CLEARTEXT; -+ } -+ -+ /****************************** -+ * crypt(3) patch stop * -+ * for password format check * -+ ******************************/ -+ - if (!conn || !userstr) - return SASL_BADPARAM; - -@@ -180,14 +241,31 @@ - goto done; - } - -- /* At the point this has been called, the username has been canonified -- * and we've done the auxprop lookup. This should be easy. */ -- if(auxprop_values[0].name -- && auxprop_values[0].values -- && auxprop_values[0].values[0] -- && !strcmp(auxprop_values[0].values[0], passwd)) { -- /* We have a plaintext version and it matched! */ -- return SASL_OK; -+ -+ /****************************** -+ * crypt(3) patch start * -+ ******************************/ -+ -+ /* get salt */ -+ _sasl_get_salt(salt, (char *) auxprop_values[0].values[0], password_format); -+ -+ /* crypt(3)-ed password? */ -+ if (password_format != PASSWORD_FORMAT_CLEARTEXT) { -+ /* compare password */ -+ if (auxprop_values[0].name && auxprop_values[0].values && auxprop_values[0].values[0] && strcmp(crypt(passwd, salt), auxprop_values[0].values[0]) == 0) -+ return SASL_OK; -+ else -+ ret = SASL_BADAUTH; -+ } -+ else if (password_format == PASSWORD_FORMAT_CLEARTEXT) { -+ /* compare passwords */ -+ if (auxprop_values[0].name && auxprop_values[0].values && auxprop_values[0].values[0] && strcmp(auxprop_values[0].values[0], passwd) == 0) -+ return SASL_OK; -+ else -+ ret = SASL_BADAUTH; -+ /****************************** -+ * crypt(3) patch stop * -+ ******************************/ - } else if(auxprop_values[1].name - && auxprop_values[1].values - && auxprop_values[1].values[0]) { -@@ -975,3 +1053,37 @@ - #endif - { NULL, NULL } - }; -+ -+/* weeds out crypt(3) password's salt */ -+int _sasl_get_salt (char *dest, char *src, int format) { -+ int num; /* how many characters is salt long? */ -+ switch (format) { -+ case PASSWORD_FORMAT_CRYPT: -+ /* md5 crypt */ -+ if (src[1] == '1') -+ num = 12; -+ /* blowfish crypt */ -+ else if (src[1] == '2') -+ num = (src[1] == '2' && src[2] == 'a') ? 17 : 16; -+ /* traditional crypt */ -+ else -+ num = 2; -+ break; -+ -+ case PASSWORD_FORMAT_CRYPTTRAD: -+ num = 2; -+ break; -+ -+ default: -+ return 1; -+ } -+ -+ /* destroy destination */ -+ memset(dest, '\0', (num + 1)); -+ -+ /* copy salt to destination */ -+ strncpy(dest, src, num); -+ -+ return 1; -+} -+ diff --git a/extra/cyrus-sasl/cyrus-sasl-2.1.22-automake-1.10.patch b/extra/cyrus-sasl/cyrus-sasl-2.1.22-automake-1.10.patch deleted file mode 100644 index 8cd71c0c5..000000000 --- a/extra/cyrus-sasl/cyrus-sasl-2.1.22-automake-1.10.patch +++ /dev/null @@ -1,94 +0,0 @@ -Re-merged patch by Robert Scheck <redhat@linuxnetz.de> for cyrus-sasl >= 2.1.22, which was -originally written by Jacek Konieczny <jajcus@pld-linux.org> and makes cyrus-sasl building -using automake 1.10. - ---- cyrus-sasl-2.1.22/plugins/Makefile.am 2006-05-17 18:46:16.000000000 +0200 -+++ cyrus-sasl-2.1.22/plugins/Makefile.am.am110 2007-02-16 15:42:07.000000000 +0100 -@@ -82,73 +82,73 @@ - libntlm.la libpassdss.la libsasldb.la libsql.la libldapdb.la - - libplain_la_SOURCES = plain.c plain_init.c $(common_sources) --libplain_la_LDFLAGS = -version-info $(plain_version) -+libplain_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(plain_version) - libplain_la_DEPENDENCIES = $(COMPAT_OBJS) - libplain_la_LIBADD = $(PLAIN_LIBS) $(COMPAT_OBJS) - - libanonymous_la_SOURCES = anonymous.c anonymous_init.c $(common_sources) --libanonymous_la_LDFLAGS = -version-info $(anonymous_version) -+libanonymous_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(anonymous_version) - libanonymous_la_DEPENDENCIES = $(COMPAT_OBJS) - libanonymous_la_LIBADD = $(COMPAT_OBJS) - - libkerberos4_la_SOURCES = kerberos4.c kerberos4_init.c $(common_sources) --libkerberos4_la_LDFLAGS = -version-info $(kerberos4_version) -+libkerberos4_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(kerberos4_version) - libkerberos4_la_DEPENDENCIES = $(COMPAT_OBJS) - libkerberos4_la_LIBADD = $(SASL_KRB_LIB) $(LIB_SOCKET) $(COMPAT_OBJS) - - libgssapiv2_la_SOURCES = gssapi.c gssapiv2_init.c $(common_sources) --libgssapiv2_la_LDFLAGS = -version-info $(gssapiv2_version) -+libgssapiv2_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(gssapiv2_version) - libgssapiv2_la_DEPENDENCIES = $(COMPAT_OBJS) - libgssapiv2_la_LIBADD = $(GSSAPIBASE_LIBS) $(GSSAPI_LIBS) $(LIB_SOCKET) $(COMPAT_OBJS) - - libcrammd5_la_SOURCES = cram.c crammd5_init.c $(common_sources) --libcrammd5_la_LDFLAGS = -version-info $(crammd5_version) -+libcrammd5_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(crammd5_version) - libcrammd5_la_DEPENDENCIES = $(COMPAT_OBJS) - libcrammd5_la_LIBADD = $(COMPAT_OBJS) - - libdigestmd5_la_SOURCES = digestmd5.c digestmd5_init.c $(common_sources) --libdigestmd5_la_LDFLAGS = -version-info $(digestmd5_version) -+libdigestmd5_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(digestmd5_version) - libdigestmd5_la_DEPENDENCIES = $(COMPAT_OBJS) - libdigestmd5_la_LIBADD = $(LIB_DES) $(LIB_SOCKET) $(COMPAT_OBJS) - - liblogin_la_SOURCES = login.c login_init.c $(common_sources) --liblogin_la_LDFLAGS = -version-info $(login_version) -+liblogin_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(login_version) - liblogin_la_DEPENDENCIES = $(COMPAT_OBJS) - liblogin_la_LIBADD = $(PLAIN_LIBS) $(COMPAT_OBJS) - - libsrp_la_SOURCES = srp.c srp_init.c $(common_sources) --libsrp_la_LDFLAGS = -version-info $(srp_version) -+libsrp_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(srp_version) - libsrp_la_DEPENDENCIES = $(COMPAT_OBJS) - libsrp_la_LIBADD = $(SRP_LIBS) $(COMPAT_OBJS) - - libotp_la_SOURCES = otp.c otp_init.c otp.h $(common_sources) --libotp_la_LDFLAGS = -version-info $(otp_version) -+libotp_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(otp_version) - libotp_la_DEPENDENCIES = $(COMPAT_OBJS) - libotp_la_LIBADD = $(OTP_LIBS) $(COMPAT_OBJS) - - libntlm_la_SOURCES = ntlm.c ntlm_init.c $(common_sources) --libntlm_la_LDFLAGS = -version-info $(ntlm_version) -+libntlm_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(ntlm_version) - libntlm_la_DEPENDENCIES = $(COMPAT_OBJS) - libntlm_la_LIBADD = $(NTLM_LIBS) $(COMPAT_OBJS) - - libpassdss_la_SOURCES = passdss.c passdss_init.c $(common_sources) --libpassdss_la_LDFLAGS = -version-info $(passdss_version) -+libpassdss_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(passdss_version) - libpassdss_la_DEPENDENCIES = $(COMPAT_OBJS) - libpassdss_la_LIBADD = $(PASSDSS_LIBS) $(COMPAT_OBJS) - - # Auxprop Plugins - libsasldb_la_SOURCES = sasldb.c sasldb_init.c $(common_sources) --libsasldb_la_LDFLAGS = -version-info $(sasldb_version) -+libsasldb_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(sasldb_version) - libsasldb_la_DEPENDENCIES = $(COMPAT_OBJS) - libsasldb_la_LIBADD = ../sasldb/libsasldb.la $(SASL_DB_LIB) $(COMPAT_OBJS) - - libldapdb_la_SOURCES = ldapdb.c ldapdb_init.c $(common_sources) --libldapdb_la_LDFLAGS = $(LIB_LDAP) -version-info $(ldapdb_version) -+libldapdb_la_LDFLAGS = $(AM_LDFLAGS) $(LIB_LDAP) -version-info $(ldapdb_version) - libldapdb_la_DEPENDENCIES = $(COMPAT_OBJS) - libldapdb_la_LIBADD = $(COMPAT_OBJS) - - libsql_la_SOURCES = sql.c sql_init.c $(common_sources) --libsql_la_LDFLAGS = $(LIB_MYSQL) $(LIB_PGSQL) $(LIB_SQLITE) -version-info $(sql_version) -+libsql_la_LDFLAGS = $(AM_LDFLAGS) $(LIB_MYSQL) $(LIB_PGSQL) $(LIB_SQLITE) -version-info $(sql_version) - libsql_la_DEPENDENCIES = $(COMPAT_OBJS) - libsql_la_LIBADD = $(COMPAT_OBJS) - diff --git a/extra/cyrus-sasl/cyrus-sasl-2.1.22-crypt.patch b/extra/cyrus-sasl/cyrus-sasl-2.1.22-crypt.patch deleted file mode 100644 index fd356327b..000000000 --- a/extra/cyrus-sasl/cyrus-sasl-2.1.22-crypt.patch +++ /dev/null @@ -1,71 +0,0 @@ -http://bugs.gentoo.org/152544 - ---- cyrus-sasl-2.1.22/lib/Makefile.am -+++ cyrus-sasl-2.1.22/lib/Makefile.am -@@ -45,6 +45,7 @@ sasl_version = 2:22:0 - - INCLUDES=-I$(top_srcdir)/include -I$(top_srcdir)/plugins -I$(top_builddir)/include -I$(top_srcdir)/sasldb - -+AM_CFLAGS = -fPIC - EXTRA_DIST = windlopen.c staticopen.h NTMakefile - EXTRA_LIBRARIES = libsasl2.a - noinst_LIBRARIES = @SASL_STATIC_LIBS@ ---- cyrus-sasl-2.1.22/plugins/Makefile.am -+++ cyrus-sasl-2.1.22/plugins/Makefile.am -@@ -63,6 +63,7 @@ srp_version = 2:22:0 - - INCLUDES=-I$(top_srcdir)/include -I$(top_srcdir)/lib -I$(top_srcdir)/sasldb -I$(top_builddir)/include - AM_LDFLAGS = -module -export-dynamic -rpath $(plugindir) -+AM_CFLAGS = -fPIC - - COMPAT_OBJS = @LTGETADDRINFOOBJS@ @LTGETNAMEINFOOBJS@ @LTSNPRINTFOBJS@ - ---- cyrus-sasl-2.1.22/sasldb/Makefile.am -+++ cyrus-sasl-2.1.22/sasldb/Makefile.am -@@ -48,6 +48,7 @@ INCLUDES=-I$(top_srcdir)/include -I$(top - - extra_common_sources = db_none.c db_ndbm.c db_gdbm.c db_berkeley.c - -+AM_CFLAGS = -fPIC - EXTRA_DIST = NTMakefile - - noinst_LTLIBRARIES = libsasldb.la ---- cyrus-sasl-2.1.22/utils/Makefile.am -+++ cyrus-sasl-2.1.22/utils/Makefile.am -@@ -42,7 +42,7 @@ - # - ################################################################ - --all_sasl_libs = ../lib/libsasl2.la $(SASL_DB_LIB) $(LIB_SOCKET) -+all_sasl_libs = ../lib/libsasl2.la $(SASL_DB_LIB) $(LIB_SOCKET) $(LIB_CRYPT) - all_sasl_static_libs = ../lib/.libs/libsasl2.a $(SASL_DB_LIB) $(LIB_SOCKET) $(GSSAPIBASE_LIBS) $(GSSAPI_LIBS) $(SASL_KRB_LIB) $(LIB_DES) $(PLAIN_LIBS) $(SRP_LIBS) $(LIB_MYSQL) $(LIB_PGSQL) $(LIB_SQLITE) - - sbin_PROGRAMS = @SASL_DB_UTILS@ @SMTPTEST_PROGRAM@ pluginviewer ---- cyrus-sasl-2.1.22/sample/Makefile.am -+++ cyrus-sasl-2.1.22/sample/Makefile.am -@@ -54,10 +54,10 @@ sample_server_SOURCES = sample-server.c - server_SOURCES = server.c common.c common.h - client_SOURCES = client.c common.c common.h - --server_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) --client_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) -+server_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) $(LIB_CRYPT) -+client_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) $(LIB_CRYPT) - --sample_client_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) --sample_server_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) -+sample_client_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) $(LIB_CRYPT) -+sample_server_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) $(LIB_CRYPT) - - EXTRA_DIST = NTMakefile ---- cyrus-sasl-2.1.22/lib/Makefile.am -+++ cyrus-sasl-2.1.22/lib/Makefile.am -@@ -63,7 +63,7 @@ lib_LTLIBRARIES = libsasl2.la - libsasl2_la_SOURCES = $(common_sources) $(common_headers) - libsasl2_la_LDFLAGS = -version-info $(sasl_version) - libsasl2_la_DEPENDENCIES = $(LTLIBOBJS) --libsasl2_la_LIBADD = $(LTLIBOBJS) $(SASL_DL_LIB) $(LIB_SOCKET) $(LIB_DOOR) -+libsasl2_la_LIBADD = $(LTLIBOBJS) $(SASL_DL_LIB) $(LIB_SOCKET) $(LIB_DOOR) $(LIB_CRYPT) - - if MACOSX - framedir = /Library/Frameworks/SASL2.framework diff --git a/extra/cyrus-sasl/cyrus-sasl-2.1.23-authd-fix.patch b/extra/cyrus-sasl/cyrus-sasl-2.1.23-authd-fix.patch deleted file mode 100644 index f5f372d17..000000000 --- a/extra/cyrus-sasl/cyrus-sasl-2.1.23-authd-fix.patch +++ /dev/null @@ -1,28 +0,0 @@ -fix warnings: - -auth_sasldb.c: In function ‘auth_sasldb’: -auth_sasldb.c:144: warning: implicit declaration of function ‘gethostname’ - -auth_sasldb.c:153: warning: passing argument 8 of ‘_sasldb_getdata’ from incompatible pointer type -../sasldb/sasldb.h:60: note: expected ‘size_t *’ but argument is of type ‘int *’ - ---- saslauthd/auth_sasldb.c -+++ saslauthd/auth_sasldb.c -@@ -41,6 +41,7 @@ - #include <string.h> - #include <stdlib.h> - #include <pwd.h> -+#include <unistd.h> - /* END PUBLIC DEPENDENCIES */ - - #define RETURN(x) return strdup(x) -@@ -131,7 +132,8 @@ - /* VARIABLES */ - char pw[1024]; /* pointer to passwd file entry */ - sasl_utils_t utils; -- int ret, outsize; -+ int ret; -+ size_t outsize; - const char *use_realm; - char realm_buf[MAXHOSTNAMELEN]; - /* END VARIABLES */ diff --git a/extra/cyrus-sasl/cyrus-sasl-2.1.26-size_t.patch b/extra/cyrus-sasl/cyrus-sasl-2.1.26-size_t.patch new file mode 100644 index 000000000..3a4820f16 --- /dev/null +++ b/extra/cyrus-sasl/cyrus-sasl-2.1.26-size_t.patch @@ -0,0 +1,11 @@ +--- cyrus-sasl-2.1.26/include/sasl.h 2012-10-12 09:05:48.000000000 -0500 ++++ cyrus-sasl-2.1.26/include/sasl.h 2013-01-31 13:21:04.007739327 -0600 +@@ -223,6 +223,8 @@ extern "C" { + * they must be called before all other SASL functions: + */ + ++#include <sys/types.h> ++ + /* memory allocation functions which may optionally be replaced: + */ + typedef void *sasl_malloc_t(size_t); |