Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package courier-imap for openSUSE:Factory checked in at 2022-01-17 22:34:11 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/courier-imap (Old) and /work/SRC/openSUSE:Factory/.courier-imap.new.1892 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "courier-imap" Mon Jan 17 22:34:11 2022 rev:64 rq:946901 version:5.1.7 Changes: -------- --- /work/SRC/openSUSE:Factory/courier-imap/courier-imap.changes 2021-08-03 22:49:06.956469719 +0200 +++ /work/SRC/openSUSE:Factory/.courier-imap.new.1892/courier-imap.changes 2022-01-17 22:34:54.614278074 +0100 @@ -1,0 +2,16 @@ +Mon Jan 17 07:29:18 UTC 2022 - Arjen de Korte <suse+bu...@de-korte.org> + +- update to 5.1.7 + * Fix linking failure on some Linux distributions. + +- update to 5.1.6 + * Fix linking failure on some Linux distributions. + +- update to 5.1.5 + * Fix minor memory leaks. If valgrind is installed, "make check" will + run it to check for memory leaks. + * Convert to PCRE2. + * libcouriertls: use ALARM to kill couriertls if the server process + terminates but openssl hangs trying to shut down the socket. + +------------------------------------------------------------------- Old: ---- courier-imap-5.1.4.tar.bz2 courier-imap-5.1.4.tar.bz2.sig New: ---- courier-imap-5.1.7.tar.bz2 courier-imap-5.1.7.tar.bz2.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ courier-imap.spec ++++++ --- /var/tmp/diff_new_pack.3H4Mts/_old 2022-01-17 22:34:55.278278513 +0100 +++ /var/tmp/diff_new_pack.3H4Mts/_new 2022-01-17 22:34:55.282278516 +0100 @@ -1,7 +1,7 @@ # # spec file for package courier-imap # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,8 +16,10 @@ # +%bcond_with valgrind + Name: courier-imap -Version: 5.1.4 +Version: 5.1.7 Release: 0 Summary: An IMAP and POP3 Server for Maildir MTAs License: GPL-3.0-or-later @@ -48,13 +50,15 @@ BuildRequires: gdbm-devel BuildRequires: libstdc++-devel BuildRequires: ncurses-devel -# openssl itself for /usr/bin/openssl configure check -BuildRequires: postfix +BuildRequires: pcre2-devel BuildRequires: procps BuildRequires: zlib-devel BuildRequires: pkgconfig(libidn) BuildRequires: pkgconfig(openssl) BuildRequires: pkgconfig(systemd) +%if %{with valgrind} +BuildRequires: valgrind +%endif Requires: courier-authlib >= 0.71 Requires: gdbm Requires: openssl @@ -113,7 +117,10 @@ --with-authdaemonvar=%{_rundir}/courier-authlib \ --with-certdb=%{_sysconfdir}/ssl/certs \ --with-certsdir=%{_sysconfdir}/ssl/private \ +%if %{without valgrind} --enable-workarounds-for-imap-client-bugs +%endif + %make_build %install @@ -149,6 +156,11 @@ # SSL state cache directory install -d %{buildroot}%{_localstatedir}/cache/%{name}/ +%if %{with valgrind} +%check +make check +%endif + %pre %service_add_pre courier-imap-gencert.service courier-imap-ssl.service courier-imap.service %service_add_pre courier-pop-gencert.service courier-pop-ssl.service courier-pop.service ++++++ courier-imap-5.1.4.tar.bz2 -> courier-imap-5.1.7.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/configure new/courier-imap-5.1.7/configure --- old/courier-imap-5.1.4/configure 2021-08-01 15:33:30.000000000 +0200 +++ new/courier-imap-5.1.7/configure 2022-01-17 00:42:58.000000000 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for courier-imap 5.1.4. +# Generated by GNU Autoconf 2.69 for courier-imap 5.1.7. # # Report bugs to <courier-i...@lists.sourceforge.net>. # @@ -590,8 +590,8 @@ # Identity of this package. PACKAGE_NAME='courier-imap' PACKAGE_TARNAME='courier-imap' -PACKAGE_VERSION='5.1.4' -PACKAGE_STRING='courier-imap 5.1.4' +PACKAGE_VERSION='5.1.7' +PACKAGE_STRING='courier-imap 5.1.7' PACKAGE_BUGREPORT='courier-i...@lists.sourceforge.net' PACKAGE_URL='' @@ -1371,7 +1371,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures courier-imap 5.1.4 to adapt to many kinds of systems. +\`configure' configures courier-imap 5.1.7 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1442,7 +1442,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of courier-imap 5.1.4:";; + short | recursive ) echo "Configuration of courier-imap 5.1.7:";; esac cat <<\_ACEOF @@ -1568,7 +1568,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -courier-imap configure 5.1.4 +courier-imap configure 5.1.7 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1846,7 +1846,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by courier-imap $as_me 5.1.4, which was +It was created by courier-imap $as_me 5.1.7, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2712,7 +2712,7 @@ # Define the identity of the package. PACKAGE='courier-imap' - VERSION='5.1.4' + VERSION='5.1.7' cat >>confdefs.h <<_ACEOF @@ -13718,7 +13718,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by courier-imap $as_me 5.1.4, which was +This file was extended by courier-imap $as_me 5.1.7, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -13784,7 +13784,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -courier-imap config.status 5.1.4 +courier-imap config.status 5.1.7 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/configure.ac new/courier-imap-5.1.7/configure.ac --- old/courier-imap-5.1.4/configure.ac 2021-08-01 15:32:35.000000000 +0200 +++ new/courier-imap-5.1.7/configure.ac 2022-01-17 00:41:23.000000000 +0100 @@ -1,10 +1,10 @@ dnl Process this file with autoconf to produce a configure script. dnl -dnl Copyright 1998 - 2021 Double Precision, Inc. See COPYING for +dnl Copyright 1998 - 2022 Double Precision, Inc. See COPYING for dnl distribution information. AC_PREREQ(2.59) -AC_INIT(courier-imap, 5.1.4, [courier-i...@lists.sourceforge.net]) +AC_INIT(courier-imap, 5.1.7, [courier-i...@lists.sourceforge.net]) AC_CONFIG_SRCDIR(libs/imap/imapd.c) AC_CONFIG_HEADERS(config.h) AM_INIT_AUTOMAKE diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/courier-imap.spec new/courier-imap-5.1.7/courier-imap.spec --- old/courier-imap-5.1.4/courier-imap.spec 2021-08-01 15:55:37.000000000 +0200 +++ new/courier-imap-5.1.7/courier-imap.spec 2022-01-17 01:07:57.000000000 +0100 @@ -26,13 +26,13 @@ %define _missing_doc_files_terminate_build 1 %define _unpackaged_files_terminate_build 1 -Summary: Courier-IMAP 5.1.4 IMAP server +Summary: Courier-IMAP 5.1.7 IMAP server Name: courier-imap -Version: 5.1.4 +Version: 5.1.7 Release: 1%{courier_release} License: GPL Group: Applications/Mail -Source: %{name}-5.1.4.tar.bz2 +Source: %{name}-5.1.7.tar.bz2 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot Requires: coreutils sed %if %suse_version @@ -92,7 +92,7 @@ # SuSE specific settings %if %suse_version # some templates for SuSE distribs. -%define templdir ${RPM_BUILD_DIR}/%{name}-5.1.4/packaging/suse +%define templdir ${RPM_BUILD_DIR}/%{name}-5.1.7/packaging/suse %define _sysconfdir /etc/courier-imap %define _mandir /usr/share/man %define initlndir /usr/sbin diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/imapd-ssl.rc.in new/courier-imap-5.1.7/imapd-ssl.rc.in --- old/courier-imap-5.1.4/imapd-ssl.rc.in 2021-05-22 03:12:37.000000000 +0200 +++ new/courier-imap-5.1.7/imapd-ssl.rc.in 2021-08-06 12:49:19.000000000 +0200 @@ -74,5 +74,8 @@ stop) @courierlogger@ -pid=$SSLPIDFILE -stop ;; +restart) + @courierlogger@ -pid=$SSLPIDFILE -restart + ;; esac exit 0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/imapd.rc.in new/courier-imap-5.1.7/imapd.rc.in --- old/courier-imap-5.1.4/imapd.rc.in 2021-05-22 03:12:37.000000000 +0200 +++ new/courier-imap-5.1.7/imapd.rc.in 2021-08-06 15:32:58.000000000 +0200 @@ -72,5 +72,8 @@ stop) @courierlogger@ -pid=$PIDFILE -stop ;; +restart) + @courierlogger@ -pid=$PIDFILE -restart + ;; esac exit 0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/imap/ChangeLog new/courier-imap-5.1.7/libs/imap/ChangeLog --- old/courier-imap-5.1.4/libs/imap/ChangeLog 2021-08-01 15:33:18.000000000 +0200 +++ new/courier-imap-5.1.7/libs/imap/ChangeLog 2022-01-17 00:40:43.000000000 +0100 @@ -1,3 +1,29 @@ +5.1.7 + +2022-01-16 Arjen de Korte <build+git...@de-korte.org> + + * Fix linking failure on some Linux distributions. + +5.1.6 + +2022-01-16 Sam Varshavchik <mr...@courier-mta.com> + + * Fix linking failure on some Linux distributions. + +5.1.5 + +2022-01-16 Sam Varshavchik <mr...@courier-mta.com> + + * Fix minor memory leaks. If valgrind is installed, "make check" will + run it to check for memory leaks. + + * Convert to PCRE2. + +2022-01-15 Sam Varshavchik <mr...@courier-mta.com> + + * libcouriertls: use ALARM to kill couriertls if the server process + terminates but openssl hangs trying to shut down the socket. + 5.1.4 2021-08-01 Sam Varshavchik <mr...@courier-mta.com> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/imap/Makefile.am new/courier-imap-5.1.7/libs/imap/Makefile.am --- old/courier-imap-5.1.4/libs/imap/Makefile.am 2021-03-14 17:19:36.000000000 +0100 +++ new/courier-imap-5.1.7/libs/imap/Makefile.am 2022-01-16 17:03:27.000000000 +0100 @@ -13,6 +13,7 @@ courierpop3d.html courierpop3d.8 mkpop3dcert.html mkpop3dcert.8 EXTRA_DIST=testsuite testsuite.txt smaptestsuite smaptestsuite.txt \ + testsuitevalgrind \ BUGS BUGS.html README README.html imapd.authpam \ pop3d.authpam system-auth.authpam system-auth2.authpam\ makeimapaccess.8.in makeimapaccess.html.in \ @@ -212,6 +213,18 @@ @chmod +x testsuitefix.pl LC_ALL=C; export LC_ALL; $(srcdir)/testsuite | ./testsuitefix.pl | sort | cmp -s - $(srcdir)/testsuite.txt LC_ALL=C; export LC_ALL; test "@smap@" = "yes" || exit 0; @SHELL@ $(srcdir)/smaptestsuite | ./testsuitefix.pl | sort | cmp -s - $(srcdir)/smaptestsuite.txt + VALGRIND="`which valgrind`"; test "$$VALGRIND" != "" || exit 0; \ + LC_ALL=C; export LC_ALL; \ + rm -f confmdtesterror; \ + IMAPINVOKE='@SHELL@ $(srcdir)/testsuitevalgrind ./imapd'; export IMAPINVOKE; \ + @SHELL@ -x $(srcdir)/testsuite 2>&1 | tee confmderror.txt; test -f confmdtesterror || exit 0; exit 1 + VALGRIND="`which valgrind`"; test "$$VALGRIND" != "" || exit 0; \ + LC_ALL=C; export LC_ALL; \ + rm -f confmdtesterror; \ + IMAPINVOKE='@SHELL@ $(srcdir)/testsuitevalgrind ./imapd'; export IMAPINVOKE; \ + @SHELL@ -x $(srcdir)/smaptestsuite 2>&1 | tee confmderror.txt; test -f confmdtesterror || exit 0; exit 1 + + rm -f confmdtesterror confmderror.txt rm -rf confmdtest testsuite-imap: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/imap/Makefile.in new/courier-imap-5.1.7/libs/imap/Makefile.in --- old/courier-imap-5.1.4/libs/imap/Makefile.in 2021-08-01 15:33:44.000000000 +0200 +++ new/courier-imap-5.1.7/libs/imap/Makefile.in 2022-01-17 00:43:03.000000000 +0100 @@ -427,6 +427,7 @@ courierpop3d.html courierpop3d.8 mkpop3dcert.html mkpop3dcert.8 EXTRA_DIST = testsuite testsuite.txt smaptestsuite smaptestsuite.txt \ + testsuitevalgrind \ BUGS BUGS.html README README.html imapd.authpam \ pop3d.authpam system-auth.authpam system-auth2.authpam\ makeimapaccess.8.in makeimapaccess.html.in \ @@ -1223,6 +1224,18 @@ @chmod +x testsuitefix.pl LC_ALL=C; export LC_ALL; $(srcdir)/testsuite | ./testsuitefix.pl | sort | cmp -s - $(srcdir)/testsuite.txt LC_ALL=C; export LC_ALL; test "@smap@" = "yes" || exit 0; @SHELL@ $(srcdir)/smaptestsuite | ./testsuitefix.pl | sort | cmp -s - $(srcdir)/smaptestsuite.txt + VALGRIND="`which valgrind`"; test "$$VALGRIND" != "" || exit 0; \ + LC_ALL=C; export LC_ALL; \ + rm -f confmdtesterror; \ + IMAPINVOKE='@SHELL@ $(srcdir)/testsuitevalgrind ./imapd'; export IMAPINVOKE; \ + @SHELL@ -x $(srcdir)/testsuite 2>&1 | tee confmderror.txt; test -f confmdtesterror || exit 0; exit 1 + VALGRIND="`which valgrind`"; test "$$VALGRIND" != "" || exit 0; \ + LC_ALL=C; export LC_ALL; \ + rm -f confmdtesterror; \ + IMAPINVOKE='@SHELL@ $(srcdir)/testsuitevalgrind ./imapd'; export IMAPINVOKE; \ + @SHELL@ -x $(srcdir)/smaptestsuite 2>&1 | tee confmderror.txt; test -f confmdtesterror || exit 0; exit 1 + + rm -f confmdtesterror confmderror.txt rm -rf confmdtest testsuite-imap: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/imap/configure new/courier-imap-5.1.7/libs/imap/configure --- old/courier-imap-5.1.4/libs/imap/configure 2021-08-01 15:33:44.000000000 +0200 +++ new/courier-imap-5.1.7/libs/imap/configure 2022-01-17 00:43:03.000000000 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for courier-imap 5.1.4. +# Generated by GNU Autoconf 2.69 for courier-imap 5.1.7. # # Report bugs to <courier-us...@lists.sourceforge.net>. # @@ -590,8 +590,8 @@ # Identity of this package. PACKAGE_NAME='courier-imap' PACKAGE_TARNAME='courier-imap' -PACKAGE_VERSION='5.1.4' -PACKAGE_STRING='courier-imap 5.1.4' +PACKAGE_VERSION='5.1.7' +PACKAGE_STRING='courier-imap 5.1.7' PACKAGE_BUGREPORT='courier-us...@lists.sourceforge.net' PACKAGE_URL='' @@ -1374,7 +1374,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures courier-imap 5.1.4 to adapt to many kinds of systems. +\`configure' configures courier-imap 5.1.7 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1446,7 +1446,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of courier-imap 5.1.4:";; + short | recursive ) echo "Configuration of courier-imap 5.1.7:";; esac cat <<\_ACEOF @@ -1572,7 +1572,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -courier-imap configure 5.1.4 +courier-imap configure 5.1.7 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2116,7 +2116,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by courier-imap $as_me 5.1.4, which was +It was created by courier-imap $as_me 5.1.7, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3093,7 +3093,7 @@ # Define the identity of the package. PACKAGE='courier-imap' - VERSION='5.1.4' + VERSION='5.1.7' # Some tools Automake needs. @@ -19139,7 +19139,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by courier-imap $as_me 5.1.4, which was +This file was extended by courier-imap $as_me 5.1.7, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -19205,7 +19205,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -courier-imap config.status 5.1.4 +courier-imap config.status 5.1.7 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/imap/configure.ac new/courier-imap-5.1.7/libs/imap/configure.ac --- old/courier-imap-5.1.4/libs/imap/configure.ac 2021-08-01 15:33:18.000000000 +0200 +++ new/courier-imap-5.1.7/libs/imap/configure.ac 2022-01-17 00:40:43.000000000 +0100 @@ -1,10 +1,10 @@ dnl Process this file with autoconf to produce a configure script. dnl dnl -dnl Copyright 1998 - 2021 Double Precision, Inc. See COPYING for +dnl Copyright 1998 - 2022 Double Precision, Inc. See COPYING for dnl distribution information. -AC_INIT(courier-imap, 5.1.4, [courier-us...@lists.sourceforge.net]) +AC_INIT(courier-imap, 5.1.7, [courier-us...@lists.sourceforge.net]) >confdefs.h # Kill PACKAGE_ macros diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/imap/imapd.c new/courier-imap-5.1.7/libs/imap/imapd.c --- old/courier-imap-5.1.4/libs/imap/imapd.c 2021-08-01 15:33:18.000000000 +0200 +++ new/courier-imap-5.1.7/libs/imap/imapd.c 2022-01-16 17:03:27.000000000 +0100 @@ -3850,7 +3850,10 @@ } if (acl_read_folder(&l, mi.homedir, mi.maildir) < 0) + { + maildir_info_destroy(&mi); return -1; + } if (strcasecmp(mi.maildir, INBOX)) { @@ -3875,6 +3878,7 @@ free(p); } maildir_aclt_list_destroy(&l); + maildir_info_destroy(&mi); return -1; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/imap/imaplogin.c new/courier-imap-5.1.7/libs/imap/imaplogin.c --- old/courier-imap-5.1.4/libs/imap/imaplogin.c 2021-03-01 23:59:53.000000000 +0100 +++ new/courier-imap-5.1.7/libs/imap/imaplogin.c 2022-01-16 17:03:27.000000000 +0100 @@ -481,7 +481,7 @@ writes("* OK [CAPABILITY "); imapcapability(); writes("] Courier-IMAP ready. " - "Copyright 1998-2021 Double Precision, Inc. " + "Copyright 1998-2022 Double Precision, Inc. " "See COPYING for distribution information.\r\n"); fprintf(stderr, "DEBUG: Connection, ip=[%s], port=[%s]\n", ip, port); writeflush(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/imap/mailboxlist.c new/courier-imap-5.1.7/libs/imap/mailboxlist.c --- old/courier-imap-5.1.4/libs/imap/mailboxlist.c 2021-05-22 11:00:04.000000000 +0200 +++ new/courier-imap-5.1.7/libs/imap/mailboxlist.c 2022-01-16 17:03:27.000000000 +0100 @@ -96,7 +96,8 @@ if (p && *p) { - const char *q=auth_getoptionenv("sharedgroup"); + char *opt=auth_getoptionenv("sharedgroup"); + const char *q=opt; if (!q) q=""; @@ -106,6 +107,8 @@ write_error_exit(0); strcat(strcpy(filenamep, p), q); + if (opt) + free(opt); } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/imap/smaptestsuite new/courier-imap-5.1.7/libs/imap/smaptestsuite --- old/courier-imap-5.1.4/libs/imap/smaptestsuite 2013-08-25 20:52:10.000000000 +0200 +++ new/courier-imap-5.1.7/libs/imap/smaptestsuite 2022-01-16 17:03:27.000000000 +0100 @@ -1,3 +1,8 @@ +if test "$IMAPINVOKE" = "" +then + IMAPINVOKE="./imapd" +fi + SED='s/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g;s/SNAPSHOT "[^"]*"/SNAPSHOT -SNAPSHOT-/g;s/SNAPSHOTEXISTS "[^"]*"/SNAPSHOTEXISTS -SNAPSHOT-/g;s:^-ERR .*:-ERR --error--:' rm -rf confmdtest @@ -13,7 +18,7 @@ i=`expr $i + 1` done -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest PROTOCOL=SMAP1 ./imapd <<EOF | sed "$SED" +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest PROTOCOL=SMAP1 $IMAPINVOKE <<EOF | sed "$SED" OPEN INBOX STORE 1-10 20-80 90-130 +FLAGS=DELETED EXPUNGE @@ -33,7 +38,7 @@ i=`expr $i + 1` done -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest PROTOCOL=SMAP1 ./imapd <<EOF | sed "$SED" +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest PROTOCOL=SMAP1 $IMAPINVOKE <<EOF | sed "$SED" OPEN INBOX EXPUNGE 1-10 20-80 90-130 LOGOUT @@ -76,7 +81,7 @@ --aaa-- EOF -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest PROTOCOL=SMAP1 ./imapd <<EOF | sed "$SED" +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest PROTOCOL=SMAP1 $IMAPINVOKE <<EOF | sed "$SED" OPEN INBOX FETCH 1 CONTENTS.PEEK=MIME(Mime-Version,Content-Type,Content-Disposition) FETCH 1 CONTENTS=MIME(Mime-Version,Content-Type,Content-Disposition) @@ -172,7 +177,7 @@ --zzz-- EOF -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest PROTOCOL=SMAP1 ./imapd <<EOF | sed "$SED" +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest PROTOCOL=SMAP1 $IMAPINVOKE <<EOF | sed "$SED" open INBOX FETCH 1 CONTENTS=BODY[1.1] FETCH 1 CONTENTS=BODY.DECODED[1.1] @@ -210,7 +215,7 @@ EOF rm -f confmdtest/maildirsize -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest PROTOCOL=SMAP1 ./imapd <<EOF | sed "$SED" +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest PROTOCOL=SMAP1 $IMAPINVOKE <<EOF | sed "$SED" open INBOX COPY 1-10 "" INBOX NOOP @@ -242,9 +247,9 @@ n=`expr $n + 1` done echo "LOGOUT" -) | env IMAP_BROKENUIDV=1 MAILDIR=confmdtest PROTOCOL=SMAP1 ./imapd | sed "$SED" +) | env IMAP_BROKENUIDV=1 MAILDIR=confmdtest PROTOCOL=SMAP1 $IMAPINVOKE | sed "$SED" -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest PROTOCOL=SMAP1 ./imapd <<EOF | sed "$SED" +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest PROTOCOL=SMAP1 $IMAPINVOKE <<EOF | sed "$SED" open INBOX SEARCH UNMARKED NOT DELETED SEARCH MARKED NOT DELETED @@ -304,7 +309,7 @@ Test EOF -env IMAP_BROKENUIDV=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 ./imapd <<EOF | sed "$SED" +env IMAP_BROKENUIDV=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 $IMAPINVOKE <<EOF | sed "$SED" open INBOX COPY 1 "" INBOX NOOP @@ -316,13 +321,13 @@ LOGOUT EOF cat confmdtest/maildirsize -env IMAP_BROKENUIDV=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 ./imapd <<EOF | sed "$SED" +env IMAP_BROKENUIDV=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 $IMAPINVOKE <<EOF | sed "$SED" open INBOX a LOGOUT EOF cat confmdtest/maildirsize -env IMAP_BROKENUIDV=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 ./imapd <<EOF | sed "$SED" +env IMAP_BROKENUIDV=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 $IMAPINVOKE <<EOF | sed "$SED" sopen "" INBOX a NOOP NOOP @@ -343,7 +348,7 @@ EOF echo `ls confmdtest/.a/courierimapsnapshots | wc -l` -env IMAP_BROKENUIDV=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 ./imapd <<EOF | sed "$SED" +env IMAP_BROKENUIDV=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 $IMAPINVOKE <<EOF | sed "$SED" delete INBOX a sopen "" INBOX NOOP @@ -383,7 +388,7 @@ echo `ls confmdtest/courierimapsnapshots | wc -l` touch -t 199901010000 `ls confmdtest/courierimapsnapshots/* | sed -n 1p` -env IMAP_BROKENUIDV=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 ./imapd <<EOF | sed "$SED" +env IMAP_BROKENUIDV=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 $IMAPINVOKE <<EOF | sed "$SED" sopen "" INBOX CLOSE LOGOUT @@ -413,7 +418,7 @@ test message EOF -env IMAP_BROKENUIDV=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 ./imapd <<EOF | sed "$SED" +env IMAP_BROKENUIDV=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 $IMAPINVOKE <<EOF | sed "$SED" open INBOX FETCH 1 CONTENTS=HEADERS FETCH 1 CONTENTS=RAWHEADERS @@ -428,7 +433,7 @@ LOGOUT EOF -env IMAP_KEYWORDS=1 IMAP_BROKENUIDV=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 ./imapd <<EOF >testsuite.tmp +env IMAP_KEYWORDS=1 IMAP_BROKENUIDV=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 $IMAPINVOKE <<EOF >testsuite.tmp open INBOX CREATE INBOX a COPY 1 "" INBOX a @@ -462,7 +467,7 @@ sed "$SED" <testsuite.tmp rm -f testsuite.tmp -env IMAP_BROKENUIDV=1 IMAP_KEYWORDS=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 ./imapd <<EOF | sed "$SED" +env IMAP_BROKENUIDV=1 IMAP_KEYWORDS=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 $IMAPINVOKE <<EOF | sed "$SED" SOPEN $SNAPSHOT INBOX a COPY 1 "" INBOX a NOOP @@ -478,20 +483,20 @@ LOGOUT EOF -env IMAP_BROKENUIDV=1 IMAP_KEYWORDS=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 ./imapd <<EOF | sed "$SED" +env IMAP_BROKENUIDV=1 IMAP_KEYWORDS=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 $IMAPINVOKE <<EOF | sed "$SED" OPEN INBOX STORE 1 KEYWORDS=Junk*Junk LOGOUT EOF -env IMAP_BROKENUIDV=1 IMAP_KEYWORDS=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/' +env IMAP_BROKENUIDV=1 IMAP_KEYWORDS=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/' a1 SELECT INBOX a2 FETCH 1 FLAGS a3 STORE 1 FLAGS (\Seen Abra,Cadabra) a3 LOGOUT EOF -env IMAP_BROKENUIDV=1 IMAP_KEYWORDS=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 ./imapd <<EOF | sed "$SED" +env IMAP_BROKENUIDV=1 IMAP_KEYWORDS=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 $IMAPINVOKE <<EOF | sed "$SED" OPEN INBOX FETCH 1 FLAGS KEYWORDS COPY 1 "" INBOX @@ -523,7 +528,7 @@ IMAP_SHAREDINDEXFILE=`pwd`/confmdtest4/index export IMAP_SHAREDINDEXFILE -env AUTHENTICATED=confmdtest IMAP_BROKENUIDV=1 IMAP_KEYWORDS=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 ./imapd <<EOF | sed "$SED" +env AUTHENTICATED=confmdtest IMAP_BROKENUIDV=1 IMAP_KEYWORDS=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 $IMAPINVOKE <<EOF | sed "$SED" LIST public LIST public a LIST public b @@ -656,7 +661,7 @@ EOF n=`expr $n + 1` done -env AUTHENTICATED=confmdtest IMAP_BROKENUIDV=1 IMAP_KEYWORDS=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 ./imapd <<EOF | sed "$SED" +env AUTHENTICATED=confmdtest IMAP_BROKENUIDV=1 IMAP_KEYWORDS=1 MOVE_EXPUNGE_TO_TRASH=1 MAILDIR=confmdtest PROTOCOL=SMAP1 $IMAPINVOKE <<EOF | sed "$SED" OPEN INBOX EXPUNGE LOGOUT diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/imap/storeinfo.c new/courier-imap-5.1.7/libs/imap/storeinfo.c --- old/courier-imap-5.1.4/libs/imap/storeinfo.c 2013-08-25 20:52:10.000000000 +0200 +++ new/courier-imap-5.1.7/libs/imap/storeinfo.c 2022-01-16 17:03:27.000000000 +0100 @@ -221,6 +221,7 @@ else { struct libmail_kwMessage *kw; + struct libmail_kwMessage *si_kw; new_flags=si->flags; @@ -229,12 +230,16 @@ if (kw && kw->firstEntry == NULL) kw=NULL; - if (si->keywords && si->keywords->firstEntry == NULL) - si->keywords=NULL; + si_kw=si->keywords; - if ((si->keywords && !kw) || - (!si->keywords && kw) || - (si->keywords && kw && libmail_kwmCmp(si->keywords, kw))) + if (si_kw && si_kw->firstEntry == NULL) + { + si_kw=NULL; + } + + if ((si_kw && !kw) || + (!si_kw && kw) || + (si_kw && kw && libmail_kwmCmp(si_kw, kw))) { if (kwAllowed) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/imap/testsuite new/courier-imap-5.1.7/libs/imap/testsuite --- old/courier-imap-5.1.4/libs/imap/testsuite 2018-07-17 03:51:50.000000000 +0200 +++ new/courier-imap-5.1.7/libs/imap/testsuite 2022-01-16 17:03:27.000000000 +0100 @@ -17,6 +17,11 @@ rm -rf confmdtest ../maildir/maildirmake confmdtest || exit 1 +if test "$IMAPINVOKE" = "" +then + IMAPINVOKE="./imapd" +fi + cat >confmdtest/cur/msg1:2,S <<EOF || exit 1 From: John <j...@example.com> To: Steve <st...@example.com>, Tom <t...@example.com> @@ -116,7 +121,7 @@ initinbox="inbox.$initinbox" fi -env IMAP_BROKENUIDV=1 MAILDIR=$initdir ./imapd >confmdtest.stdout <<EOF +env IMAP_BROKENUIDV=1 MAILDIR=$initdir $IMAPINVOKE >confmdtest.stdout <<EOF a001 select $initinbox a logout EOF @@ -125,7 +130,7 @@ inituid -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' a001 select inbox a002 fetch 1 (bodystructure) a003 fetch 1 (body[]) @@ -222,7 +227,7 @@ inituid -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' b000 status inbox ( MESSAGES RECENT UIDNEXT UIDVALIDITY UNSEEN) b001 select inbox b001a status inbox ( MESSAGES RECENT UIDNEXT UIDVALIDITY UNSEEN) @@ -266,7 +271,8 @@ b031 fetch 2 (bodystructure) adone logout EOF -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' + +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' foo select inbox.bozo foo store 1 +flags \Deleted foo expunge @@ -278,7 +284,7 @@ mkdir confmdtest/cur || exit 1 mkdir confmdtest/new || exit 1 echo "10000S,2C" >confmdtest/maildirsize -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' c001 select inbox c002 append inbox {5} test @@ -308,7 +314,7 @@ mkdir confmdtest/cur || exit 1 mkdir confmdtest/new || exit 1 echo "10000S,5C" >confmdtest/maildirsize -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' d001 select inbox d002 append inbox {5} test @@ -319,7 +325,7 @@ ddone logout EOF cat confmdtest/maildirsize -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' e001 select inbox e002 copy 1:2 inbox e003 noop @@ -328,7 +334,7 @@ cat confmdtest/maildirsize ../maildir/maildirmake -f Trash confmdtest || exit 1 -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' f001 select inbox f002 copy 1:2 inbox f002 copy 1:2 inbox.Trash @@ -343,7 +349,7 @@ EOF cat confmdtest/maildirsize echo "Counts:" `ls confmdtest/cur | wc -l` `ls confmdtest/.Trash/cur | wc -l` -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' g001 select inbox g002 select Trash g003 select INBOX.Trash @@ -367,7 +373,7 @@ echo "test `pwd`/confmdtest2" >confmdtest/shared-maildirs -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' h001 list "" "*" h002 list "" "%" h003 list "" "%.%" @@ -422,19 +428,19 @@ ../maildir/maildirmake -f c confmdtest ../maildir/maildirmake -f Trash confmdtest2 -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' ii001 list "" "*" ii002 list "" "*" iidone logout EOF -env IMAP_BROKENUIDV=1 IMAP_CHECK_ALL_FOLDERS=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_BROKENUIDV=1 IMAP_CHECK_ALL_FOLDERS=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' ii003 list "" "*" ii004 list "" "*" iidone logout EOF -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' i001 select shared.test.b i002 select shared.test.a i003 close @@ -518,7 +524,7 @@ inituid -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' T001 select INBOX T002 fetch 1:* (uid body[header.fields(date)]) T003 THREAD ORDEREDSUBJECT US-ASCII ALL @@ -539,7 +545,7 @@ rm -rf confmdtest ../maildir/maildirmake confmdtest || exit 1 ../maildir/maildirmake -f Trash confmdtest || exit 1 -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' J001 list "" "*" J002 lsub "" "*" J003 SUBSCRIBE INBOX @@ -624,7 +630,7 @@ inituid -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' K001 select INBOX K002 THREAD REFERENCES US-ASCII ALL KDONE logout @@ -634,7 +640,7 @@ ../maildir/maildirmake confmdtest || exit 1 ../maildir/maildirmake -f Trash confmdtest || exit 1 -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' L001 CREATE INBOX.a L002 CREATE INBOX.a.a L003 CREATE INBOX.aa @@ -676,7 +682,7 @@ ../maildir/maildirmake confmdtest || exit 1 ../maildir/maildirmake -q 10C confmdtest || exit 1 -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' M001 CREATE INBOX.a M002 APPEND INBOX \Seen {5} test @@ -690,7 +696,7 @@ MDONE logout EOF cat confmdtest/maildirsize -env IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' M009 DELETE INBOX.b MDONE logout EOF @@ -699,7 +705,7 @@ rm -rf confmdtest ../maildir/maildirmake confmdtest || exit 1 -env IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' N001 LIST "" "*" N002 append inbox \Deleted {11} test @@ -716,7 +722,7 @@ rm -rf confmdtest ../maildir/maildirmake confmdtest || exit 1 ../maildir/maildirmake -q10C confmdtest -env IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' O001 append inbox NIL {11} test @@ -733,7 +739,7 @@ cat confmdtest/maildirsize rm -f confmdtest/maildirsize -env IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' p001 SELECT INBOX p002 CREATE INBOX.a p003 COPY 1 INBOX.a @@ -769,7 +775,7 @@ pDONE LOGOUT EOF -env IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' Q001 select INBOX Q002 fetch 1:* FLAGS Q003 status INBOX.Trash MESSAGES @@ -786,7 +792,7 @@ rm -rf confmdtest ../maildir/maildirmake confmdtest || exit 1 -env IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' R001 CREATE INBOX.a R002 LIST (ACL MYRIGHTS POSTADDRESS) "" "*" R003 ACL STORE INBOX owner -t @@ -893,7 +899,7 @@ test EOF -env IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' S001 SELECT INBOX.a S002 COPY 1 INBOX.a S003 NOOP @@ -967,7 +973,7 @@ IMAP_SHAREDINDEXFILE=`pwd`/confmdtest4/index export IMAP_SHAREDINDEXFILE -env AUTHENTICATED=user1 IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest2 ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env AUTHENTICATED=user1 IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest2 $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' T001 ACL STORE INBOX user=user0 +l T002 CREATE INBOX.a T003 ACL STORE INBOX.a anyone +lr @@ -979,7 +985,7 @@ T005 LOGOUT EOF -env AUTHENTICATED=user2 IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest3 ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env AUTHENTICATED=user2 IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest3 $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' T010 ACL STORE INBOX anyone +l T011 CREATE INBOX.a T012 append INBOX.a \Seen {22} @@ -990,14 +996,14 @@ T013 LOGOUT EOF -env AUTHENTICATED=user0 IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env AUTHENTICATED=user0 IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' T020 list(acl) "" "#shared.*" T021 ACL STORE INBOX anyone acdilrsw T022 list(acl) "" "#shared.%" T023 LOGOUT EOF -env AUTHENTICATED=user2 IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest3 ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env AUTHENTICATED=user2 IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest3 $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' T030 LIST "" "#shared.*" T031 LIST "" "#shared.%" T032 LIST "" "#shared.a.%" @@ -1032,7 +1038,7 @@ us??r/3 1 1 `pwd` confmdtest3 EOF -env AUTHENTICATED=user1 IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest2 ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env AUTHENTICATED=user1 IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest2 $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' a ENABLE UTF8=ACCEPT T055 LIST "" "#shared.b.*" T056 LIST "" "#shared.b.%" @@ -1041,7 +1047,7 @@ TDONE LOGOUT EOF -env IMAP_SHAREDMUNGENAMES=1 AUTHENTICATED=user1 IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest2 ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_SHAREDMUNGENAMES=1 AUTHENTICATED=user1 IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest2 $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' a ENABLE UTF8=ACCEPT T055 LIST "" "#shared.b.*" T056 LIST "" "#shared.b.%" @@ -1065,7 +1071,7 @@ echo "usergroup1 1 1 `pwd` confmdtest" >confmdtest4/indexgroup1 || exit 1 -env IMAP_SHAREDMUNGENAMES=1 AUTHENTICATED=user1 OPTIONS=sharedgroup=group1 IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest2 ./imapd <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' +env IMAP_SHAREDMUNGENAMES=1 AUTHENTICATED=user1 OPTIONS=sharedgroup=group1 IMAP_KEYWORDS=1 IMAP_MOVE_EXPUNGE_TO_TRASH=1 IMAP_BROKENUIDV=1 MAILDIR=confmdtest2 $IMAPINVOKE <<EOF | sed 's/UIDVALIDITY [0-9]*/UIDVALIDITY/;s/INTERNALDATE "[^"]*"/INTERNALDATE -DATE-/g' T072 LIST "" #shared.* T073 LIST(ACL) "" INBOX T074 ACL STORE INBOX user=fred lr diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/imap/testsuitevalgrind new/courier-imap-5.1.7/libs/imap/testsuitevalgrind --- old/courier-imap-5.1.4/libs/imap/testsuitevalgrind 1970-01-01 01:00:00.000000000 +0100 +++ new/courier-imap-5.1.7/libs/imap/testsuitevalgrind 2022-01-16 17:03:27.000000000 +0100 @@ -0,0 +1,5 @@ +#! /bin/bash + +valgrind --tool=memcheck --leak-check=yes --error-exitcode=1 "$@" && exit 0 +>confmdtesterror +exit 0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/maildir/Makefile.am new/courier-imap-5.1.7/libs/maildir/Makefile.am --- old/courier-imap-5.1.4/libs/maildir/Makefile.am 2021-03-14 17:19:36.000000000 +0100 +++ new/courier-imap-5.1.7/libs/maildir/Makefile.am 2022-01-17 00:40:43.000000000 +0100 @@ -3,6 +3,7 @@ # distribution information. AM_CXXFLAGS=@COURIER_UNICODE_CXXFLAGS@ +AM_CFLAGS=@PCRE_CFLAGS@ noinst_LTLIBRARIES=libmaildir.la @@ -15,17 +16,19 @@ maildirwatch.html maildirwatch.1 \ maildirkw.html maildirkw.1 -if HAVE_SGML -BUILT_SOURCES=maildirsharedrc.h maildirfilterconfig.h quotawarnmsg.h \ - mailbot.h autoresponsequota.h $(noinst_DATA) $(DOCS) -else BUILT_SOURCES=maildirsharedrc.h maildirfilterconfig.h quotawarnmsg.h \ - mailbot.h autoresponsequota.h $(noinst_DATA) + mailbot.h autoresponsequota.h $(noinst_DATA) libmaildir.deps + +if HAVE_SGML +BUILT_SOURCES += $(DOCS) endif noinst_DATA=deliverquota.html maildirmake.html deliverquota.8 maildirmake.1 \ maildiracl.html maildiracl.1 +libmaildir.deps: config.status + echo "$(PCRE_LDFLAGS)" >libmaildir.deps + libmaildir_la_SOURCES=autoresponse.c autoresponse.h \ maildiraclt.c maildiraclt.h \ maildircache.c maildircache.h \ @@ -64,12 +67,12 @@ ../rfc822/librfc822.la maildirmake_LDADD=libmaildir.la \ ../numlib/libnumlib.la \ - ../rfc822/librfc822.la -lcourier-unicode @LIBPCRE@ + ../rfc822/librfc822.la -lcourier-unicode @PCRE_LDFLAGS@ maildirmake_LDFLAGS=-static testmaildirfilter_SOURCES=maildirfiltertypelist.h testmaildirfilter.c testmaildirfilter_DEPENDENCIES=libmaildir.la ../numlib/libnumlib.la -testmaildirfilter_LDADD=libmaildir.la ../numlib/libnumlib.la -lcourier-unicode @LIBPCRE@ +testmaildirfilter_LDADD=libmaildir.la ../numlib/libnumlib.la -lcourier-unicode @PCRE_LDFLAGS@ testmaildirfilter_LDFLAGS=-static maildirkwtest_SOURCES=maildirkwtest.c @@ -141,7 +144,7 @@ check-am: @SHELL@ $(srcdir)/testsuite 2>&1 | cmp - $(srcdir)/testsuite.txt - test "@LIBPCRE@" != "" || exit 0 ; @SHELL@ $(srcdir)/testsuite2 2>&1 | cmp - $(srcdir)/testsuite2.txt + test "@PCRE_LDFLAGS@" != "" || exit 0 ; @SHELL@ $(srcdir)/testsuite2 2>&1 | cmp - $(srcdir)/testsuite2.txt LC_ALL=C; export LC_ALL; ./maildirkwtest | cmp -s - $(srcdir)/maildirkwtest.txt LC_ALL=C; export LC_ALL; ./maildiraclttest ./testmaildirsearch iso-8859-1 needle haystack; test $$? = 2 && exit 0; exit 1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/maildir/Makefile.in new/courier-imap-5.1.7/libs/maildir/Makefile.in --- old/courier-imap-5.1.4/libs/maildir/Makefile.in 2021-05-22 20:41:09.000000000 +0200 +++ new/courier-imap-5.1.7/libs/maildir/Makefile.in 2022-01-17 00:43:02.000000000 +0100 @@ -95,6 +95,7 @@ build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ +@HAVE_SGML_TRUE@am__append_1 = $(DOCS) noinst_PROGRAMS = deliverquota$(EXEEXT) maildirmake$(EXEEXT) \ testmaildirfilter$(EXEEXT) maildirkwtest$(EXEEXT) \ maildirkw$(EXEEXT) maildiracl$(EXEEXT) \ @@ -360,7 +361,6 @@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ -LIBPCRE = @LIBPCRE@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ @@ -385,6 +385,9 @@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PCRE2 = @PCRE2@ +PCRE_CFLAGS = @PCRE_CFLAGS@ +PCRE_LDFLAGS = @PCRE_LDFLAGS@ PERL = @PERL@ RANLIB = @RANLIB@ SED = @SED@ @@ -451,6 +454,7 @@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ AM_CXXFLAGS = @COURIER_UNICODE_CXXFLAGS@ +AM_CFLAGS = @PCRE_CFLAGS@ noinst_LTLIBRARIES = libmaildir.la DOCS = deliverquota.html.in deliverquota.8.in \ maildiracl.1.in \ @@ -460,12 +464,9 @@ maildirwatch.html maildirwatch.1 \ maildirkw.html maildirkw.1 -@HAVE_SGML_FALSE@BUILT_SOURCES = maildirsharedrc.h maildirfilterconfig.h quotawarnmsg.h \ -@HAVE_SGML_FALSE@ mailbot.h autoresponsequota.h $(noinst_DATA) - -@HAVE_SGML_TRUE@BUILT_SOURCES = maildirsharedrc.h maildirfilterconfig.h quotawarnmsg.h \ -@HAVE_SGML_TRUE@ mailbot.h autoresponsequota.h $(noinst_DATA) $(DOCS) - +BUILT_SOURCES = maildirsharedrc.h maildirfilterconfig.h quotawarnmsg.h \ + mailbot.h autoresponsequota.h $(noinst_DATA) libmaildir.deps \ + $(am__append_1) noinst_DATA = deliverquota.html maildirmake.html deliverquota.8 maildirmake.1 \ maildiracl.html maildiracl.1 @@ -505,12 +506,12 @@ maildirmake_LDADD = libmaildir.la \ ../numlib/libnumlib.la \ - ../rfc822/librfc822.la -lcourier-unicode @LIBPCRE@ + ../rfc822/librfc822.la -lcourier-unicode @PCRE_LDFLAGS@ maildirmake_LDFLAGS = -static testmaildirfilter_SOURCES = maildirfiltertypelist.h testmaildirfilter.c testmaildirfilter_DEPENDENCIES = libmaildir.la ../numlib/libnumlib.la -testmaildirfilter_LDADD = libmaildir.la ../numlib/libnumlib.la -lcourier-unicode @LIBPCRE@ +testmaildirfilter_LDADD = libmaildir.la ../numlib/libnumlib.la -lcourier-unicode @PCRE_LDFLAGS@ testmaildirfilter_LDFLAGS = -static maildirkwtest_SOURCES = maildirkwtest.c maildirkwtest_LDADD = libmaildir.la @@ -1236,6 +1237,9 @@ .PRECIOUS: Makefile +libmaildir.deps: config.status + echo "$(PCRE_LDFLAGS)" >libmaildir.deps + README.maildirquota.txt: README.maildirquota.html $(HTML2TXT) README.maildirquota.html >README.maildirquota.txt @@ -1262,7 +1266,7 @@ check-am: @SHELL@ $(srcdir)/testsuite 2>&1 | cmp - $(srcdir)/testsuite.txt - test "@LIBPCRE@" != "" || exit 0 ; @SHELL@ $(srcdir)/testsuite2 2>&1 | cmp - $(srcdir)/testsuite2.txt + test "@PCRE_LDFLAGS@" != "" || exit 0 ; @SHELL@ $(srcdir)/testsuite2 2>&1 | cmp - $(srcdir)/testsuite2.txt LC_ALL=C; export LC_ALL; ./maildirkwtest | cmp -s - $(srcdir)/maildirkwtest.txt LC_ALL=C; export LC_ALL; ./maildiraclttest ./testmaildirsearch iso-8859-1 needle haystack; test $$? = 2 && exit 0; exit 1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/maildir/config.h.in new/courier-imap-5.1.7/libs/maildir/config.h.in --- old/courier-imap-5.1.4/libs/maildir/config.h.in 2021-05-22 20:41:20.000000000 +0200 +++ new/courier-imap-5.1.7/libs/maildir/config.h.in 2022-01-16 17:04:33.000000000 +0100 @@ -34,11 +34,8 @@ /* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */ #undef HAVE_NDIR_H -/* Define to 1 if you have the <pcre.h> header file. */ -#undef HAVE_PCRE_H - -/* Define to 1 if you have the <pcre/pcre.h> header file. */ -#undef HAVE_PCRE_PCRE_H +/* Whether the pcre library was detected */ +#undef HAVE_PCRE2 /* Define to 1 if you have the `readlink' function. */ #undef HAVE_READLINK diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/maildir/configure new/courier-imap-5.1.7/libs/maildir/configure --- old/courier-imap-5.1.4/libs/maildir/configure 2021-05-22 20:41:09.000000000 +0200 +++ new/courier-imap-5.1.7/libs/maildir/configure 2022-01-16 17:04:26.000000000 +0100 @@ -640,7 +640,9 @@ HAVE_SGML_TRUE MAILBOT COURIER_UNICODE_CXXFLAGS -LIBPCRE +PCRE_CFLAGS +PCRE_LDFLAGS +PCRE2 PERL CXXCPP am__fastdepCXX_FALSE @@ -17354,7 +17356,7 @@ fi -for ac_header in sys/stat.h sys/wait.h fcntl.h unistd.h sysexits.h utime.h pcre.h pcre/pcre.h +for ac_header in sys/stat.h sys/wait.h fcntl.h unistd.h sysexits.h utime.h do : as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" @@ -17368,19 +17370,55 @@ done -ac_fn_c_check_header_mongrel "$LINENO" "pcre.h" "ac_cv_header_pcre_h" "$ac_includes_default" -if test "x$ac_cv_header_pcre_h" = xyes; then : - LIBPCRE=-lpcre +# Extract the first word of "pcre2-config", so it can be a program name with args. +set dummy pcre2-config; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_PCRE2+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$PCRE2"; then + ac_cv_prog_PCRE2="$PCRE2" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_PCRE2="yes" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + test -z "$ac_cv_prog_PCRE2" && ac_cv_prog_PCRE2="no" +fi +fi +PCRE2=$ac_cv_prog_PCRE2 +if test -n "$PCRE2"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PCRE2" >&5 +$as_echo "$PCRE2" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi -ac_fn_c_check_header_mongrel "$LINENO" "pcre/pcre.h" "ac_cv_header_pcre_pcre_h" "$ac_includes_default" -if test "x$ac_cv_header_pcre_pcre_h" = xyes; then : - LIBPCRE=-lpcre -fi +if test "$PCRE2" = "yes" +then +cat >>confdefs.h <<_ACEOF +#define HAVE_PCRE2 1 +_ACEOF + PCRE_LDFLAGS="`pcre2-config --libs8`" + PCRE_CFLAGS="`pcre2-config --cflags`" +fi diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/maildir/configure.ac new/courier-imap-5.1.7/libs/maildir/configure.ac --- old/courier-imap-5.1.4/libs/maildir/configure.ac 2021-05-22 11:00:04.000000000 +0200 +++ new/courier-imap-5.1.7/libs/maildir/configure.ac 2021-11-29 11:00:06.000000000 +0100 @@ -47,15 +47,18 @@ AC_HEADER_DIRENT AC_HEADER_STDC AC_HEADER_TIME -AC_CHECK_HEADERS(sys/stat.h sys/wait.h fcntl.h unistd.h sysexits.h utime.h pcre.h pcre/pcre.h) +AC_CHECK_HEADERS(sys/stat.h sys/wait.h fcntl.h unistd.h sysexits.h utime.h) -AC_CHECK_HEADER([pcre.h], - [LIBPCRE=-lpcre]) +AC_CHECK_PROG(PCRE2, pcre2-config, yes, no) -AC_CHECK_HEADER([pcre/pcre.h], - [LIBPCRE=-lpcre]) - -AC_SUBST(LIBPCRE) +if test "$PCRE2" = "yes" +then + AC_DEFINE_UNQUOTED(HAVE_PCRE2,1,[Whether the pcre library was detected]) + PCRE_LDFLAGS="`pcre2-config --libs8`" + PCRE_CFLAGS="`pcre2-config --cflags`" +fi +AC_SUBST(PCRE_LDFLAGS) +AC_SUBST(PCRE_CFLAGS) AC_HEADER_SYS_WAIT diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/maildir/maildirfilter.c new/courier-imap-5.1.7/libs/maildir/maildirfilter.c --- old/courier-imap-5.1.4/libs/maildir/maildirfilter.c 2018-07-17 03:39:43.000000000 +0200 +++ new/courier-imap-5.1.7/libs/maildir/maildirfilter.c 2021-11-29 11:00:06.000000000 +0100 @@ -26,13 +26,9 @@ #define EX_SOFTWARE 70 #endif -#if HAVE_PCRE_H -#include <pcre.h> -#else -#if HAVE_PCRE_PCRE_H -#include <pcre/pcre.h> -#define HAVE_PCRE_H 1 -#endif +#if HAVE_PCRE2 +#define PCRE2_CODE_UNIT_WIDTH 8 +#include <pcre2.h> #endif #if HAVE_SYS_STAT_H @@ -331,24 +327,25 @@ ++c; } -#if HAVE_PCRE_H +#if HAVE_PCRE2 switch (type) { case contains: case startswith: case endswith: { - const char *errptr; - int errindex; - - pcre *p=pcre_compile(value, PCRE_UTF8, - &errptr, - &errindex, - 0); - + int errcode; + PCRE2_SIZE errindex; + pcre2_code *pcre_regexp= + pcre2_compile((PCRE2_SPTR8)value, + PCRE2_ZERO_TERMINATED, + PCRE2_UTF, + &errcode, + &errindex, + NULL); - if (p == NULL) + if (pcre_regexp == NULL) return -1; - pcre_free(p); + pcre2_code_free(pcre_regexp); } break; default: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/maildir/maildirquota.c new/courier-imap-5.1.7/libs/maildir/maildirquota.c --- old/courier-imap-5.1.4/libs/maildir/maildirquota.c 2017-06-18 10:00:25.000000000 +0200 +++ new/courier-imap-5.1.7/libs/maildir/maildirquota.c 2022-01-16 17:03:27.000000000 +0100 @@ -500,10 +500,12 @@ if (rename(newmaildirsizename, info->maildirsizefile)) { unlink(newmaildirsizename); + free(newmaildirsizename); close(maildirsize_fd); errno=EIO; return (-1); } + free(newmaildirsizename); info->recalculation_needed=0; info->size.nbytes=maildirsize_size; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/rfc1035/rfc1035mxlist.c new/courier-imap-5.1.7/libs/rfc1035/rfc1035mxlist.c --- old/courier-imap-5.1.4/libs/rfc1035/rfc1035mxlist.c 2019-10-03 10:00:38.000000000 +0200 +++ new/courier-imap-5.1.7/libs/rfc1035/rfc1035mxlist.c 2021-11-12 11:00:08.000000000 +0100 @@ -382,6 +382,12 @@ replyp->allrrs[index]->rr.mx.mx_label, mxname) == 0) continue; + if (*mxname == 0) /* MX . */ + { + rfc1035_replyfree(replyp); + return (RFC1035_MX_NONE); + } + switch (add_arecords(res, list, replyp, replyp->allrrs[index]->rr.mx.preference, mxname, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/rfc1035/rfc1035mxlist.h new/courier-imap-5.1.7/libs/rfc1035/rfc1035mxlist.h --- old/courier-imap-5.1.4/libs/rfc1035/rfc1035mxlist.h 2014-09-12 10:00:09.000000000 +0200 +++ new/courier-imap-5.1.7/libs/rfc1035/rfc1035mxlist.h 2021-11-12 11:00:08.000000000 +0100 @@ -24,6 +24,7 @@ #define RFC1035_MX_HARDERR 2 /* Hard DNS error */ #define RFC1035_MX_INTERNAL 3 /* Internal library error */ #define RFC1035_MX_BADDNS 4 /* Bad DNS records */ +#define RFC1035_MX_NONE 5 /* "MX ." record */ struct rfc1035_mxlist { struct rfc1035_mxlist *next; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/tcpd/libcouriertls.c new/courier-imap-5.1.7/libs/tcpd/libcouriertls.c --- old/courier-imap-5.1.4/libs/tcpd/libcouriertls.c 2021-03-01 23:59:53.000000000 +0100 +++ new/courier-imap-5.1.7/libs/tcpd/libcouriertls.c 2022-01-16 17:03:27.000000000 +0100 @@ -67,11 +67,15 @@ #define SSL_OP_NO_RENEGOTIATION 0 #endif +#ifndef SSL_OP_CIPHER_SERVER_PREFERENCE +#define SSL_OP_CIPHER_SERVER_PREFERENCE 0 +#endif + struct proto_ops op_list[] = { #ifdef SSL_OP_NO_TLSv1 #ifdef SSL_OP_NO_TLSv1_1 - { "TLSv1.2++", &SSLv23_method, SSL_OP_ALL|SSL_OP_NO_SSLv2|SSL_OP_NO_SSLv3|SSL_OP_NO_TLSv1|SSL_OP_NO_TLSv1_1|SSL_OP_NO_RENEGOTIATION }, + { "TLSv1.2++", &SSLv23_method, SSL_OP_ALL|SSL_OP_NO_SSLv2|SSL_OP_NO_SSLv3|SSL_OP_NO_TLSv1|SSL_OP_NO_TLSv1_1|SSL_OP_NO_RENEGOTIATION|SSL_OP_CIPHER_SERVER_PREFERENCE}, { "TLSv1.2+", &SSLv23_method, SSL_OP_ALL|SSL_OP_NO_SSLv2|SSL_OP_NO_SSLv3|SSL_OP_NO_TLSv1|SSL_OP_NO_TLSv1_1 }, { "TLSv1.2", &SSLv23_method, SSL_OP_ALL|SSL_OP_NO_SSLv2|SSL_OP_NO_SSLv3|SSL_OP_NO_TLSv1|SSL_OP_NO_TLSv1_1 }, #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/libs/tcpd/starttls.c new/courier-imap-5.1.7/libs/tcpd/starttls.c --- old/courier-imap-5.1.4/libs/tcpd/starttls.c 2021-03-01 23:59:53.000000000 +0100 +++ new/courier-imap-5.1.7/libs/tcpd/starttls.c 2022-01-16 17:03:27.000000000 +0100 @@ -20,6 +20,7 @@ #include <stdlib.h> #include <ctype.h> #include <netdb.h> +#include <signal.h> #if HAVE_DIRENT_H #include <dirent.h> #define NAMLEN(dirent) strlen((dirent)->d_name) @@ -526,6 +527,21 @@ return (1); } +static void child_handler() +{ + alarm(10); +} + +static void trapexit() +{ + struct sigaction sa; + + memset(&sa, 0, sizeof(sa)); + + sa.sa_handler=child_handler; + sigaction(SIGCHLD, &sa, NULL); +} + static int dossl(int fd, int argn, int argc, char **argv) { ssl_context ctx; @@ -563,6 +579,7 @@ } startclient(argn, argc, argv, fd, &stdin_fd, &stdout_fd); + trapexit(); if (username) libmail_changeusername(username, 0); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/courier-imap-5.1.4/rpm.release new/courier-imap-5.1.7/rpm.release --- old/courier-imap-5.1.4/rpm.release 2021-08-01 15:55:37.000000000 +0200 +++ new/courier-imap-5.1.7/rpm.release 2022-01-17 01:07:57.000000000 +0100 @@ -1,2 +1,2 @@ -VERSION=5.1.4 +VERSION=5.1.7 RELEASE=1