diff -urNp -x '*.orig' cyrus-sasl-2.1.27.org/configure.ac cyrus-sasl-2.1.27/configure.ac --- cyrus-sasl-2.1.27.org/configure.ac 2021-09-28 23:58:29.385997985 +0200 +++ cyrus-sasl-2.1.27/configure.ac 2021-09-28 23:58:29.489331023 +0200 @@ -752,10 +752,7 @@ AC_ARG_ENABLE(sql, [ --enable-sql 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 \$(top_srcdir)/plugins/sql.c" - SASL_STATIC_OBJS="$SASL_STATIC_OBJS sql.o" AC_DEFINE(STATIC_SQL,[],[Link SQL plugin statically]) fi else @@ -813,6 +810,8 @@ case "$with_mysql" in CMU_ADD_LIBPATH_TO(${with_mysql}, LIB_MYSQL) fi + SASL_MECHS="$SASL_MECHS libmysql.la" + SASL_STATIC_OBJS="$SASL_STATIC_OBJS mysql.o" LIB_MYSQL_DIR=$LIB_MYSQL LIB_MYSQL="$LIB_MYSQL -lmysqlclient" @@ -889,6 +888,8 @@ case "$with_pgsql" in CMU_ADD_LIBPATH_TO(${with_pgsql}, LIB_PGSQL) fi + SASL_MECHS="$SASL_MECHS libpgsql.la" + SASL_STATIC_OBJS="$SASL_STATIC_OBJS pgsql.o" LIB_PGSQL_DIR=$LIB_PGSQL LIB_PGSQL="$LIB_PGSQL -lpq" @@ -952,6 +953,8 @@ case "$with_sqlite" in CMU_ADD_LIBPATH_TO(${with_sqlite}, LIB_SQLITE) fi + SASL_MECHS="$SASL_MECHS libsqlite.la" + SASL_STATIC_OBJS="$SASL_STATIC_OBJS sqlite.o" LIB_SQLITE_DIR=$LIB_SQLITE LIB_SQLITE="$LIB_SQLITE -lsqlite" @@ -1004,6 +1007,8 @@ case "$with_sqlite3" in CMU_ADD_LIBPATH_TO(${with_sqlite3}, LIB_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" diff -urNp -x '*.orig' cyrus-sasl-2.1.27.org/plugins/Makefile.am cyrus-sasl-2.1.27/plugins/Makefile.am --- cyrus-sasl-2.1.27.org/plugins/Makefile.am 2018-10-05 16:40:16.000000000 +0200 +++ cyrus-sasl-2.1.27/plugins/Makefile.am 2021-09-28 23:58:29.489331023 +0200 @@ -68,7 +68,7 @@ plugin_LTLIBRARIES = @SASL_MECHS@ EXTRA_LTLIBRARIES = libplain.la libanonymous.la libkerberos4.la libcrammd5.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 libplain_la_DEPENDENCIES = $(COMPAT_OBJS) $(PLUGIN_COMMON_OBJS) @@ -131,18 +131,51 @@ libldapdb_la_SOURCES = ldapdb.c ldapdb_i libldapdb_la_DEPENDENCIES = $(COMPAT_OBJS) $(PLUGIN_COMMON_OBJS) libldapdb_la_LIBADD = $(LIB_LDAP) $(COMPAT_OBJS) $(PLUGIN_COMMON_OBJS) -libsql_la_SOURCES = sql.c sql_init.c -libsql_la_LDFLAGS = $(LIB_MYSQL) $(LIB_PGSQL) $(LIB_SQLITE) $(LIB_SQLITE3) \ - $(AM_LDFLAGS) -libsql_la_DEPENDENCIES = $(COMPAT_OBJS) $(PLUGIN_COMMON_OBJS) -libsql_la_LIBADD = $(COMPAT_OBJS) $(PLUGIN_COMMON_OBJS) - +libmysql_la_SOURCES = mysql.c mysql_init.c +libmysql_la_LDFLAGS = $(LIB_MYSQL) $(AM_LDFLAGS) +libmysql_la_DEPENDENCIES = $(COMPAT_OBJS) $(PLUGIN_COMMON_OBJS) +libmysql_la_LIBADD = $(COMPAT_OBJS) $(PLUGIN_COMMON_OBJS) + +libpgsql_la_SOURCES = pgsql.c pgsql_init.c +libpgsql_la_LDFLAGS = $(LIB_PGSQL) $(AM_LDFLAGS) +libpgsql_la_DEPENDENCIES = $(COMPAT_OBJS) $(PLUGIN_COMMON_OBJS) +libpgsql_la_LIBADD = $(COMPAT_OBJS) $(PLUGIN_COMMON_OBJS) + +libsqlite_la_SOURCES = sqlite.c sqlite_init.c +libsqlite_la_LDFLAGS = $(LIB_SQLITE) $(AM_LDFLAGS) +libsqlite_la_DEPENDENCIES = $(COMPAT_OBJS) $(PLUGIN_COMMON_OBJS) +libsqlite_la_LIBADD = $(COMPAT_OBJS) $(PLUGIN_COMMON_OBJS) + +libsqlite3_la_SOURCES = sqlite3.c sqlite3_init.c +libsqlite3_la_LDFLAGS = $(LIB_SQLITE3) $(AM_LDFLAGS) +libsqlite3_la_DEPENDENCIES = $(COMPAT_OBJS) $(PLUGIN_COMMON_OBJS) +libsqlite3_la_LIBADD = $(COMPAT_OBJS) $(PLUGIN_COMMON_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' \ + sql.c > mysql.c + +pgsql.c: + sed -e 's#HAVE_MYSQL#HAVE_NO_MYSQL#g' -e 's#HAVE_SQLITE#HAVE_NO_SQLITE#g' \ + -e 's#sql_auxprop_plug_init#pgsql_auxprop_plug_init#g' \ + sql.c > pgsql.c + +sqlite.c: + 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 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 sqlite3_init.c ldapdb_init.c CLEANFILES=$(init_src) diff -urNp -x '*.orig' cyrus-sasl-2.1.27.org/plugins/makeinit.sh cyrus-sasl-2.1.27/plugins/makeinit.sh --- cyrus-sasl-2.1.27.org/plugins/makeinit.sh 2018-09-20 17:44:51.000000000 +0200 +++ cyrus-sasl-2.1.27/plugins/makeinit.sh 2021-09-28 23:58:29.489331023 +0200 @@ -51,7 +51,7 @@ SASL_SERVER_PLUG_INIT( $mech ) done # auxprop plugins -for auxprop in sasldb sql ldapdb; do +for auxprop in sasldb mysql pgsql sqlite sqlite3 ldapdb; do if [ ${plugin_init} = "${auxprop}_init.c" ];then echo "