From 94e6777db2683a7e8220f93cc14eac76aa9bf7b0 Mon Sep 17 00:00:00 2001 From: Jakub Bogusz Date: Sat, 17 Sep 2011 08:54:30 +0000 Subject: [PATCH] - updated to 2.1.25 - updated nolibs,split-sql,gcc4,cryptedpw,db,keytab,parallel-make,gssapi-detect patches - removed obsolete automake_1_10,digest-commas,ac patches - added gssapi_ext patch - new plugins: gs2 (packaged in -gssapi), scram (new -scram package), sqlite3 (from split sql plugin, new -sqlite3 package) Changed files: cyrus-sasl-ac.patch -> 1.3 cyrus-sasl-automake_1_10.patch -> 1.2 cyrus-sasl-cryptedpw.patch -> 1.2 cyrus-sasl-db.patch -> 1.8 cyrus-sasl-digest-commas.patch -> 1.2 cyrus-sasl-gcc4.patch -> 1.4 cyrus-sasl-gssapi-detect.patch -> 1.3 cyrus-sasl-gssapi_ext.patch -> 1.1 cyrus-sasl-keytab.patch -> 1.2 cyrus-sasl-lt.patch -> 1.4 cyrus-sasl-nolibs.patch -> 1.3 cyrus-sasl-parallel-make.patch -> 1.2 cyrus-sasl-split-sql.patch -> 1.5 cyrus-sasl.spec -> 1.207 --- cyrus-sasl-ac.patch | 29 --- cyrus-sasl-automake_1_10.patch | 103 ---------- cyrus-sasl-cryptedpw.patch | 19 +- cyrus-sasl-db.patch | 11 +- cyrus-sasl-digest-commas.patch | 148 -------------- cyrus-sasl-gcc4.patch | 20 -- cyrus-sasl-gssapi-detect.patch | 38 ++-- cyrus-sasl-gssapi_ext.patch | 13 ++ cyrus-sasl-keytab.patch | 13 +- cyrus-sasl-lt.patch | 8 +- cyrus-sasl-nolibs.patch | 8 +- cyrus-sasl-parallel-make.patch | 44 +++-- cyrus-sasl-split-sql.patch | 84 +++++--- cyrus-sasl.spec | 349 ++++++++++++++++++--------------- 14 files changed, 334 insertions(+), 553 deletions(-) delete mode 100644 cyrus-sasl-ac.patch delete mode 100644 cyrus-sasl-automake_1_10.patch delete mode 100644 cyrus-sasl-digest-commas.patch create mode 100644 cyrus-sasl-gssapi_ext.patch diff --git a/cyrus-sasl-ac.patch b/cyrus-sasl-ac.patch deleted file mode 100644 index 39a4f11..0000000 --- a/cyrus-sasl-ac.patch +++ /dev/null @@ -1,29 +0,0 @@ ---- cyrus-sasl-2.1.23/cmulocal/bsd_sockets.m4.orig 2011-08-06 20:20:49.396403059 +0200 -+++ cyrus-sasl-2.1.23/cmulocal/bsd_sockets.m4 2011-08-12 19:07:57.869787230 +0200 -@@ -9,14 +9,14 @@ - AC_DEFUN([CMU_SOCKETS], [ - save_LIBS="$LIBS" - LIB_SOCKET="" -- AC_CHECK_FUNC(connect, :, -+ AC_CHECK_FUNC(connect, :,[ - AC_CHECK_LIB(nsl, gethostbyname, - LIB_SOCKET="-lnsl $LIB_SOCKET") - AC_CHECK_LIB(socket, connect, -- LIB_SOCKET="-lsocket $LIB_SOCKET") -+ LIB_SOCKET="-lsocket $LIB_SOCKET")] - ) - LIBS="$LIB_SOCKET $save_LIBS" -- AC_CHECK_FUNC(res_search, :, -+ AC_CHECK_FUNC(res_search, :,[ - LIBS="-lresolv $LIB_SOCKET $save_LIBS" - AC_TRY_LINK([[ - #include -@@ -31,7 +31,7 @@ - res_search( host, C_IN, T_MX, (u_char *)&ans, sizeof(ans)); - return 0; - ]], LIB_SOCKET="$LIB_SOCKET") dnl res_* funcs aren't used anyway -- ) -+ ]) - LIBS="$LIB_SOCKET $save_LIBS" - AC_CHECK_FUNCS(dn_expand dns_lookup) - LIBS="$save_LIBS" diff --git a/cyrus-sasl-automake_1_10.patch b/cyrus-sasl-automake_1_10.patch deleted file mode 100644 index e7e0407..0000000 --- a/cyrus-sasl-automake_1_10.patch +++ /dev/null @@ -1,103 +0,0 @@ -diff -dur -x '*~' cyrus-sasl-2.1.22.orig/plugins/Makefile.am cyrus-sasl-2.1.22/plugins/Makefile.am ---- cyrus-sasl-2.1.22.orig/plugins/Makefile.am 2006-11-08 11:43:22.000000000 +0000 -+++ cyrus-sasl-2.1.22/plugins/Makefile.am 2006-11-08 11:46:10.000000000 +0000 -@@ -82,83 +82,83 @@ - libntlm.la libpassdss.la libsasldb.la libmysql.la libpgsql.la libsqlite.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) - - libmysql_la_SOURCES = mysql.c mysql_init.c $(common_sources) --libmysql_la_LDFLAGS = $(LIB_MYSQL) -version-info $(sql_version) -+libmysql_la_LDFLAGS = $(AM_LDFLAGS) $(LIB_MYSQL) -version-info $(sql_version) - libmysql_la_DEPENDENCIES = $(COMPAT_OBJS) - libmysql_la_LIBADD = $(COMPAT_OBJS) - - libpgsql_la_SOURCES = pgsql.c pgsql_init.c $(common_sources) --libpgsql_la_LDFLAGS = $(LIB_PGSQL) -version-info $(sql_version) -+libpgsql_la_LDFLAGS = $(AM_LDFLAGS) $(LIB_PGSQL) -version-info $(sql_version) - libpgsql_la_DEPENDENCIES = $(COMPAT_OBJS) - libpgsql_la_LIBADD = $(COMPAT_OBJS) - - libsqlite_la_SOURCES = sqlite.c sqlite_init.c $(common_sources) --libsqlite_la_LDFLAGS = $(LIB_SQLITE) -version-info $(sql_version) -+libsqlite_la_LDFLAGS = $(AM_LDFLAGS) $(LIB_SQLITE) -version-info $(sql_version) - libsqlite_la_DEPENDENCIES = $(COMPAT_OBJS) - libsqlite_la_LIBADD = $(COMPAT_OBJS) - diff --git a/cyrus-sasl-cryptedpw.patch b/cyrus-sasl-cryptedpw.patch index 071d7c9..ed83faf 100644 --- a/cyrus-sasl-cryptedpw.patch +++ b/cyrus-sasl-cryptedpw.patch @@ -28,10 +28,9 @@ diff -ruN cyrus-sasl-2.1.20-orig/doc/options.html cyrus-sasl-2.1.20/doc/options. sql_engineSQL plugin Name of SQL engine to use (possible values: 'mysql', 'pgsql', 'sqlite'). mysql -diff -ruN cyrus-sasl-2.1.20-orig/lib/checkpw.c cyrus-sasl-2.1.20/lib/checkpw.c ---- cyrus-sasl-2.1.20-orig/lib/checkpw.c 2004-03-17 14:58:13.000000000 +0100 -+++ cyrus-sasl-2.1.20/lib/checkpw.c 2005-07-10 16:17:11.000000000 +0200 -@@ -94,6 +94,23 @@ +--- cyrus-sasl-2.1.25/lib/checkpw.c.orig 2009-12-03 20:07:01.000000000 +0100 ++++ cyrus-sasl-2.1.25/lib/checkpw.c 2011-09-16 21:27:43.302773195 +0200 +@@ -95,6 +95,23 @@ # endif #endif @@ -55,7 +54,7 @@ diff -ruN cyrus-sasl-2.1.20-orig/lib/checkpw.c cyrus-sasl-2.1.20/lib/checkpw.c /* we store the following secret to check plaintext passwords: * -@@ -143,7 +160,51 @@ +@@ -142,7 +159,51 @@ "*cmusaslsecretPLAIN", NULL }; struct propval auxprop_values[3]; @@ -108,10 +107,10 @@ diff -ruN cyrus-sasl-2.1.20-orig/lib/checkpw.c cyrus-sasl-2.1.20/lib/checkpw.c if (!conn || !userstr) return SASL_BADPARAM; -@@ -180,14 +241,31 @@ - goto done; +@@ -188,14 +249,31 @@ + return SASL_NOUSER; } - + - /* 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 @@ -148,8 +147,8 @@ diff -ruN cyrus-sasl-2.1.20-orig/lib/checkpw.c cyrus-sasl-2.1.20/lib/checkpw.c } else if(auxprop_values[1].name && auxprop_values[1].values && auxprop_values[1].values[0]) { -@@ -975,3 +1053,37 @@ - #endif +@@ -1095,3 +1173,37 @@ + #endif { NULL, NULL } }; + diff --git a/cyrus-sasl-db.patch b/cyrus-sasl-db.patch index ba1f6e0..6de7f43 100644 --- a/cyrus-sasl-db.patch +++ b/cyrus-sasl-db.patch @@ -1,15 +1,14 @@ -diff -urN aaa/cyrus-sasl-2.1.22/cmulocal/berkdb.m4 cyrus-sasl-2.1.22/cmulocal/berkdb.m4 ---- aaa/cyrus-sasl-2.1.22/cmulocal/berkdb.m4 2005-04-26 21:14:07.000000000 +0200 -+++ cyrus-sasl-2.1.22/cmulocal/berkdb.m4 2006-10-02 20:36:17.137852392 +0200 +--- cyrus-sasl-2.1.25/cmulocal/berkdb.m4.orig 2010-01-22 16:12:01.000000000 +0100 ++++ cyrus-sasl-2.1.25/cmulocal/berkdb.m4 2011-09-16 21:30:03.046111208 +0200 @@ -213,7 +213,7 @@ fi saved_LIBS=$LIBS -- for dbname in db-4.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db -+ for dbname in db-5.0 db-4.8 db-4.7 db-4.6 db-4.5 db-4.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db +- for dbname in ${with_bdb} db-4.7 db4.7 db47 db-4.6 db4.6 db46 db-4.5 db4.5 db45 db-4.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db ++ for dbname in ${with_bdb} db-5.1 db-5.0 db-4.8 db-4.7 db4.7 db47 db-4.6 db4.6 db46 db-4.5 db4.5 db45 db-4.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db do LIBS="$saved_LIBS -l$dbname" - AC_TRY_LINK([#include ], + AC_TRY_LINK([#include --- cyrus-sasl-2.1.23/sasldb/db_berkeley.c.orig 2009-04-28 17:09:18.000000000 +0200 +++ cyrus-sasl-2.1.23/sasldb/db_berkeley.c 2010-05-18 21:02:20.418940098 +0200 @@ -100,7 +100,7 @@ diff --git a/cyrus-sasl-digest-commas.patch b/cyrus-sasl-digest-commas.patch deleted file mode 100644 index 137f987..0000000 --- a/cyrus-sasl-digest-commas.patch +++ /dev/null @@ -1,148 +0,0 @@ -Pulled from CVS, Ident strings removed to let the patch apply pretty cleanly. - -=================================================================== -RCS file: /afs/andrew.cmu.edu/system/cvs/src/sasl/plugins/digestmd5.c,v -retrieving revision 1.183 -retrieving revision 1.184 -diff -u -r1.183 -r1.184 ---- src/sasl/plugins/digestmd5.c 2006/11/27 20:41:55 1.183 -+++ src/sasl/plugins/digestmd5.c 2007/02/14 17:16:14 1.184 -@@ -556,12 +556,17 @@ - return SASL_OK; - } - -+static int is_lws_char (char c) -+{ -+ return (c == ' ' || c == HT || c == CR || c == LF); -+} -+ - static char *skip_lws (char *s) - { - if (!s) return NULL; - - /* skipping spaces: */ -- while (s[0] == ' ' || s[0] == HT || s[0] == CR || s[0] == LF) { -+ while (is_lws_char(s[0])) { - if (s[0] == '\0') break; - s++; - } -@@ -750,17 +755,30 @@ - static void get_pair(char **in, char **name, char **value) - { - char *endpair; -- /* int inQuotes; */ - char *curp = *in; - *name = NULL; - *value = NULL; - - if (curp == NULL) return; -- if (curp[0] == '\0') return; -- -- /* skipping spaces: */ -- curp = skip_lws(curp); -- -+ -+ while (curp[0] != '\0') { -+ /* skipping spaces: */ -+ curp = skip_lws(curp); -+ -+ /* 'LWS "," LWS "," ...' is allowed by the DIGEST-MD5 ABNF */ -+ if (curp[0] == ',') { -+ curp++; -+ } else { -+ break; -+ } -+ } -+ -+ if (curp[0] == '\0') { -+ /* End of the string is not an error */ -+ *name = ""; -+ return; -+ } -+ - *name = curp; - - curp = skip_token(curp,1); -@@ -787,22 +805,24 @@ - endpair = unquote (curp); - if (endpair == NULL) { /* Unbalanced quotes */ - *name = NULL; -+ *value = NULL; - return; - } -- if (endpair[0] != ',') { -- if (endpair[0]!='\0') { -- *endpair++ = '\0'; -- } -+ -+ /* An optional LWS is allowed after the value. Skip it. */ -+ if (is_lws_char (endpair[0])) { -+ /* Remove the trailing LWS from the value */ -+ *endpair++ = '\0'; -+ endpair = skip_lws(endpair); - } -- -- endpair = skip_lws(endpair); -- -+ - /* syntax check: MUST be '\0' or ',' */ - if (endpair[0] == ',') { - endpair[0] = '\0'; - endpair++; /* skipping <,> */ - } else if (endpair[0] != '\0') { - *name = NULL; -+ *value = NULL; - return; - } - -@@ -2090,9 +2110,17 @@ - char *name = NULL, *value = NULL; - get_pair(&in, &name, &value); - -- if (name == NULL) -- break; -+ if (name == NULL) { -+ SETERROR(sparams->utils, -+ "Parse error"); -+ result = SASL_BADAUTH; -+ goto FreeAllMem; -+ } - -+ if (*name == '\0') { -+ break; -+ } -+ - /* Extracting parameters */ - - /* -@@ -3222,10 +3250,14 @@ - /* if parse error */ - if (name == NULL) { - params->utils->seterror(params->utils->conn, 0, "Parse error"); -- result = SASL_FAIL; -+ result = SASL_BADAUTH; - goto FreeAllocatedMem; - } - -+ if (*name == '\0') { -+ break; -+ } -+ - if (strcasecmp(name, "realm") == 0) { - nrealm++; - -@@ -3887,9 +3919,14 @@ - if (name == NULL) { - params->utils->seterror(params->utils->conn, 0, - "DIGEST-MD5 Received Garbage"); -+ result = SASL_BADAUTH; - break; - } - -+ if (*name == '\0') { -+ break; -+ } -+ - if (strcasecmp(name, "rspauth") == 0) { - - if (strcmp(text->response_value, value) != 0) { diff --git a/cyrus-sasl-gcc4.patch b/cyrus-sasl-gcc4.patch index eb91307..74b6481 100644 --- a/cyrus-sasl-gcc4.patch +++ b/cyrus-sasl-gcc4.patch @@ -25,23 +25,3 @@ if (dump_stat_info == 0 && dump_user_info == 0) dump_stat_info = 1; ---- cyrus-sasl-2.1.22/plugins/digestmd5.c.orig 2009-07-02 15:21:59.000000000 +0200 -+++ cyrus-sasl-2.1.22/plugins/digestmd5.c 2009-07-02 15:25:38.190152725 +0200 -@@ -2743,7 +2743,7 @@ - "DIGEST-MD5", /* mech_name */ - #ifdef WITH_RC4 - 128, /* max_ssf */ --#elif WITH_DES -+#elif defined(WITH_DES) - 112, - #else - 1, -@@ -4071,7 +4071,7 @@ - "DIGEST-MD5", - #ifdef WITH_RC4 /* mech_name */ - 128, /* max ssf */ --#elif WITH_DES -+#elif defined(WITH_DES) - 112, - #else - 1, diff --git a/cyrus-sasl-gssapi-detect.patch b/cyrus-sasl-gssapi-detect.patch index e3d7591..74002db 100644 --- a/cyrus-sasl-gssapi-detect.patch +++ b/cyrus-sasl-gssapi-detect.patch @@ -1,58 +1,60 @@ ---- cyrus-sasl-2.1.23/cmulocal/sasl2.m4.orig 2010-10-04 01:53:48.000000000 +0200 -+++ cyrus-sasl-2.1.23/cmulocal/sasl2.m4 2010-10-04 02:05:55.252144435 +0200 -@@ -217,11 +217,25 @@ +--- cyrus-sasl-2.1.25/cmulocal/sasl2.m4.orig 2011-09-17 07:31:51.000000000 +0200 ++++ cyrus-sasl-2.1.25/cmulocal/sasl2.m4 2011-09-17 08:24:54.480760162 +0200 +@@ -221,11 +221,25 @@ elif test "$ac_cv_header_gssapi_h" = "yes"; then AC_EGREP_HEADER(GSS_C_NT_HOSTBASED_SERVICE, gssapi.h, [AC_DEFINE(HAVE_GSS_C_NT_HOSTBASED_SERVICE,, -- [Define if your GSSAPI implimentation defines GSS_C_NT_HOSTBASED_SERVICE])]) -+ [Define if your GSSAPI implimentation defines GSS_C_NT_HOSTBASED_SERVICE])], +- [Define if your GSSAPI implementation defines GSS_C_NT_HOSTBASED_SERVICE])]) ++ [Define if your GSSAPI implementation defines GSS_C_NT_HOSTBASED_SERVICE])], + [AC_EGREP_CPP(hostbased_service_gss_nt_yes, + [#include + #ifdef GSS_C_NT_HOSTBASED_SERVICE + hostbased_service_gss_nt_yes + #endif], + [AC_DEFINE(HAVE_GSS_C_NT_HOSTBASED_SERVICE,, -+ [Define if your GSSAPI implimentation defines GSS_C_NT_HOSTBASED_SERVICE])])]) ++ [Define if your GSSAPI implementation defines GSS_C_NT_HOSTBASED_SERVICE])])]) elif test "$ac_cv_header_gssapi_gssapi_h"; then AC_EGREP_HEADER(GSS_C_NT_HOSTBASED_SERVICE, gssapi/gssapi.h, [AC_DEFINE(HAVE_GSS_C_NT_HOSTBASED_SERVICE,, -- [Define if your GSSAPI implimentation defines GSS_C_NT_HOSTBASED_SERVICE])]) -+ [Define if your GSSAPI implimentation defines GSS_C_NT_HOSTBASED_SERVICE])], +- [Define if your GSSAPI implementation defines GSS_C_NT_HOSTBASED_SERVICE])]) ++ [Define if your GSSAPI implementation defines GSS_C_NT_HOSTBASED_SERVICE])], + [AC_EGREP_CPP(hostbased_service_gss_nt_yes, + [#include + #ifdef GSS_C_NT_HOSTBASED_SERVICE + hostbased_service_gss_nt_yes + #endif], + [AC_DEFINE(HAVE_GSS_C_NT_HOSTBASED_SERVICE,, -+ [Define if your GSSAPI implimentation defines GSS_C_NT_HOSTBASED_SERVICE])])]) ++ [Define if your GSSAPI implementation defines GSS_C_NT_HOSTBASED_SERVICE])])]) fi if test "$gss_impl" = "cybersafe" -o "$gss_impl" = "cybersafe03"; then -@@ -236,11 +244,25 @@ +@@ -240,13 +254,27 @@ elif test "$ac_cv_header_gssapi_h" = "yes"; then AC_EGREP_HEADER(GSS_C_NT_USER_NAME, gssapi.h, [AC_DEFINE(HAVE_GSS_C_NT_USER_NAME,, -- [Define if your GSSAPI implimentation defines GSS_C_NT_USER_NAME])]) -+ [Define if your GSSAPI implimentation defines GSS_C_NT_USER_NAME])], +- [Define if your GSSAPI implementation defines GSS_C_NT_USER_NAME])]) ++ [Define if your GSSAPI implementation defines GSS_C_NT_USER_NAME])], + [AC_EGREP_CPP(user_name_yes_gss_nt, + [#include + #ifdef GSS_C_NT_USER_NAME + user_name_yes_gss_nt + #endif], + [AC_DEFINE(HAVE_GSS_C_NT_USER_NAME,, -+ [Define if your GSSAPI implimentation defines GSS_C_NT_USER_NAME])])]) ++ [Define if your GSSAPI implementation defines GSS_C_NT_USER_NAME])])]) + AC_EGREP_HEADER(gss_inquire_attrs_for_mech, gssapi.h, rfc5587=yes) + AC_EGREP_HEADER(gss_inquire_mech_for_saslname, gssapi.h, rfc5801=yes) elif test "$ac_cv_header_gssapi_gssapi_h"; then AC_EGREP_HEADER(GSS_C_NT_USER_NAME, gssapi/gssapi.h, [AC_DEFINE(HAVE_GSS_C_NT_USER_NAME,, -- [Define if your GSSAPI implimentation defines GSS_C_NT_USER_NAME])]) -+ [Define if your GSSAPI implimentation defines GSS_C_NT_USER_NAME])], +- [Define if your GSSAPI implementation defines GSS_C_NT_USER_NAME])]) ++ [Define if your GSSAPI implementation defines GSS_C_NT_USER_NAME])], + [AC_EGREP_CPP(user_name_yes_gss_nt, + [#include + #ifdef GSS_C_NT_USER_NAME + user_name_yes_gss_nt + #endif], + [AC_DEFINE(HAVE_GSS_C_NT_USER_NAME,, -+ [Define if your GSSAPI implimentation defines GSS_C_NT_USER_NAME])])]) ++ [Define if your GSSAPI implementation defines GSS_C_NT_USER_NAME])])]) + AC_EGREP_HEADER(gss_inquire_attrs_for_mech, gssapi/gssapi.h, rfc5587=yes) + AC_EGREP_HEADER(gss_inquire_mech_for_saslname, gssapi.h, rfc5801=yes) fi - fi - diff --git a/cyrus-sasl-gssapi_ext.patch b/cyrus-sasl-gssapi_ext.patch new file mode 100644 index 0000000..5229d7a --- /dev/null +++ b/cyrus-sasl-gssapi_ext.patch @@ -0,0 +1,13 @@ +--- cyrus-sasl-2.1.25/sample/server.c.orig 2010-12-01 15:52:55.000000000 +0100 ++++ cyrus-sasl-2.1.25/sample/server.c 2011-09-17 08:51:22.764146679 +0200 +@@ -85,8 +85,10 @@ + + #ifdef HAVE_GSS_GET_NAME_ATTRIBUTE + #include ++#ifdef HAVE_GSSAPI_GSSAPI_EXT_H + #include + #endif ++#endif + + #include "common.h" + diff --git a/cyrus-sasl-keytab.patch b/cyrus-sasl-keytab.patch index 2bbacaa..7dbecfc 100644 --- a/cyrus-sasl-keytab.patch +++ b/cyrus-sasl-keytab.patch @@ -1,7 +1,6 @@ -diff -u -r cyrus-sasl-2.1.21-orig/cmulocal/sasl2.m4 cyrus-sasl-2.1.21/cmulocal/sasl2.m4 ---- cyrus-sasl-2.1.21-orig/cmulocal/sasl2.m4 2006-08-01 08:29:59.000000000 +0200 -+++ cyrus-sasl-2.1.21/cmulocal/sasl2.m4 2006-08-01 08:31:32.000000000 +0200 -@@ -257,7 +257,21 @@ +--- cyrus-sasl-2.1.25/cmulocal/sasl2.m4.orig 2011-09-02 14:58:00.000000000 +0200 ++++ cyrus-sasl-2.1.25/cmulocal/sasl2.m4 2011-09-16 21:53:44.032825454 +0200 +@@ -268,7 +268,21 @@ cmu_save_LIBS="$LIBS" LIBS="$LIBS $GSSAPIBASE_LIBS" @@ -21,9 +20,9 @@ diff -u -r cyrus-sasl-2.1.21-orig/cmulocal/sasl2.m4 cyrus-sasl-2.1.21/cmulocal/s +],[AC_DEFINE(HAVE_GSSKRB5_REGISTER_ACCEPTOR_IDENTITY,, + [Define if your GSSAPI implimentation defines GSSKRB5_REGISTER_ACCEPTOR_IDENTITY]) +]) - LIBS="$cmu_save_LIBS" - else - AC_MSG_RESULT([disabled]) + AC_CHECK_FUNCS(gss_decapsulate_token) + AC_CHECK_FUNCS(gss_encapsulate_token) + AC_CHECK_FUNCS(gss_oid_equal) diff -u -r cyrus-sasl-2.1.21-orig/plugins/gssapi.c cyrus-sasl-2.1.21/plugins/gssapi.c --- cyrus-sasl-2.1.21-orig/plugins/gssapi.c 2004-07-21 16:39:06.000000000 +0200 +++ cyrus-sasl-2.1.21/plugins/gssapi.c 2006-08-01 08:30:26.000000000 +0200 diff --git a/cyrus-sasl-lt.patch b/cyrus-sasl-lt.patch index 3bf1241..4841417 100644 --- a/cyrus-sasl-lt.patch +++ b/cyrus-sasl-lt.patch @@ -17,9 +17,9 @@ - $(AR) cru .libs/$@ $(SASL_DB_BACKEND_STATIC) - - ---- cyrus-sasl-2.1.21/lib/Makefile.am.orig 2005-05-07 06:54:18.000000000 +0200 -+++ cyrus-sasl-2.1.21/lib/Makefile.am 2005-05-21 01:12:10.739527352 +0200 -@@ -74,25 +74,6 @@ +--- cyrus-sasl-2.1.25/lib/Makefile.am.orig 2011-09-05 16:18:10.000000000 +0200 ++++ cyrus-sasl-2.1.25/lib/Makefile.am 2011-09-16 18:57:36.749138290 +0200 +@@ -76,25 +76,6 @@ install-exec-hook: endif @@ -42,6 +42,6 @@ - rm -f $@ - ln -s .libs/$@ $@ - - $(SASL_STATIC_OBJS): linksrcs + $(SASL_STATIC_SRCS): linksrcs linksrcs: diff --git a/cyrus-sasl-nolibs.patch b/cyrus-sasl-nolibs.patch index a999c97..c87a79e 100644 --- a/cyrus-sasl-nolibs.patch +++ b/cyrus-sasl-nolibs.patch @@ -9,15 +9,15 @@ dnl Check for getaddrinfo GETADDRINFOOBJS="" ---- cyrus-sasl-2.1.21/cmulocal/bsd_sockets.m4.orig 2005-04-26 21:14:07.000000000 +0200 -+++ cyrus-sasl-2.1.21/cmulocal/bsd_sockets.m4 2005-05-20 22:51:01.224089408 +0200 +--- cyrus-sasl-2.1.25/cmulocal/bsd_sockets.m4.orig 2010-02-18 17:19:17.000000000 +0100 ++++ cyrus-sasl-2.1.25/cmulocal/bsd_sockets.m4 2011-09-16 18:55:17.595800296 +0200 @@ -30,7 +30,7 @@ u_char ans[1024]; res_search( host, C_IN, T_MX, (u_char *)&ans, sizeof(ans)); return 0; -]], LIB_SOCKET="-lresolv $LIB_SOCKET") -+]], LIB_SOCKET="$LIB_SOCKET") dnl res_* funcs aren't used anyway - ) ++]], LIB_SOCKET="$LIB_SOCKET") + ]) LIBS="$LIB_SOCKET $save_LIBS" AC_CHECK_FUNCS(dn_expand dns_lookup) --- cyrus-sasl-2.1.10/saslauthd/configure.in.orig Fri Dec 6 17:24:06 2002 diff --git a/cyrus-sasl-parallel-make.patch b/cyrus-sasl-parallel-make.patch index 38e9a24..b82353a 100644 --- a/cyrus-sasl-parallel-make.patch +++ b/cyrus-sasl-parallel-make.patch @@ -12,36 +12,48 @@ diff -ur cyrus-sasl-2.1.23.orig/plugins/Makefile.am cyrus-sasl-2.1.23/plugins/Ma # Compatibility function build rules (they build in lib/) $(COMPAT_OBJS): -diff -ur cyrus-sasl-2.1.23.orig/plugins/makeinit.sh cyrus-sasl-2.1.23/plugins/makeinit.sh ---- cyrus-sasl-2.1.23.orig/plugins/makeinit.sh 2009-12-09 08:19:06.921144397 +0000 -+++ cyrus-sasl-2.1.23/plugins/makeinit.sh 2009-12-09 08:25:31.644442215 +0000 -@@ -1,5 +1,6 @@ --for mech in anonymous crammd5 digestmd5 gssapiv2 kerberos4 login ntlm otp passdss plain srp; do -- -+mech="${1%_init.c}" -+case "$mech" in -+ anonymous|crammd5|digestmd5|gssapiv2|kerberos4|login|ntlm|otp|passdss|plain|srp) +--- cyrus-sasl-2.1.25/plugins/makeinit.sh.orig 2011-09-16 21:54:18.916159956 +0200 ++++ cyrus-sasl-2.1.25/plugins/makeinit.sh 2011-09-17 07:31:12.530652281 +0200 +@@ -1,6 +1,9 @@ +-# mechanism plugins +-for mech in anonymous crammd5 digestmd5 scram gssapiv2 kerberos4 login ntlm otp passdss plain srp gs2; do ++plug="${1%_init.c}" + ++# mechanism plugins ++case "$plug" in ++ anonymous|crammd5|digestmd5|scram|gssapiv2|kerberos4|login|ntlm|otp|passdss|plain|srp|gs2) ++mech="$plug" echo " #include -@@ -43,10 +44,9 @@ +@@ -44,11 +47,13 @@ SASL_CLIENT_PLUG_INIT( $mech ) SASL_SERVER_PLUG_INIT( $mech ) " > ${mech}_init.c -done -- --for mech in sasldb mysql pgsql sqlite ldapdb; do +;; ++esac -+ sasldb|mysql|pgsql|sqlite|ldapdb) + # auxprop plugins +-for auxprop in sasldb mysql pgsql sqlite sqlite3 ldapdb; do +- ++case "$plug" in ++ sasldb|mysql|pgsql|sqlite|sqlite3|ldapdb) ++auxprop=$plug echo " #include -@@ -85,5 +85,6 @@ +@@ -87,7 +92,12 @@ - SASL_AUXPROP_PLUG_INIT( $mech ) - " > ${mech}_init.c + SASL_AUXPROP_PLUG_INIT( $auxprop ) + " > ${auxprop}_init.c -done +;; +esac + # ldapdb is also a canon_user plugin ++case "$plug" in ++ ldapdb) + echo "SASL_CANONUSER_PLUG_INIT( ldapdb )" >> ldapdb_init.c ++;; ++esac diff --git a/cyrus-sasl-split-sql.patch b/cyrus-sasl-split-sql.patch index da75a1a..2a15a9f 100644 --- a/cyrus-sasl-split-sql.patch +++ b/cyrus-sasl-split-sql.patch @@ -1,78 +1,93 @@ ---- cyrus-sasl-2.1.21/configure.in.orig 2005-05-20 23:27:03.114432120 +0200 -+++ cyrus-sasl-2.1.21/configure.in 2005-05-20 23:45:10.826074816 +0200 -@@ -633,10 +633,7 @@ +--- cyrus-sasl-2.1.25/configure.in.orig 2011-09-17 08:56:00.724155985 +0200 ++++ cyrus-sasl-2.1.25/configure.in 2011-09-17 09:03:48.277504973 +0200 +@@ -691,10 +691,7 @@ AC_MSG_CHECKING(SQL) if test "$sql" != no; then AC_MSG_RESULT(enabled) - SASL_MECHS="$SASL_MECHS libsql.la" if test "$enable_static" = yes; then -- SASL_STATIC_SRCS="$SASL_STATIC_SRCS ../plugins/sql.c" +- SASL_STATIC_SRCS="$SASL_STATIC_SRCS \$(top_srcdir)/plugins/sql.c" - SASL_STATIC_OBJS="$SASL_STATIC_OBJS sql.o" AC_DEFINE(STATIC_SQL,[],[Link SQL plugin staticly]) fi else -@@ -683,6 +680,8 @@ +@@ -741,6 +738,8 @@ CMU_ADD_LIBPATH_TO(${with_mysql}, LIB_MYSQL) fi + SASL_MECHS="$SASL_MECHS libmysql.la" -+ SASL_STATIC_OBJS="$SASL_STATIC_OBJS" ++ SASL_STATIC_OBJS="$SASL_STATIC_OBJS mysql.o" LIB_MYSQL_DIR=$LIB_MYSQL LIB_MYSQL="$LIB_MYSQL -lmysqlclient" -@@ -747,6 +746,8 @@ +@@ -805,6 +804,8 @@ CMU_ADD_LIBPATH_TO(${with_pgsql}, LIB_PGSQL) fi + SASL_MECHS="$SASL_MECHS libpgsql.la" -+ SASL_STATIC_OBJS="$SASL_STATIC_OBJS" ++ SASL_STATIC_OBJS="$SASL_STATIC_OBJS pgsql.o" LIB_PGSQL_DIR=$LIB_PGSQL LIB_PGSQL="$LIB_PGSQL -lpq" -@@ -808,6 +809,8 @@ +@@ -866,6 +867,8 @@ LIB_SQLITE="-L${with_sqlite} -R${with_sqlite}" fi + SASL_MECHS="$SASL_MECHS libsqlite.la" -+ SASL_STATIC_OBJS="$SASL_STATIC_OBJS" ++ SASL_STATIC_OBJS="$SASL_STATIC_OBJS sqlite.o" LIB_SQLITE_DIR=$LIB_SQLITE LIB_SQLITE="$LIB_SQLITE -lsqlite" ---- cyrus-sasl-2.1.21/plugins/Makefile.am.orig 2005-05-07 06:54:18.000000000 +0200 -+++ cyrus-sasl-2.1.21/plugins/Makefile.am 2005-05-20 23:53:09.158357256 +0200 -@@ -79,7 +79,7 @@ +@@ -918,6 +921,8 @@ + LIB_SQLITE3="-L${with_sqlite3} -R${with_sqlite3}" + fi + ++ SASL_MECHS="$SASL_MECHS libsqlite3.la" ++ SASL_STATIC_OBJS="$SASL_STATIC_OBJS sqlite3.o" + LIB_SQLITE3_DIR=$LIB_SQLITE3 + LIB_SQLITE3="$LIB_SQLITE3 -lsqlite3" + +--- cyrus-sasl-2.1.25/plugins/Makefile.am.orig 2011-09-05 16:18:10.000000000 +0200 ++++ cyrus-sasl-2.1.25/plugins/Makefile.am 2011-09-16 19:41:32.459226542 +0200 +@@ -66,7 +66,7 @@ sasl_LTLIBRARIES = @SASL_MECHS@ EXTRA_LTLIBRARIES = libplain.la libanonymous.la libkerberos4.la libcrammd5.la \ - libgssapiv2.la libdigestmd5.la liblogin.la libsrp.la libotp.la \ -- libntlm.la libpassdss.la libsasldb.la libsql.la libldapdb.la -+ libntlm.la libpassdss.la libsasldb.la libmysql.la libpgsql.la libsqlite.la libldapdb.la + libgs2.la libgssapiv2.la libdigestmd5.la liblogin.la libsrp.la libotp.la \ +- libscram.la libntlm.la libpassdss.la libsasldb.la libsql.la libldapdb.la ++ libscram.la libntlm.la libpassdss.la libsasldb.la libmysql.la libpgsql.la libsqlite.la libsqlite3.la libldapdb.la libplain_la_SOURCES = plain.c plain_init.c $(common_sources) - libplain_la_LDFLAGS = -version-info $(plain_version) -@@ -147,17 +147,41 @@ + libplain_la_DEPENDENCIES = $(COMPAT_OBJS) +@@ -129,18 +129,51 @@ libldapdb_la_DEPENDENCIES = $(COMPAT_OBJS) - libldapdb_la_LIBADD = $(COMPAT_OBJS) + libldapdb_la_LIBADD = $(LIB_LDAP) $(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 = $(LIB_MYSQL) $(LIB_PGSQL) $(LIB_SQLITE) $(LIB_SQLITE3) \ +- $(AM_LDFLAGS) -libsql_la_DEPENDENCIES = $(COMPAT_OBJS) -libsql_la_LIBADD = $(COMPAT_OBJS) - +libmysql_la_SOURCES = mysql.c mysql_init.c $(common_sources) -+libmysql_la_LDFLAGS = $(LIB_MYSQL) -version-info $(sql_version) ++libmysql_la_LDFLAGS = $(LIB_MYSQL) $(AM_LDFLAGS) +libmysql_la_DEPENDENCIES = $(COMPAT_OBJS) +libmysql_la_LIBADD = $(COMPAT_OBJS) + +libpgsql_la_SOURCES = pgsql.c pgsql_init.c $(common_sources) -+libpgsql_la_LDFLAGS = $(LIB_PGSQL) -version-info $(sql_version) ++libpgsql_la_LDFLAGS = $(LIB_PGSQL) $(AM_LDFLAGS) +libpgsql_la_DEPENDENCIES = $(COMPAT_OBJS) +libpgsql_la_LIBADD = $(COMPAT_OBJS) + +libsqlite_la_SOURCES = sqlite.c sqlite_init.c $(common_sources) -+libsqlite_la_LDFLAGS = $(LIB_SQLITE) -version-info $(sql_version) ++libsqlite_la_LDFLAGS = $(LIB_SQLITE) $(AM_LDFLAGS) +libsqlite_la_DEPENDENCIES = $(COMPAT_OBJS) +libsqlite_la_LIBADD = $(COMPAT_OBJS) + ++libsqlite3_la_SOURCES = sqlite3.c sqlite3_init.c $(common_sources) ++libsqlite3_la_LDFLAGS = $(LIB_SQLITE3) $(AM_LDFLAGS) ++libsqlite3_la_DEPENDENCIES = $(COMPAT_OBJS) ++libsqlite3_la_LIBADD = $(COMPAT_OBJS) ++ +mysql.c: + sed -e 's#HAVE_PGSQL#HAVE_NO_PGSQL#g' -e 's#HAVE_SQLITE#HAVE_NO_SQLITE#g' \ + -e 's#sql_auxprop_plug_init#mysql_auxprop_plug_init#g' \ @@ -84,27 +99,32 @@ + sql.c > pgsql.c + +sqlite.c: -+ sed -e 's#HAVE_MYSQL#HAVE_NO_MYSQL#g' -e 's#HAVE_PGSQL#HAVE_NO_PGSQL#g' \ ++ sed -e 's#HAVE_MYSQL#HAVE_NO_MYSQL#g' -e 's#HAVE_PGSQL#HAVE_NO_PGSQL#g' -e 's#HAVE_SQLITE3#HAVE_NO_SQLITE3#g' \ + -e 's#sql_auxprop_plug_init#sqlite_auxprop_plug_init#g' \ + sql.c > sqlite.c ++ ++sqlite3.c: ++ sed -e 's#HAVE_MYSQL#HAVE_NO_MYSQL#g' -e 's#HAVE_PGSQL#HAVE_NO_PGSQL#g' -e 's#HAVE_SQLITE$$#HAVE_NO_SQLITE#g' \ ++ -e 's#sql_auxprop_plug_init#sqlite3_auxprop_plug_init#g' \ ++ sql.c > sqlite3.c # Instructions for making the _init files - init_src=anonymous_init.c crammd5_init.c digestmd5_init.c gssapiv2_init.c \ + init_src=anonymous_init.c crammd5_init.c digestmd5_init.c scram_init.c gs2_init.c gssapiv2_init.c \ kerberos4_init.c login_init.c plain_init.c srp_init.c otp_init.c ntlm_init.c \ -passdss_init.c sasldb_init.c sql_init.c ldapdb_init.c -+passdss_init.c sasldb_init.c mysql_init.c pgsql_init.c sqlite_init.c ldapdb_init.c ++passdss_init.c sasldb_init.c mysql_init.c pgsql_init.c sqlite_init.c sqlite3_init.c ldapdb_init.c CLEANFILES=$(init_src) ---- cyrus-sasl-2.1.21/plugins/makeinit.sh.orig 2005-02-16 21:49:49.000000000 +0100 -+++ cyrus-sasl-2.1.21/plugins/makeinit.sh 2005-05-20 23:53:28.019489928 +0200 -@@ -45,7 +45,7 @@ - " > ${mech}_init.c +--- cyrus-sasl-2.1.25/plugins/makeinit.sh.orig 2011-05-11 21:25:55.000000000 +0200 ++++ cyrus-sasl-2.1.25/plugins/makeinit.sh 2011-09-16 19:42:14.509227950 +0200 +@@ -47,7 +47,7 @@ done --for mech in sasldb sql ldapdb; do -+for mech in sasldb mysql pgsql sqlite ldapdb; do + # auxprop plugins +-for auxprop in sasldb sql ldapdb; do ++for auxprop in sasldb mysql pgsql sqlite sqlite3 ldapdb; do echo " #include diff --git a/cyrus-sasl.spec b/cyrus-sasl.spec index 90de9b1..7b5268f 100644 --- a/cyrus-sasl.spec +++ b/cyrus-sasl.spec @@ -7,7 +7,8 @@ %bcond_without gssapi # do not enable GSSAPI support for saslauthd and build gssapi plugin %bcond_without mysql # don't build MySQL pluggin %bcond_without pgsql # do not build PostgreSQL pluggin -%bcond_without sqlite # do not enable sqlite plugin +%bcond_without sqlite # do not enable sqlite 2 plugin +%bcond_without sqlite3 # do not enable sqlite 3 plugin %bcond_with authlib # enable courier-authlib (i wasn't able to test it) %bcond_with opie # enable opie plugin %bcond_with srp # build srp pluggin @@ -24,12 +25,12 @@ Summary(pt_BR.UTF-8): Implementação da API SASL Summary(ru.UTF-8): Библиотека Cyrus SASL Summary(uk.UTF-8): Бібліотека Cyrus SASL Name: cyrus-sasl -Version: 2.1.23 -Release: 15 +Version: 2.1.25 +Release: 1 License: distributable Group: Libraries -Source0: ftp://ftp.andrew.cmu.edu/pub/cyrus/%{name}-%{version}.tar.gz -# Source0-md5: 2eb0e48106f0e9cd8001e654f267ecbc +Source0: ftp://ftp.cyrusimap.org/cyrus-sasl/%{name}-%{version}.tar.gz +# Source0-md5: 341cffe829a4d71f2a6503d669d5a946 Source1: saslauthd.init Source2: saslauthd.sysconfig Source3: %{name}.pam @@ -43,17 +44,15 @@ Patch4: %{name}-gcc4.patch Patch5: %{name}-cryptedpw.patch Patch6: %{name}-md5sum-passwords.patch Patch7: %{name}-db.patch -Patch8: %{name}-automake_1_10.patch -Patch9: %{name}-digest-commas.patch -Patch10: %{name}-keytab.patch -Patch11: %{name}-sizes.patch -Patch12: %{name}-nagios-plugin.patch -Patch13: %{name}-parallel-make.patch -Patch14: %{name}-gssapi-detect.patch -Patch15: %{name}-saslauthd-httpform-urlescape.patch -Patch16: %{name}-ac-libs.patch -Patch17: %{name}-pam.patch -Patch18: %{name}-ac.patch +Patch8: %{name}-keytab.patch +Patch9: %{name}-sizes.patch +Patch10: %{name}-nagios-plugin.patch +Patch11: %{name}-parallel-make.patch +Patch12: %{name}-gssapi-detect.patch +Patch13: %{name}-saslauthd-httpform-urlescape.patch +Patch14: %{name}-ac-libs.patch +Patch15: %{name}-pam.patch +Patch16: %{name}-gssapi_ext.patch URL: http://asg.web.cmu.edu/sasl/ BuildRequires: autoconf >= 2.54 BuildRequires: automake >= 1:1.7 @@ -71,6 +70,7 @@ BuildRequires: pam-devel %{?with_pgsql:BuildRequires: postgresql-devel} BuildRequires: rpmbuild(macros) >= 1.268 %{?with_sqlite:BuildRequires: sqlite-devel} +%{?with_sqlite3:BuildRequires: sqlite3-devel >= 3} Requires: pam >= 0.79.0 Requires: %{name}-libs = %{version}-%{release} BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) @@ -177,6 +177,25 @@ Statyczne biblioteki cyrus-sasl. Статичні бібліотеки, необхідні для розробки програм, що використовують Cyrus SASL. +%package anonymous +Summary: Anonymous Cyrus SASL plugin +Summary(pl.UTF-8): Wtyczka anonymous do Cyrus SASL +Summary(pt_BR.UTF-8): Mecanismo SASL ANONYMOUS +Group: Libraries +Requires: %{name} = %{version}-%{release} + +%description anonymous +This plugin implements the SASL ANONYMOUS mechanism, used for +anonymous authentication. + +%description anonymous -l pl.UTF-8 +Wtyczka dodająca obsługę mechanizmu ANONYMOUS do Cyrus SASL. Służy do +anonimowego uwierzytelniania. + +%description anonymous -l pt_BR.UTF-8 +Este plugin implementa o mecanismo SASL ANONYMOUS, usado para +autenticação anônima. + %package cram-md5 Summary: Cram-MD5 Cyrus SASL plugin Summary(pl.UTF-8): Wtyczka Cram-MD5 do Cyrus SASL @@ -229,6 +248,90 @@ provavelmente será o novo sistema de autenticação obrigatório para protocolos novos. Ele é baseado na autenticação md5 digest desenvolvida para HTTP. +%package gssapi +Summary: GSSAPI Cyrus SASL plugin +Summary(pl.UTF-8): Wtyczka GSSAPI do Cyrus SASL +Summary(pt_BR.UTF-8): Mecanismo SASL GSSAPI +Group: Libraries +Requires: %{name} = %{version}-%{release} + +%description gssapi +This plugin implements the SASL GSSAPI mechanism, used for +GSSAPI/Kerberos5 authentication. + +%description gssapi -l pl.UTF-8 +Wtyczka dodająca obsługę mechanizmu SASL GSSAPI, używanego do +uwierzytelniania z użyciem GSSAPI/Kerberos5. + +%description gssapi -l pt_BR.UTF-8 +Este plugin implementa o mecanismo SASL GSSAPI, usado para +autenticação Kerberos/GSSAPI. + +%package login +Summary: Unsupported Login Cyrus SASL plugin +Summary(pl.UTF-8): Nie wspierana wtyczka Login do Cyrus SASL +Group: Libraries +Requires: %{name} = %{version}-%{release} + +%description login +Unsupported LOGIN Cyrus SASL plugin. + +%description login -l pl.UTF-8 +Wtyczka dodająca obsługę nie wspieranego mechanizmu LOGIN do Cyrus +SASL. + +%package mysql +Summary: Cyrus SASL MySQL plugin +Summary(pl.UTF-8): Wtyczka MySQL do Cyrus SASL +Group: Libraries +Requires: %{name} = %{version}-%{release} + +%description mysql +Cyrus SASL MySQL plugin. + +%description mysql -l pl.UTF-8 +Wtyczka MySQL do Cyrus SASL. + +%package opie +Summary: OPIE Cyrus SASL plugin +Summary(pl.UTF-8): Wtyczka OPIE do Cyrus SASL +Summary(pt_BR.UTF-8): Mecanismo SASL OPIE +Group: Libraries +Requires: %{name} = %{version}-%{release} + +%description opie +This plugin implements the SASL OPIE (One Time Password) mechanism. + +%description opie -l pl.UTF-8 +Wtyczka dodająca obsługę mechanizmu OPIE (hasła jednorazowe) do Cyrus +SASL. + +%package otp +Summary: OTP Cyrus SASL plugin +Summary(pl.UTF-8): Wtyczka OTP do Cyrus SASL +Summary(pt_BR.UTF-8): Mecanismo SASL OTP +Group: Libraries +Requires: %{name} = %{version}-%{release} + +%description otp +This plugin implements the SASL OTP (One Time Password) mechanism. + +%description otp -l pl.UTF-8 +Wtyczka dodająca obsługę mechanizmu OTP (hasła jednorazowe) do Cyrus +SASL. + +%package pgsql +Summary: Cyrus SASL PostgreSQL plugin +Summary(pl.UTF-8): Wtyczka PostgreSQL do Cyrus SASL +Group: Libraries +Requires: %{name} = %{version}-%{release} + +%description pgsql +Cyrus SASL PostgreSQL plugin. + +%description pgsql -l pl.UTF-8 +Wtyczka PostgreSQL do Cyrus SASL. + %package plain Summary: Plain Cyrus SASL plugin Summary(pl.UTF-8): Wtyczka plain do Cyrus SASL @@ -254,56 +357,57 @@ mecanismo é útil durante transições para novos mecanismos de segurança, pois é o único esquema que fornece uma cópia da senha do usuário para o servidor. -%package anonymous -Summary: Anonymous Cyrus SASL plugin -Summary(pl.UTF-8): Wtyczka anonymous do Cyrus SASL -Summary(pt_BR.UTF-8): Mecanismo SASL ANONYMOUS +%package sasldb +Summary: Cyrus SASL sasldb plugin +Summary(pl.UTF-8): Wtyczka sasldb do Cyrus SASL Group: Libraries Requires: %{name} = %{version}-%{release} -%description anonymous -This plugin implements the SASL ANONYMOUS mechanism, used for -anonymous authentication. - -%description anonymous -l pl.UTF-8 -Wtyczka dodająca obsługę mechanizmu ANONYMOUS do Cyrus SASL. Służy do -anonimowego uwierzytelniania. +%description sasldb +Cyrus SASL sasldb plugin. -%description anonymous -l pt_BR.UTF-8 -Este plugin implementa o mecanismo SASL ANONYMOUS, usado para -autenticação anônima. +%description sasldb -l pl.UTF-8 +Wtyczka sasldb do Cyrus SASL. -%package gssapi -Summary: GSSAPI Cyrus SASL plugin -Summary(pl.UTF-8): Wtyczka GSSAPI do Cyrus SASL -Summary(pt_BR.UTF-8): Mecanismo SASL GSSAPI +%package scram +Summary: SCRAM Cyrus SASL plugin +Summary(pl.UTF-8): Wtyczka SCRAM do Cyrus SASL +Summary(pt_BR.UTF-8): Mecanismo SASL SCRAM Group: Libraries Requires: %{name} = %{version}-%{release} -%description gssapi -This plugin implements the SASL GSSAPI mechanism, used for -GSSAPI/Kerberos5 authentication. +%description scram +This plugin implements the SASL SCRAM-MD5 mechanism. -%description gssapi -l pl.UTF-8 -Wtyczka dodająca obsługę mechanizmu SASL GSSAPI, używanego do -uwierzytelniania z użyciem GSSAPI/Kerberos5. +%description scram -l pl.UTF-8 +Wtyczka dodająca obsługę mechanizmu SCRAM do Cyrus SASL. -%description gssapi -l pt_BR.UTF-8 -Este plugin implementa o mecanismo SASL GSSAPI, usado para -autenticação Kerberos/GSSAPI. +%description scram -l pt_BR.UTF-8 +Este plugin implementa o mecanismo SASL SCRAM. -%package login -Summary: Unsupported Login Cyrus SASL plugin -Summary(pl.UTF-8): Nie wspierana wtyczka Login do Cyrus SASL +%package sqlite +Summary: Cyrus SQLite 2 PostgreSQL plugin +Summary(pl.UTF-8): Wtyczka SQLite 2 do Cyrus SASL Group: Libraries Requires: %{name} = %{version}-%{release} -%description login -Unsupported LOGIN Cyrus SASL plugin. +%description sqlite +Cyrus SASL SQLite 2 plugin. -%description login -l pl.UTF-8 -Wtyczka dodająca obsługę nie wspieranego mechanizmu LOGIN do Cyrus -SASL. +%description sqlite -l pl.UTF-8 +Wtyczka SQLite 2 do Cyrus SASL. + +%package sqlite3 +Summary: Cyrus SQLite 3 PostgreSQL plugin +Summary(pl.UTF-8): Wtyczka SQLite 3 do Cyrus SASL +Group: Libraries +Requires: %{name} = %{version}-%{release} + +%description sqlite3 +Cyrus SASL SQLite 3 plugin. + +%description sqlite3 -l pl.UTF-8 +Wtyczka SQLite 3 do Cyrus SASL. %package srp Summary: SRP Cyrus SASL plugin @@ -331,34 +435,6 @@ Este plugin implementa o mecanismo SASL SRP, baseado no protocolo SRP detecção de ataques de replay, garantia de integridade e/ou confidencialidade. -%package otp -Summary: OTP Cyrus SASL plugin -Summary(pl.UTF-8): Wtyczka OTP do Cyrus SASL -Summary(pt_BR.UTF-8): Mecanismo SASL OTP -Group: Libraries -Requires: %{name} = %{version}-%{release} - -%description otp -This plugin implements the SASL OTP (One Time Password) mechanism. - -%description otp -l pl.UTF-8 -Wtyczka dodająca obsługę mechanizmu OTP (hasła jednorazowe) do Cyrus -SASL. - -%package opie -Summary: OPIE Cyrus SASL plugin -Summary(pl.UTF-8): Wtyczka OPIE do Cyrus SASL -Summary(pt_BR.UTF-8): Mecanismo SASL OPIE -Group: Libraries -Requires: %{name} = %{version}-%{release} - -%description opie -This plugin implements the SASL OPIE (One Time Password) mechanism. - -%description opie -l pl.UTF-8 -Wtyczka dodająca obsługę mechanizmu OPIE (hasła jednorazowe) do Cyrus -SASL. - %package x509 Summary: x509 Cyrus SASL plugin Summary(pl.UTF-8): Wtyczka x509 do Cyrus SASL @@ -371,21 +447,6 @@ x509 Cyrus SASL plugin. %description x509 -l pl.UTF-8 Wtyczka x509 do Cyrus SASL. -%package saslauthd -Summary: Cyrus SASL authd -Summary(pl.UTF-8): Demon authd do Cyrus SASL -Group: Daemons -Requires(post,preun): /sbin/chkconfig -Requires: %{name} = %{version}-%{release} -Requires: /sbin/chkconfig -Requires: rc-scripts - -%description saslauthd -Cyrus SASL authd. - -%description saslauthd -l pl.UTF-8 -Demon authd do Cyrus SASL. - %package pwcheck Summary: Cyrus SASL pwcheck helper Summary(pl.UTF-8): Program pomocniczy pwcheck do Cyrus SASL @@ -398,53 +459,20 @@ Cyrus SASL pwcheck helper. %description pwcheck -l pl.UTF-8 Program pomocniczy pwcheck do Cyrus SASL. -%package sasldb -Summary: Cyrus SASL sasldb plugin -Summary(pl.UTF-8): Wtyczka sasldb do Cyrus SASL -Group: Libraries -Requires: %{name} = %{version}-%{release} - -%description sasldb -Cyrus SASL sasldb plugin. - -%description sasldb -l pl.UTF-8 -Wtyczka sasldb do Cyrus SASL. - -%package mysql -Summary: Cyrus SASL MySQL plugin -Summary(pl.UTF-8): Wtyczka MySQL do Cyrus SASL -Group: Libraries -Requires: %{name} = %{version}-%{release} - -%description mysql -Cyrus SASL MySQL plugin. - -%description mysql -l pl.UTF-8 -Wtyczka MySQL do Cyrus SASL. - -%package pgsql -Summary: Cyrus SASL PostgreSQL plugin -Summary(pl.UTF-8): Wtyczka PostgreSQL do Cyrus SASL -Group: Libraries -Requires: %{name} = %{version}-%{release} - -%description pgsql -Cyrus SASL PostgreSQL plugin. - -%description pgsql -l pl.UTF-8 -Wtyczka PostgreSQL do Cyrus SASL. - -%package sqlite -Summary: Cyrus SQLite PostgreSQL plugin -Summary(pl.UTF-8): Wtyczka SQLite do Cyrus SASL -Group: Libraries +%package saslauthd +Summary: Cyrus SASL authd +Summary(pl.UTF-8): Demon authd do Cyrus SASL +Group: Daemons +Requires(post,preun): /sbin/chkconfig Requires: %{name} = %{version}-%{release} +Requires: /sbin/chkconfig +Requires: rc-scripts -%description sqlite -Cyrus SASL SQLite plugin. +%description saslauthd +Cyrus SASL authd. -%description sqlite -l pl.UTF-8 -Wtyczka SQLite do Cyrus SASL. +%description saslauthd -l pl.UTF-8 +Demon authd do Cyrus SASL. %package -n nagios-plugin-check_saslauthd Summary: Nagios plugin to check health of saslauthd @@ -471,16 +499,14 @@ Wtyczka Nagiosa do sprawdzania działania saslauthd. %endif %patch7 -p1 %patch8 -p1 -%patch9 -p2 +%patch9 -p1 %patch10 -p1 %patch11 -p1 %patch12 -p1 -%patch13 -p1 +%patch13 -p0 %patch14 -p1 -%patch15 -p0 +%patch15 -p1 %patch16 -p1 -%patch17 -p1 -%patch18 -p1 cd doc echo "cyrus-sasl complies with the following RFCs:" > rfc-compliance @@ -488,9 +514,8 @@ ls rfc*.txt >> rfc-compliance rm -f rfc*.txt cd .. -rm -rf autom4te.cache saslauthd/autom4te.cache -# acinclude.m4 contains only old libtool.m4 -rm -f acinclude.m4 libtool config/libtool.m4 saslauthd/acinclude.m4 +# old version +%{__rm} config/libtool.m4 # update to our paths sed -i -e ' @@ -532,6 +557,7 @@ cd .. %{?with_mysql: --with-mysql=%{_prefix}} \ %{?with_pgsql: --with-pgsql=%{_prefix}} \ %{?with_sqlite: --with-sqlite=%{_prefix}} \ + %{?with_sqlite3: --with-sqlite3=%{_prefix}} \ %{?with_opie: --with-opie=%{_prefix}} \ --with-pam \ %{?with_pwcheck: --with-pwcheck=/var/lib/sasl2} \ @@ -651,6 +677,7 @@ fi %if %{with gssapi} %files gssapi %defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/sasl2/libgs2.so* %attr(755,root,root) %{_libdir}/sasl2/libgssapiv2.so* %endif @@ -666,6 +693,12 @@ fi %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/sasl2/liblogin.so* +%if %{with mysql} +%files mysql +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/sasl2/libmysql.so* +%endif + %files otp %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/sasl2/libotp.so* @@ -676,6 +709,12 @@ fi %attr(755,root,root) %{_libdir}/sasl2/libopie.so* %endif +%if %{with pgsql} +%files pgsql +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/sasl2/libpgsql.so* +%endif + %files plain %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/sasl2/libplain.so* @@ -684,17 +723,9 @@ fi %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/sasl2/libsasldb.so* -%if %{with mysql} -%files mysql +%files scram %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/sasl2/libmysql.so* -%endif - -%if %{with pgsql} -%files pgsql -%defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/sasl2/libpgsql.so* -%endif +%attr(755,root,root) %{_libdir}/sasl2/libscram.so* %if %{with sqlite} %files sqlite @@ -702,6 +733,12 @@ fi %attr(755,root,root) %{_libdir}/sasl2/libsqlite.so* %endif +%if %{with sqlite3} +%files sqlite3 +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/sasl2/libsqlite3.so* +%endif + %if %{with srp} %files srp %defattr(644,root,root,755) -- 2.44.0