Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package libassuan for openSUSE:Factory checked in at 2023-06-21 22:37:27 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libassuan (Old) and /work/SRC/openSUSE:Factory/.libassuan.new.15902 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libassuan" Wed Jun 21 22:37:27 2023 rev:51 rq:1093890 version:2.5.6 Changes: -------- --- /work/SRC/openSUSE:Factory/libassuan/libassuan.changes 2021-04-10 15:27:01.766353902 +0200 +++ /work/SRC/openSUSE:Factory/.libassuan.new.15902/libassuan.changes 2023-06-21 22:37:42.465594317 +0200 @@ -1,0 +2,10 @@ +Tue Jun 20 07:12:11 UTC 2023 - Pedro Monreal <pmonr...@suse.com> + +- Update to 2.5.6: + * Fix logging of confidential data. [rA0fc31770fa] + * Fix memory wiping. [T5977] + * Fix macOS build problem. [T5440,T5610] + * Upgrade autoconf stuff. + * Release-info: https://dev.gnupg.org/T6542 + +------------------------------------------------------------------- Old: ---- libassuan-2.5.5.tar.bz2 libassuan-2.5.5.tar.bz2.sig New: ---- libassuan-2.5.6.tar.bz2 libassuan-2.5.6.tar.bz2.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libassuan.spec ++++++ --- /var/tmp/diff_new_pack.UlQjjg/_old 2023-06-21 22:37:43.089598072 +0200 +++ /var/tmp/diff_new_pack.UlQjjg/_new 2023-06-21 22:37:43.093598096 +0200 @@ -1,7 +1,7 @@ # # spec file for package libassuan # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: libassuan -Version: 2.5.5 +Version: 2.5.6 Release: 0 Summary: IPC library used by GnuPG version 2 License: GPL-3.0-or-later AND LGPL-2.1-or-later @@ -72,6 +72,7 @@ %post -n libassuan0 -p /sbin/ldconfig %postun -n libassuan0 -p /sbin/ldconfig + %post devel %install_info --info-dir=%{_infodir} %{_infodir}/assuan.info.gz ++++++ libassuan-2.5.5.tar.bz2 -> libassuan-2.5.6.tar.bz2 ++++++ ++++ 7619 lines of diff (skipped) ++++ retrying with extended exclude list diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/ChangeLog new/libassuan-2.5.6/ChangeLog --- old/libassuan-2.5.5/ChangeLog 2021-03-22 13:23:54.000000000 +0100 +++ new/libassuan-2.5.6/ChangeLog 2023-06-19 10:44:15.000000000 +0200 @@ -1,3 +1,107 @@ +2023-06-19 Werner Koch <w...@gnupg.org> + + Release 2.5.6. + + commit 6b50ee6bcdd6aa81bd7cc3fb2379864c3ed479b8 + + +2023-06-16 Werner Koch <w...@gnupg.org> + + Flush data before clearing the confidential flag. + + commit 0fc31770fa6277c57940b774d4049d7a3ad148e8 + * src/context.c (assuan_end_confidential): Flush data. + +2023-06-16 NIIBE Yutaka <gni...@fsij.org> + + build: Fix listing m4 files. + + commit e686c85e207e52130388c68018ac2e75b7fb574a + * m4/Makefile.am (EXTRA_DIST): Add ax_cc_for_build.m4 and + gpg-error.m4. Remove sys_socket_h.m4. + + build: Better cross build support. + + commit 1939b040ca2301270a7f5be4e3049c551bf73dab + * configure.ac: Use AX_CC_FOR_BUILD. + * src/Makefile.am: Use EXEEXT_FOR_BUILD. + * m4/ax_cc_for_build.m4: New from libgpg-error. + + tests: Use -no-fast-install LDFLAGS for Windows. + + commit 32d9abf299ec5b217c5751d8dcf8cbb5989bdd9c + * tests/Makefile.am [HAVE_W32_SYSTEM] (AM_LDFLAGS): Conditionalize. + + build: Update gpg-error.m4. + + commit dbd5c48a36e6b6a28d12119a43ff2a65208dc152 + * m4/gpg-error.m4: Update from libgpg-error master. + + build: Update gpg-error.m4. + + commit d7533c4333bfa93537eaf639fd18a6b1377df11e + * m4/gpg-error.m4: Update from libgpg-error 1.46. + + build: Update config.guess, config.sub, and config.rpath. + + commit 84d5349d23031c13762a0d59c105a9dec8cc9e90 + * build-aux/config.guess: Update from upstream. + * build-aux/config.sub: Ditto. + * build-aux/config.rpath: Update from gettext 0.21. + + build: Update gpg-error.m4. + + commit f16fcb14c3661ff94e06612f3a3e46a5e98a62a8 + * m4/gpg-error.m4: Update from libgpg-error. + + Don't access NULL by wipememory. + + commit ff1f8ee7a8fb9729e08fb51419de9a8c93a4fdb6 + * src/assuan-inquire.c (assuan_inquire): Check mb->buf. + + client: Wipe the inbound buffer when CONFIDENTIAL. + + commit aac300389210031588a1f4c6d7f1efb4b45c4c95 + * src/client.c (assuan_transact): Wipe the buffer. + + server,client: Wipe the outbound buffer when CONFIDENTIAL. + + commit 5ac7e6ba19fa5ed472b50c1b12ba7cf94015c734 + * src/assuan-buffer.c (assuan_send_data): Wipe the buffer. + + server: Wipe out the memory used by assuan_inquire if CONFIDENTIAL. + + commit 4bfcd8a0f6f314581b40bed0cffe5f91441f4dff + * src/assuan-inquire.c (assuan_inquire): Wipe the memory and + inbound buffer. + +2021-12-22 NIIBE Yutaka <gni...@fsij.org> + + build: Update for newer autoconf. + + commit 66d5fe281c8dcbbbc13edc8630aaf631b6cb5e85 + * configure.ac (AC_PREREQ): Require >= 2.69. + (AC_HEADER_STDC): Remove. + * m4/sys_socket_h.m4: Remove. + +2021-12-17 NIIBE Yutaka <gni...@fsij.org> + + build,w32: Update configure script. + + commit 576fbb033805b077ffe2270cb8a17c3f2dc830ae + * configure.ac: Don't use gl_HEADER_SYS_SOCKET, but check winsock2.h. + +2021-11-10 NIIBE Yutaka <gni...@fsij.org> + + libtool: Link without -flat_namespace for macOS. + + commit e342b58b6230d22c1225ed680f05e9d134a8f657 + * m4/libtool.m4: Not setting 10.0 to MACOSX_DEPLOYMENT_TARGET when not + defined. Only specify -flat_namespace to linker for specific + (older) versions and hosts. + +2021-08-05 NIIBE Yutaka <gni...@fsij.org> + + build: Simplify configure.ac. + + commit 669c76ee28c0b10c418bb47f95b1401631478c5a + * configure.ac (AC_CHECK_HEADERS): Remove string.h. + +2021-05-27 NIIBE Yutaka <gni...@fsij.org> + + build: _DARWIN_C_SOURCE should be 1. + + commit 335030e3d204afe33873df83c29302ff1caa0217 + * configure.ac (*-apple-darwin*): Set _DARWIN_C_SOURCE 1. + +2021-04-21 NIIBE Yutaka <gni...@fsij.org> + + build: Update gpg-error.m4. + + commit 8ec3e9f1dd88e14f42f31e8692a8664bd894226b + * m4/gpg-error.m4: Update from libgpg-error. + 2021-03-22 Werner Koch <w...@gnupg.org> Release 2.5.5. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/NEWS new/libassuan-2.5.6/NEWS --- old/libassuan-2.5.5/NEWS 2021-03-22 13:04:38.000000000 +0100 +++ new/libassuan-2.5.6/NEWS 2023-06-19 09:46:08.000000000 +0200 @@ -1,3 +1,17 @@ +Noteworthy changes in version 2.5.6 (2023-06-19) [C8/A8/R6] +------------------------------------------------ + + * Fix logging of confidential data. [rA0fc31770fa] + + * Fix memory wiping. [T5977] + + * Fix macOS build problem. [T5440,T5610] + + * Upgrade autoconf stuff. + + Release-info: https://dev.gnupg.org/T6542 + + Noteworthy changes in version 2.5.5 (2021-03-22) [C8/A8/R5] ------------------------------------------------ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/VERSION new/libassuan-2.5.6/VERSION --- old/libassuan-2.5.5/VERSION 2021-03-22 13:11:16.000000000 +0100 +++ new/libassuan-2.5.6/VERSION 2023-06-19 10:43:04.000000000 +0200 @@ -1 +1 @@ -2.5.5 +2.5.6 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/build-aux/config.rpath new/libassuan-2.5.6/build-aux/config.rpath --- old/libassuan-2.5.5/build-aux/config.rpath 2015-01-28 09:59:11.000000000 +0100 +++ new/libassuan-2.5.6/build-aux/config.rpath 2023-06-16 10:07:13.000000000 +0200 @@ -2,7 +2,7 @@ # Output a system dependent set of variables, describing how to set the # run time search path of shared libraries in an executable. # -# Copyright 1996-2013 Free Software Foundation, Inc. +# Copyright 1996-2020 Free Software Foundation, Inc. # Taken from GNU libtool, 2001 # Originally by Gordon Matzigkeit <g...@gnu.ai.mit.edu>, 1996 # @@ -367,11 +367,7 @@ dgux*) hardcode_libdir_flag_spec='-L$libdir' ;; - freebsd2.2*) - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - ;; - freebsd2*) + freebsd2.[01]*) hardcode_direct=yes hardcode_minus_L=yes ;; @@ -548,13 +544,11 @@ dgux*) library_names_spec='$libname$shrext' ;; + freebsd[23].*) + library_names_spec='$libname$shrext$versuffix' + ;; freebsd* | dragonfly*) - case "$host_os" in - freebsd[123]*) - library_names_spec='$libname$shrext$versuffix' ;; - *) - library_names_spec='$libname$shrext' ;; - esac + library_names_spec='$libname$shrext' ;; gnu*) library_names_spec='$libname$shrext' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/configure.ac new/libassuan-2.5.6/configure.ac --- old/libassuan-2.5.5/configure.ac 2021-03-22 13:06:26.000000000 +0100 +++ new/libassuan-2.5.6/configure.ac 2023-06-19 10:41:36.000000000 +0200 @@ -22,7 +22,7 @@ # Process this file with autoconf to produce a configure script. -AC_PREREQ([2.61]) +AC_PREREQ([2.69]) min_automake_version="1.14" # To build a release you need to create a tag with the version number @@ -33,7 +33,7 @@ m4_define([mym4_package],[libassuan]) m4_define([mym4_major], [2]) m4_define([mym4_minor], [5]) -m4_define([mym4_micro], [5]) +m4_define([mym4_micro], [6]) # To start a new development series, i.e a new major or minor number # you need to mark an arbitrary commit before the first beta release @@ -63,7 +63,7 @@ # LIBASSUAN_LT_CURRENT=8 LIBASSUAN_LT_AGE=8 -LIBASSUAN_LT_REVISION=5 +LIBASSUAN_LT_REVISION=6 # If the API is changed in an incompatible way: increment the next counter. LIBASSUAN_CONFIG_API_VERSION=2 @@ -145,7 +145,7 @@ ;; *-apple-darwin*) AC_DEFINE(_XOPEN_SOURCE, 500, Activate POSIX interface on MacOS X) - AC_DEFINE(_DARWIN_C_SOURCE, 900000L, + AC_DEFINE(_DARWIN_C_SOURCE, 1, Expose all libc features (__DARWIN_C_FULL)) ;; esac @@ -189,21 +189,8 @@ AC_PROG_MAKE_SET #AC_ARG_PROGRAM -# We need to compile and run a program on the build machine. A -# comment in libgpg-error says that the AC_PROG_CC_FOR_BUILD macro in -# the AC archive is broken for autoconf 2.57. Given that there is no -# newer version of that macro, we assume that it is also broken for -# autoconf 2.61 and thus we use a simple but usually sufficient -# approach. -AC_MSG_CHECKING(for cc for build) -if test "$cross_compiling" = "yes"; then - CC_FOR_BUILD="${CC_FOR_BUILD-cc}" -else - CC_FOR_BUILD="${CC_FOR_BUILD-$CC}" -fi -AC_MSG_RESULT($CC_FOR_BUILD) -AC_ARG_VAR(CC_FOR_BUILD,[build system C compiler]) - +# We need to compile and run a program on the build machine. +AX_CC_FOR_BUILD if test "$GCC" = yes; then CFLAGS="$CFLAGS -Wall -Wcast-align -Wshadow -Wstrict-prototypes" @@ -270,6 +257,7 @@ if test "$have_w32ce_system" = yes; then AC_DEFINE(HAVE_W32CE_SYSTEM,1,[Defined if we run on WindowsCE]) fi + AC_CHECK_HEADERS([winsock2.h]) fi AM_CONDITIONAL(HAVE_W32_SYSTEM, test "$have_w32_system" = yes) AM_CONDITIONAL(HAVE_W32CE_SYSTEM, test "$have_w32ce_system" = yes) @@ -336,8 +324,7 @@ # # Checks for header files. # -AC_HEADER_STDC -AC_CHECK_HEADERS([string.h locale.h sys/uio.h stdint.h inttypes.h \ +AC_CHECK_HEADERS([locale.h sys/uio.h stdint.h inttypes.h \ sys/types.h sys/stat.h unistd.h sys/time.h fcntl.h \ sys/select.h ucred.h sys/ucred.h]) AC_TYPE_UINTPTR_T @@ -350,7 +337,6 @@ AC_C_INLINE AC_TYPE_SIZE_T -gl_HEADER_SYS_SOCKET gl_TYPE_SOCKLEN_T if test $check_descriptor_passing != yes; then diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/doc/assuan.info new/libassuan-2.5.6/doc/assuan.info --- old/libassuan-2.5.5/doc/assuan.info 2021-03-22 13:23:54.000000000 +0100 +++ new/libassuan-2.5.6/doc/assuan.info 2023-06-19 10:44:15.000000000 +0200 @@ -7,8 +7,8 @@ This file documents the use and the internals of Assuan. - This is Edition 2.5.5, last updated 7 December 2017, of 'The -'Developing with Assuan' Manual', for Version 2.5.5. + This is Edition 2.5.6, last updated 16 June 2023, of 'The 'Developing +with Assuan' Manual', for Version 2.5.6. Published by the Free Software Foundation 51 Franklin Street, Fifth Floor @@ -370,35 +370,35 @@ path (via the '-I' option). However, the path to the include file is determined at the time the -source is configured. To solve this problem, 'libassuan' ships with a -small helper program 'libassuan-config' that knows the path to the -include file and other configuration options. The options that need to -be added to the compiler invocation at compile time are output by the -'--cflags' option to 'libassuan-config'. The following example shows -how it can be used at the command line: - - gcc -c foo.c $(libassuan-config --cflags) - - Adding the output of 'libassuan-config --cflags' to the compiler's -command line will ensure that the compiler can find the 'assuan.h' -header file. +source is configured. To solve this problem, 'libassuan' ships with +'libassuan.pc' file, that knows the path to the include file and other +configuration options. The options that need to be added to the +compiler invocation at compile time are output by the '--cflags' option +to 'pkg-config libassuan'. The following example shows how it can be +used at the command line: + + gcc -c foo.c $(pkg-config --cflags libassuan) + + Adding the output of 'pkg-config --cflags libassuan' to the +compiler's command line will ensure that the compiler can find the +'assuan.h' header file. A similar problem occurs when linking the program with the library. Again, the compiler/linker has to find the library files. For this to work, the path to the library files has to be added to the library search path (via the '-L' option). For this, the option '--libs' to -'libassuan-config' can be used. For convenience, this option also +'pkg-config libassuan' can be used. For convenience, this option also outputs all other options that are required to link the program with the 'libassuan' libraries (in particular, the '-lassuan' option). The example shows how to link 'foo.o' with the 'libassuan' library to a program 'foo'. - gcc -o foo foo.o $(libassuan-config --libs) + gcc -o foo foo.o $(pkg-config --libs libassuan) You can also combine both examples to a single command by specifying -both options to 'libassuan-config': +both options to 'pkg-config libassuan': - gcc -o foo foo.c $(libassuan-config --cflags --libs) + gcc -o foo foo.c $(pkg-config --cflags --libs libassuan) File: assuan.info, Node: Automake, Next: Multi Threading, Prev: Building sources, Up: Preparation @@ -408,8 +408,10 @@ It is much easier if you use GNU Automake instead of writing your own Makefiles. If you do that you do not have to worry about finding and -invoking the 'libassuan-config' script at all. 'libassuan' provides an -Automake macro that does all the work for you. +invoking the 'pkg-config' script at all. + + You can use 'PKG_CHECK_MODULES' macro, or, 'libassuan' also provides +an Automake macro that does all the work for you. -- Macro: AM_PATH_LIBASSUAN ([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) @@ -3148,7 +3150,7 @@ [index] * Menu: -* AM_PATH_LIBASSUAN: Automake. (line 11) +* AM_PATH_LIBASSUAN: Automake. (line 13) * assuan_accept: Server code. (line 267) * assuan_begin_confidential: Contexts. (line 110) * assuan_close_input_fd: Utilities. (line 93) @@ -3256,38 +3258,38 @@ Tag Table: -Node: Top907 -Node: Introduction1973 -Node: Assuan4228 -Node: Implementation5272 -Node: Server responses6451 -Node: Client requests8741 -Node: Error codes11779 -Node: Preparation12118 -Node: Header12693 -Node: Building sources13479 -Node: Automake15378 -Node: Multi Threading16526 -Node: Generalities17485 -Node: Data Types17889 -Node: Initializing the library18997 -Ref: function assuan_set_gpg_err_source21693 -Node: Default Log Handler24012 -Node: Contexts25778 -Ref: function assuan_new26358 -Node: Reading and Writing36930 -Node: Client code40405 -Ref: function assuan_sendfd45402 -Ref: function assuan_receivefd45993 -Node: Server code46368 -Node: External I/O Loop58493 -Node: External I/O Loop Client60318 -Node: External I/O Loop Server63403 -Node: Utilities67987 -Ref: Utilities-Footnote-176088 -Node: Socket wrappers76152 -Node: Library Copying83133 -Node: Copying111245 -Node: Index148759 +Node: Top904 +Node: Introduction1970 +Node: Assuan4225 +Node: Implementation5269 +Node: Server responses6448 +Node: Client requests8738 +Node: Error codes11776 +Node: Preparation12115 +Node: Header12690 +Node: Building sources13476 +Node: Automake15382 +Node: Multi Threading16575 +Node: Generalities17534 +Node: Data Types17938 +Node: Initializing the library19046 +Ref: function assuan_set_gpg_err_source21742 +Node: Default Log Handler24061 +Node: Contexts25827 +Ref: function assuan_new26407 +Node: Reading and Writing36979 +Node: Client code40454 +Ref: function assuan_sendfd45451 +Ref: function assuan_receivefd46042 +Node: Server code46417 +Node: External I/O Loop58542 +Node: External I/O Loop Client60367 +Node: External I/O Loop Server63452 +Node: Utilities68036 +Ref: Utilities-Footnote-176137 +Node: Socket wrappers76201 +Node: Library Copying83182 +Node: Copying111294 +Node: Index148808 End Tag Table diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/doc/assuan.texi new/libassuan-2.5.6/doc/assuan.texi --- old/libassuan-2.5.5/doc/assuan.texi 2017-12-07 13:23:45.000000000 +0100 +++ new/libassuan-2.5.6/doc/assuan.texi 2023-06-16 10:33:14.000000000 +0200 @@ -464,18 +464,18 @@ file search path (via the @option{-I} option). However, the path to the include file is determined at the time the -source is configured. To solve this problem, @code{libassuan} ships with -a small helper program @command{libassuan-config} that knows the path to -the include file and other configuration options. The options that need -to be added to the compiler invocation at compile time are output by the -@option{--cflags} option to @command{libassuan-config}. The following +source is configured. To solve this problem, @code{libassuan} ships +with @code{libassuan.pc} file, that knows the path to the include file +and other configuration options. The options that need to be added to +the compiler invocation at compile time are output by the +@option{--cflags} option to @command{pkg-config libassuan}. The following example shows how it can be used at the command line: @example -gcc -c foo.c $(libassuan-config --cflags) +gcc -c foo.c $(pkg-config --cflags libassuan) @end example -Adding the output of @samp{libassuan-config --cflags} to the compiler's +Adding the output of @samp{pkg-config --cflags libassuan} to the compiler's command line will ensure that the compiler can find the @file{assuan.h} header file. @@ -483,7 +483,7 @@ Again, the compiler/linker has to find the library files. For this to work, the path to the library files has to be added to the library search path (via the @option{-L} option). For this, the option -@option{--libs} to @command{libassuan-config} can be used. For +@option{--libs} to @command{pkg-config libassuan} can be used. For convenience, this option also outputs all other options that are required to link the program with the @code{libassuan} libraries (in particular, the @option{-lassuan} option). The example shows how to @@ -491,14 +491,14 @@ @command{foo}. @example -gcc -o foo foo.o $(libassuan-config --libs) +gcc -o foo foo.o $(pkg-config --libs libassuan) @end example You can also combine both examples to a single command by specifying -both options to @command{libassuan-config}: +both options to @command{pkg-config libassuan}: @example -gcc -o foo foo.c $(libassuan-config --cflags --libs) +gcc -o foo foo.c $(pkg-config --cflags --libs libassuan) @end example @@ -507,7 +507,9 @@ It is much easier if you use GNU Automake instead of writing your own Makefiles. If you do that you do not have to worry about finding and -invoking the @command{libassuan-config} script at all. @code{libassuan} +invoking the @command{pkg-config} script at all. + +You can use @code{PKG_CHECK_MODULES} macro, or, @code{libassuan} also provides an Automake macro that does all the work for you. @defmac AM_PATH_LIBASSUAN (@ovar{minimum-version}, @ovar{action-if-found}, @ovar{action-if-not-found}) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/doc/stamp-vti new/libassuan-2.5.6/doc/stamp-vti --- old/libassuan-2.5.5/doc/stamp-vti 2021-03-22 13:23:53.000000000 +0100 +++ new/libassuan-2.5.6/doc/stamp-vti 2023-06-19 10:44:14.000000000 +0200 @@ -1,4 +1,4 @@ -@set UPDATED 7 December 2017 -@set UPDATED-MONTH December 2017 -@set EDITION 2.5.5 -@set VERSION 2.5.5 +@set UPDATED 16 June 2023 +@set UPDATED-MONTH June 2023 +@set EDITION 2.5.6 +@set VERSION 2.5.6 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/doc/version.texi new/libassuan-2.5.6/doc/version.texi --- old/libassuan-2.5.5/doc/version.texi 2021-03-22 13:23:53.000000000 +0100 +++ new/libassuan-2.5.6/doc/version.texi 2023-06-19 10:44:14.000000000 +0200 @@ -1,4 +1,4 @@ -@set UPDATED 7 December 2017 -@set UPDATED-MONTH December 2017 -@set EDITION 2.5.5 -@set VERSION 2.5.5 +@set UPDATED 16 June 2023 +@set UPDATED-MONTH June 2023 +@set EDITION 2.5.6 +@set VERSION 2.5.6 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/m4/Makefile.am new/libassuan-2.5.6/m4/Makefile.am --- old/libassuan-2.5.5/m4/Makefile.am 2021-03-09 08:46:11.000000000 +0100 +++ new/libassuan-2.5.6/m4/Makefile.am 2023-06-16 11:01:37.000000000 +0200 @@ -1 +1 @@ -EXTRA_DIST = socklen.m4 sys_socket_h.m4 autobuild.m4 +EXTRA_DIST = autobuild.m4 ax_cc_for_build.m4 gpg-error.m4 socklen.m4 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/m4/ax_cc_for_build.m4 new/libassuan-2.5.6/m4/ax_cc_for_build.m4 --- old/libassuan-2.5.5/m4/ax_cc_for_build.m4 1970-01-01 01:00:00.000000000 +0100 +++ new/libassuan-2.5.6/m4/ax_cc_for_build.m4 2023-06-16 11:01:36.000000000 +0200 @@ -0,0 +1,77 @@ +# =========================================================================== +# https://www.gnu.org/software/autoconf-archive/ax_cc_for_build.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_CC_FOR_BUILD +# +# DESCRIPTION +# +# Find a build-time compiler. Sets CC_FOR_BUILD and EXEEXT_FOR_BUILD. +# +# LICENSE +# +# Copyright (c) 2010 Reuben Thomas <r...@sc3d.org> +# Copyright (c) 1999 Richard Henderson <r...@redhat.com> +# +# This program is free software: you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation, either version 3 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General +# Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program. If not, see <https://www.gnu.org/licenses/>. +# +# As a special exception, the respective Autoconf Macro's copyright owner +# gives unlimited permission to copy, distribute and modify the configure +# scripts that are the output of Autoconf when processing the Macro. You +# need not follow the terms of the GNU General Public License when using +# or distributing such scripts, even though portions of the text of the +# Macro appear in them. The GNU General Public License (GPL) does govern +# all other use of the material that constitutes the Autoconf Macro. +# +# This special exception to the GPL applies to versions of the Autoconf +# Macro released by the Autoconf Archive. When you make and distribute a +# modified version of the Autoconf Macro, you may extend this special +# exception to the GPL to apply to your modified version as well. + +#serial 3 + +dnl Get a default for CC_FOR_BUILD to put into Makefile. +AC_DEFUN([AX_CC_FOR_BUILD], +[# Put a plausible default for CC_FOR_BUILD in Makefile. +if test -z "$CC_FOR_BUILD"; then + if test "x$cross_compiling" = "xno"; then + CC_FOR_BUILD='$(CC)' + else + CC_FOR_BUILD=gcc + fi +fi +AC_SUBST(CC_FOR_BUILD) +# Also set EXEEXT_FOR_BUILD. +if test "x$cross_compiling" = "xno"; then + EXEEXT_FOR_BUILD='$(EXEEXT)' +else + AC_CACHE_CHECK([for build system executable suffix], bfd_cv_build_exeext, + [rm -f conftest* + echo 'int main () { return 0; }' > conftest.c + bfd_cv_build_exeext= + ${CC_FOR_BUILD} -o conftest conftest.c 1>&5 2>&5 + for file in conftest.*; do + case $file in + *.c | *.o | *.obj | *.ilk | *.pdb) ;; + *) bfd_cv_build_exeext=`echo $file | sed -e s/conftest//` ;; + esac + done + rm -f conftest* + test x"${bfd_cv_build_exeext}" = x && bfd_cv_build_exeext=no]) + EXEEXT_FOR_BUILD="" + test x"${bfd_cv_build_exeext}" != xno && EXEEXT_FOR_BUILD=${bfd_cv_build_exeext} +fi +AC_SUBST(EXEEXT_FOR_BUILD)])dnl diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/m4/gpg-error.m4 new/libassuan-2.5.6/m4/gpg-error.m4 --- old/libassuan-2.5.5/m4/gpg-error.m4 2021-03-09 08:46:11.000000000 +0100 +++ new/libassuan-2.5.6/m4/gpg-error.m4 2023-06-16 10:09:07.000000000 +0200 @@ -1,5 +1,6 @@ # gpg-error.m4 - autoconf macro to detect libgpg-error. -# Copyright (C) 2002, 2003, 2004, 2011, 2014, 2018, 2020 g10 Code GmbH +# Copyright (C) 2002, 2003, 2004, 2011, 2014, 2018, 2020, 2021, 2022 +# g10 Code GmbH # # This file is free software; as a special exception the author gives # unlimited permission to copy and/or distribute it, with or without @@ -9,23 +10,13 @@ # WITHOUT ANY WARRANTY, to the extent permitted by law; without even the # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # -# Last-changed: 2020-11-17 +# Last-changed: 2023-04-01 - -dnl AM_PATH_GPG_ERROR([MINIMUM-VERSION, -dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]]) -dnl -dnl Test for libgpg-error and define GPG_ERROR_CFLAGS, GPG_ERROR_LIBS, -dnl GPG_ERROR_MT_CFLAGS, and GPG_ERROR_MT_LIBS. The _MT_ variants are -dnl used for programs requireing real multi thread support. dnl -dnl If a prefix option is not used, the config script is first -dnl searched in $SYSROOT/bin and then along $PATH. If the used -dnl config script does not match the host specification the script -dnl is added to the gpg_config_script_warn variable. +dnl Find gpg-error-config, for backward compatibility dnl -AC_DEFUN([AM_PATH_GPG_ERROR], -[ AC_REQUIRE([AC_CANONICAL_HOST]) +dnl _AM_PATH_POSSIBLE_GPG_ERROR_CONFIG +AC_DEFUN([_AM_PATH_POSSIBLE_GPG_ERROR_CONFIG],[dnl gpg_error_config_prefix="" dnl --with-libgpg-error-prefix=PFX is the preferred name for this option, dnl since that is consistent with how our three siblings use the directory/ @@ -61,50 +52,112 @@ fi AC_PATH_PROG(GPG_ERROR_CONFIG, gpg-error-config, no) - min_gpg_error_version=ifelse([$1], ,1.33,$1) - ok=no +]) - if test "$prefix" = NONE ; then - prefix_option_expanded=/usr/local - else - prefix_option_expanded="$prefix" - fi - if test "$exec_prefix" = NONE ; then - exec_prefix_option_expanded=$prefix_option_expanded - else - exec_prefix_option_expanded=$(prefix=$prefix_option_expanded eval echo $exec_prefix) - fi - libdir_option_expanded=$(prefix=$prefix_option_expanded exec_prefix=$exec_prefix_option_expanded eval echo $libdir) +dnl +dnl Find gpgrt-config, which uses .pc file +dnl (minimum pkg-config functionality, supporting cross build) +dnl +dnl _AM_PATH_GPGRT_CONFIG +AC_DEFUN([_AM_PATH_GPGRT_CONFIG],[dnl + AC_PATH_PROG(GPGRT_CONFIG, gpgrt-config, no, [$prefix/bin:$PATH]) + if test "$GPGRT_CONFIG" != "no"; then + # Determine gpgrt_libdir + # + # Get the prefix of gpgrt-config assuming it's something like: + # <PREFIX>/bin/gpgrt-config + gpgrt_prefix=${GPGRT_CONFIG%/*/*} + possible_libdir1=${gpgrt_prefix}/lib + # Determine by using system libdir-format with CC, it's like: + # Normal style: /usr/lib + # GNU cross style: /usr/<triplet>/lib + # Debian style: /usr/lib/<multiarch-name> + # Fedora/openSUSE style: /usr/lib, /usr/lib32 or /usr/lib64 + # It is assumed that CC is specified to the one of host on cross build. + if libdir_candidates=$(${CC:-cc} -print-search-dirs | \ + sed -n -e "/^libraries/{s/libraries: =//;s/:/\\ +/g;p;}"); then + # From the output of -print-search-dirs, select valid pkgconfig dirs. + libdir_candidates=$(for dir in $libdir_candidates; do + if p=$(cd $dir 2>/dev/null && pwd); then + test -d "$p/pkgconfig" && echo $p; + fi + done) - if test -f $libdir_option_expanded/pkgconfig/gpg-error.pc; then - gpgrt_libdir=$libdir_option_expanded - else - if crt1_path=$(${CC:-cc} -print-file-name=crt1.o 2>/dev/null); then - if possible_libdir=$(cd ${crt1_path%/*} && pwd 2>/dev/null); then - if test -f $possible_libdir/pkgconfig/gpg-error.pc; then - gpgrt_libdir=$possible_libdir + for possible_libdir0 in $libdir_candidates; do + # possible_libdir0: + # Fallback candidate, the one of system-installed (by $CC) + # (/usr/<triplet>/lib, /usr/lib/<multiarch-name> or /usr/lib32) + # possible_libdir1: + # Another candidate, user-locally-installed + # (<gpgrt_prefix>/lib) + # possible_libdir2 + # Most preferred + # (<gpgrt_prefix>/<triplet>/lib, + # <gpgrt_prefix>/lib/<multiarch-name> or <gpgrt_prefix>/lib32) + if test "${possible_libdir0##*/}" = "lib"; then + possible_prefix0=${possible_libdir0%/lib} + possible_prefix0_triplet=${possible_prefix0##*/} + if test -z "$possible_prefix0_triplet"; then + continue + fi + possible_libdir2=${gpgrt_prefix}/$possible_prefix0_triplet/lib + else + possible_prefix0=${possible_libdir0%%/lib*} + possible_libdir2=${gpgrt_prefix}${possible_libdir0#$possible_prefix0} + fi + if test -f ${possible_libdir2}/pkgconfig/gpg-error.pc; then + gpgrt_libdir=${possible_libdir2} + elif test -f ${possible_libdir1}/pkgconfig/gpg-error.pc; then + gpgrt_libdir=${possible_libdir1} + elif test -f ${possible_libdir0}/pkgconfig/gpg-error.pc; then + gpgrt_libdir=${possible_libdir0} fi - fi + if test -n "$gpgrt_libdir"; then break; fi + done fi + if test -z "$gpgrt_libdir"; then + # No valid pkgconfig dir in any of the system directories, fallback + gpgrt_libdir=${possible_libdir1} + fi + else + unset GPGRT_CONFIG fi - if test "$GPG_ERROR_CONFIG" = "no" -a -n "$gpgrt_libdir"; then - AC_PATH_PROG(GPGRT_CONFIG, gpgrt-config, no) - if test "$GPGRT_CONFIG" = "no"; then - unset GPGRT_CONFIG + if test -n "$gpgrt_libdir"; then + GPGRT_CONFIG="$GPGRT_CONFIG --libdir=$gpgrt_libdir" + if $GPGRT_CONFIG gpg-error >/dev/null 2>&1; then + GPG_ERROR_CONFIG="$GPGRT_CONFIG gpg-error" + AC_MSG_NOTICE([Use gpgrt-config with $gpgrt_libdir as gpg-error-config]) + gpg_error_config_version=`$GPG_ERROR_CONFIG --modversion` else - GPGRT_CONFIG="$GPGRT_CONFIG --libdir=$gpgrt_libdir" - if $GPGRT_CONFIG gpg-error >/dev/null 2>&1; then - GPG_ERROR_CONFIG="$GPGRT_CONFIG gpg-error" - AC_MSG_NOTICE([Use gpgrt-config with $gpgrt_libdir as gpg-error-config]) - gpg_error_config_version=`$GPG_ERROR_CONFIG --modversion` - else - unset GPGRT_CONFIG - fi + gpg_error_config_version=`$GPG_ERROR_CONFIG --version` + unset GPGRT_CONFIG fi - else + elif test "$GPG_ERROR_CONFIG" != "no"; then gpg_error_config_version=`$GPG_ERROR_CONFIG --version` + unset GPGRT_CONFIG fi +]) + +dnl AM_PATH_GPG_ERROR([MINIMUM-VERSION, +dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]]) +dnl +dnl Test for libgpg-error and define GPG_ERROR_CFLAGS, GPG_ERROR_LIBS, +dnl GPG_ERROR_MT_CFLAGS, and GPG_ERROR_MT_LIBS. The _MT_ variants are +dnl used for programs requireing real multi thread support. +dnl +dnl If a prefix option is not used, the config script is first +dnl searched in $SYSROOT/bin and then along $PATH. If the used +dnl config script does not match the host specification the script +dnl is added to the gpg_config_script_warn variable. +dnl +AC_DEFUN([AM_PATH_GPG_ERROR],[dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([_AM_PATH_POSSIBLE_GPG_ERROR_CONFIG])dnl +AC_REQUIRE([_AM_PATH_GPGRT_CONFIG])dnl + min_gpg_error_version=ifelse([$1], ,1.33,$1) + ok=no if test "$GPG_ERROR_CONFIG" != "no"; then req_major=`echo $min_gpg_error_version | \ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)/\1/'` @@ -123,22 +176,6 @@ fi fi fi - if test -z "$GPGRT_CONFIG" -a -n "$gpgrt_libdir"; then - if test "$major" -gt 1 -o "$major" -eq 1 -a "$minor" -ge 33; then - AC_PATH_PROG(GPGRT_CONFIG, gpgrt-config, no) - if test "$GPGRT_CONFIG" = "no"; then - unset GPGRT_CONFIG - else - GPGRT_CONFIG="$GPGRT_CONFIG --libdir=$gpgrt_libdir" - if $GPGRT_CONFIG gpg-error >/dev/null 2>&1; then - GPG_ERROR_CONFIG="$GPGRT_CONFIG gpg-error" - AC_MSG_NOTICE([Use gpgrt-config with $gpgrt_libdir as gpg-error-config]) - else - unset GPGRT_CONFIG - fi - fi - fi - fi fi AC_MSG_CHECKING(for GPG Error - version >= $min_gpg_error_version) if test $ok = yes; then diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/m4/libtool.m4 new/libassuan-2.5.6/m4/libtool.m4 --- old/libassuan-2.5.5/m4/libtool.m4 2021-03-09 08:46:11.000000000 +0100 +++ new/libassuan-2.5.6/m4/libtool.m4 2023-06-15 15:54:39.000000000 +0200 @@ -1045,16 +1045,11 @@ _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; darwin1.*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; - darwin*) # darwin 5.x on - # if running on 10.5 or later, the deployment target defaults - # to the OS version, if on x86, and 10.4, the deployment - # target defaults to 10.4. Don't you love it? - case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in - 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*) - _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; - 10.[[012]]*) + darwin*) + case ${MACOSX_DEPLOYMENT_TARGET},$host in + 10.[[012]]*,*|,*powerpc*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; - 10.*) + *) _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; esac ;; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/m4/sys_socket_h.m4 new/libassuan-2.5.6/m4/sys_socket_h.m4 --- old/libassuan-2.5.5/m4/sys_socket_h.m4 2013-03-15 20:26:09.000000000 +0100 +++ new/libassuan-2.5.6/m4/sys_socket_h.m4 1970-01-01 01:00:00.000000000 +0100 @@ -1,23 +0,0 @@ -# sys_socket_h.m4 serial 2 -dnl Copyright (C) 2005, 2006 Free Software Foundation, Inc. -dnl This file is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. - -dnl From Simon Josefsson. - -AC_DEFUN([gl_HEADER_SYS_SOCKET], -[ - AC_CHECK_HEADERS_ONCE([sys/socket.h]) - if test $ac_cv_header_sys_socket_h = yes; then - SYS_SOCKET_H='' - else - dnl We cannot use AC_CHECK_HEADERS_ONCE here, because that would make - dnl the check for those headers unconditional; yet cygwin reports - dnl that the headers are present but cannot be compiled (since on - dnl cygwin, all socket information should come from sys/socket.h). - AC_CHECK_HEADERS([winsock2.h ws2tcpip.h]) - SYS_SOCKET_H='sys/socket.h' - fi - AC_SUBST(SYS_SOCKET_H) -]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/src/Makefile.am new/libassuan-2.5.6/src/Makefile.am --- old/libassuan-2.5.5/src/Makefile.am 2019-11-27 15:15:27.000000000 +0100 +++ new/libassuan-2.5.6/src/Makefile.am 2023-06-16 11:01:36.000000000 +0200 @@ -148,10 +148,10 @@ $(DESTDIR)$(bindir)/gpgcedev.dll endif -mkheader: mkheader.c Makefile +mkheader$(EXEEXT_FOR_BUILD): mkheader.c Makefile $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(CPPFLAGS_FOR_BUILD) \ $(LDFLAGS_FOR_BUILD) -I. -I$(srcdir) -o $@ $(srcdir)/mkheader.c -assuan.h: assuan.h.in mkheader $(parts_of_assuan_h) - ./mkheader $(host_os) $(srcdir)/assuan.h.in \ +assuan.h: assuan.h.in mkheader$(EXEEXT_FOR_BUILD) $(parts_of_assuan_h) + ./mkheader$(EXEEXT_FOR_BUILD) $(host_os) $(srcdir)/assuan.h.in \ $(PACKAGE_VERSION) $(VERSION_NUMBER) >$@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/src/assuan-buffer.c new/libassuan-2.5.6/src/assuan-buffer.c --- old/libassuan-2.5.5/src/assuan-buffer.c 2017-11-15 16:32:47.000000000 +0100 +++ new/libassuan-2.5.6/src/assuan-buffer.c 2023-06-16 10:33:14.000000000 +0200 @@ -499,6 +499,8 @@ if (!buffer) { /* flush what we have */ _assuan_cookie_write_flush (ctx); + if (ctx->flags.confidential) + wipememory (ctx->outbound.data.line, LINELENGTH); if (ctx->outbound.data.error) return ctx->outbound.data.error; if (!ctx->is_server) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/src/assuan-inquire.c new/libassuan-2.5.6/src/assuan-inquire.c --- old/libassuan-2.5.5/src/assuan-inquire.c 2017-11-15 16:34:30.000000000 +0100 +++ new/libassuan-2.5.6/src/assuan-inquire.c 2023-06-16 10:33:14.000000000 +0200 @@ -254,7 +254,13 @@ out: if (!nodataexpected) - free_membuf (ctx, &mb); + { + if (ctx->flags.confidential && mb.buf) + wipememory (mb.buf, mb.len); + free_membuf (ctx, &mb); + } + if (ctx->flags.confidential) + wipememory (ctx->inbound.line, LINELENGTH); ctx->in_inquire = 0; return rc; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/src/assuan-socket.c new/libassuan-2.5.6/src/assuan-socket.c --- old/libassuan-2.5.5/src/assuan-socket.c 2021-03-08 15:22:42.000000000 +0100 +++ new/libassuan-2.5.6/src/assuan-socket.c 2023-06-16 10:33:14.000000000 +0200 @@ -365,7 +365,7 @@ * * "!<socket >%u %c %08x-%08x-%08x-%08x\x00" * - * %d for port number, %c for kind of socket (s for STREAM), and + * %u for port number, %c for kind of socket (s for STREAM), and * we have 16-byte random bytes for nonce. We only support * stream mode. */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/src/client.c new/libassuan-2.5.6/src/client.c --- old/libassuan-2.5.5/src/client.c 2017-11-15 16:37:39.000000000 +0100 +++ new/libassuan-2.5.6/src/client.c 2023-06-16 10:33:14.000000000 +0200 @@ -275,6 +275,8 @@ else { rc = data_cb (data_cb_arg, line, linelen); + if (ctx->flags.confidential) + wipememory (ctx->inbound.line, LINELENGTH); if (!rc) goto again; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/src/context.c new/libassuan-2.5.6/src/context.c --- old/libassuan-2.5.5/src/context.c 2017-11-15 16:37:51.000000000 +0100 +++ new/libassuan-2.5.6/src/context.c 2023-06-16 11:01:38.000000000 +0200 @@ -147,10 +147,12 @@ } -/* Same as assuan_set_flag (ctx, ASSUAN_CONFIDENTIAL, 0). */ +/* Same as assuan_set_flag (ctx, ASSUAN_CONFIDENTIAL, 0) but first + * flushes pending data. */ void assuan_end_confidential (assuan_context_t ctx) { + _assuan_cookie_write_flush (ctx); assuan_set_flag (ctx, ASSUAN_CONFIDENTIAL, 0); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libassuan-2.5.5/tests/Makefile.am new/libassuan-2.5.6/tests/Makefile.am --- old/libassuan-2.5.5/tests/Makefile.am 2020-10-20 16:01:29.000000000 +0200 +++ new/libassuan-2.5.6/tests/Makefile.am 2023-06-16 10:33:14.000000000 +0200 @@ -43,7 +43,11 @@ endif AM_CFLAGS = $(GPG_ERROR_CFLAGS) +if HAVE_W32_SYSTEM +AM_LDFLAGS = -no-fast-install +else AM_LDFLAGS = -no-install +endif noinst_HEADERS = common.h noinst_PROGRAMS = $(TESTS) $(w32cetools) $(testtools)