Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package libreoffice for openSUSE:Factory checked in at 2021-02-11 12:48:42 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libreoffice (Old) and /work/SRC/openSUSE:Factory/.libreoffice.new.28504 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libreoffice" Thu Feb 11 12:48:42 2021 rev:222 rq:870919 version:7.1.0.3 Changes: -------- --- /work/SRC/openSUSE:Factory/libreoffice/libreoffice.changes 2021-02-01 13:27:58.558081846 +0100 +++ /work/SRC/openSUSE:Factory/.libreoffice.new.28504/libreoffice.changes 2021-02-11 12:52:35.949936030 +0100 @@ -1,0 +2,15 @@ +Mon Feb 1 13:08:22 UTC 2021 - Mark??ta Machov?? <mmach...@suse.com> + +- Update to 7.1.0.3 + * RC3 7.1 series +- Update bundled dependencies +- New patch use-comphelper.patch to fix build +- Rebased patch bsc1177955.diff +- Dropped merged patches: + * 0001-Upgrade-liborcus-to-0.16.0.patch + * bsc1178944.diff + * bsc1178943.diff + * bsc1178807.diff + * bsc1179025.diff + +------------------------------------------------------------------- Old: ---- 0001-Upgrade-liborcus-to-0.16.0.patch bsc1178807.diff bsc1178943.diff bsc1178944.diff bsc1179025.diff gpgme-1.9.0.tar.bz2 libassuan-2.5.1.tar.bz2 libgpg-error-1.27.tar.bz2 libreoffice-7.0.4.2.tar.xz libreoffice-7.0.4.2.tar.xz.asc libreoffice-help-7.0.4.2.tar.xz libreoffice-help-7.0.4.2.tar.xz.asc libreoffice-translations-7.0.4.2.tar.xz libreoffice-translations-7.0.4.2.tar.xz.asc skia-m85-e684c6daef6bfb774a325a069eda1f76ca6ac26c.tar.xz New: ---- gpgme-1.13.1.tar.bz2 libassuan-2.5.3.tar.bz2 libgpg-error-1.37.tar.bz2 libreoffice-7.1.0.3.tar.xz libreoffice-7.1.0.3.tar.xz.asc libreoffice-help-7.1.0.3.tar.xz libreoffice-help-7.1.0.3.tar.xz.asc libreoffice-translations-7.1.0.3.tar.xz libreoffice-translations-7.1.0.3.tar.xz.asc skia-m88-59bafeeaa7de9eb753e3778c414e01dcf013dcd8.tar.xz use-comphelper.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libreoffice.spec ++++++ --- /var/tmp/diff_new_pack.PR4M2k/_old 2021-02-11 12:52:40.585942418 +0100 +++ /var/tmp/diff_new_pack.PR4M2k/_new 2021-02-11 12:52:40.589942423 +0100 @@ -28,8 +28,8 @@ %else %bcond_with lto %endif -# Enable the kde integration on openSUSE only -%if 0%{?is_opensuse} +# Enable the kde integration on openSUSE and SLE15-SP3 only +%if 0%{?is_opensuse} || 0%{?sle_version} == 150300 %bcond_without kdeintegration %else %bcond_with kdeintegration @@ -46,7 +46,7 @@ %bcond_with system_gpgme %endif Name: libreoffice -Version: 7.0.4.2 +Version: 7.1.0.3 Release: 0 Summary: A Free Office Suite (Framework) License: LGPL-3.0-or-later AND MPL-2.0+ @@ -70,9 +70,9 @@ Source450: %{external_url}/1f467e5bb703f12cbbb09d5cf67ecf4a-converttexttonumber-1-5-0.oxt Source452: %{external_url}/90401bca927835b6fbae4a707ed187c8-nlpsolver-0.9.tar.bz2 # GPGME bundle list -Source1000: %{external_url}/gpgme-1.9.0.tar.bz2 -Source1001: %{external_url}/libgpg-error-1.27.tar.bz2 -Source1002: %{external_url}/libassuan-2.5.1.tar.bz2 +Source1000: %{external_url}/gpgme-1.13.1.tar.bz2 +Source1001: %{external_url}/libgpg-error-1.37.tar.bz2 +Source1002: %{external_url}/libassuan-2.5.3.tar.bz2 # Internal bundled stuff we can't remove # To build this we would pull cygwin; not worth it Source2001: https://dev-www.libreoffice.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll @@ -91,7 +91,7 @@ # Single C file with patches from LO Source2009: %{external_url}/dtoa-20180411.tgz # Skia is part of chromium and bundled everywhere as by google only way is monorepo way -Source2010: %{external_url}/skia-m85-e684c6daef6bfb774a325a069eda1f76ca6ac26c.tar.xz +Source2010: %{external_url}/skia-m88-59bafeeaa7de9eb753e3778c414e01dcf013dcd8.tar.xz # change user config dir name from ~/.libreoffice/3 to ~/.libreoffice/3-suse # to avoid BerkleyDB incompatibility with the plain build Patch1: scp2-user-config-suse.diff @@ -99,14 +99,8 @@ # FIXME: the right fix is to compile the help and produce the .db_, .ht_, and other files Patch2: nlpsolver-no-broken-help.diff Patch3: mediawiki-no-broken-help.diff -Patch4: 0001-Upgrade-liborcus-to-0.16.0.patch -# LO-L3: Shadow effect(s) for table completely missing - part 1 and 2 -Patch5: bsc1178944.diff -Patch6: bsc1178943.diff -# Bug 1178807 - LO-L3: Text box from PowerPoint renders vertically instead of horizontally -Patch8: bsc1178807.diff -# Bug 1179025 - LO-L3: LibreOffice crashes opening a PPTX -Patch9: bsc1179025.diff +# PATCH-FIX-UPSTREAM https://github.com/LibreOffice/core/commit/f14b83b38d35a585976ef5d422754d8e0d0266a6 ucp: fix call to getComponentContext +Patch4: use-comphelper.patch # Bug 1177955 - LO-L3: SmartArt: text wrongly aligned, background boxes not quite right,... Patch10: bsc1177955.diff # try to save space by using hardlinks @@ -140,6 +134,7 @@ BuildRequires: icu BuildRequires: java-devel >= 9.0 BuildRequires: junit4 +BuildRequires: libBox2D-devel BuildRequires: libbase BuildRequires: libcppunit-devel >= 1.14.0 BuildRequires: liberation-fonts @@ -967,10 +962,6 @@ %patch2 %patch3 %patch4 -p1 -%patch5 -p1 -%patch6 -p1 -%patch8 -p1 -%patch9 -p1 %patch10 -p1 %patch990 -p1 %patch991 -p1 @@ -1194,19 +1185,11 @@ ################ # helper script for noarch packages # add missing directories to the file list -for dir in `find %{buildroot}/%{_datadir}/icons/gnome -type d` ; do +for dir in `find %{buildroot}/%{_datadir}/icons/hicolor -type d` ; do dir=`echo $dir | sed -e "s|%{buildroot}||"` echo "%dir $dir" >>file-lists/common_list.txt done -# remove obsolete content bsc#1062631 -rm -r %{buildroot}%{_datadir}/application-registry -rm -r %{buildroot}%{_datadir}/mime-info -grep -v %{_datadir}/mime-info file-lists/common_list.txt > tmplist -mv tmplist file-lists/common_list.txt -grep -v %{_datadir}/application-registry file-lists/common_list.txt > tmplist -mv tmplist file-lists/common_list.txt - ################################# # Move split noarch data to share ################################# @@ -1291,20 +1274,20 @@ # Install appdata files, so we're shown in gnome-software (and other, future app stores) # upstream ships the files called libreoffice-{base,writer,...}, but the destop files are called base.destop [...] # fixup the appdata files internal reference to the .desktop file and rename them on the go to match the name -install -m 0755 -d %{buildroot}%{_datadir}/appdata +install -m 0755 -d %{buildroot}%{_datadir}/metainfo for appdata in base calc draw impress writer; do sed "s/libreoffice-${appdata}.desktop/${appdata}.desktop/" \ - sysui/desktop/appstream-appdata/libreoffice-${appdata}.appdata.xml > %{buildroot}%{_datadir}/appdata/${appdata}.appdata.xml - echo "%{_datadir}/appdata/${appdata}.appdata.xml" >>file-lists/${appdata}_list.txt + sysui/desktop/appstream-appdata/libreoffice-${appdata}.appdata.xml > %{buildroot}%{_datadir}/metainfo/${appdata}.appdata.xml + echo "%{_datadir}/metainfo/${appdata}.appdata.xml" >>file-lists/${appdata}_list.txt %if 0%{?suse_version} < 1320 - echo "%dir %{_datadir}/appdata/" >>file-lists/${appdata}_list.txt + echo "%dir %{_datadir}/metainfo/" >>file-lists/${appdata}_list.txt %endif - rm -rf %{buildroot}%{_datadir}/appdata/libreoffice-${appdata}.appdata.xml + rm -rf %{buildroot}%{_datadir}/metainfo/libreoffice-${appdata}.appdata.xml done %if %{with kdeintegration} -echo "%{_datadir}/appdata/org.libreoffice.kde.metainfo.xml" >>file-lists/kde4_list.txt +echo "%{_datadir}/metainfo/org.libreoffice.kde.metainfo.xml" >>file-lists/kde4_list.txt %else -rm -f %{buildroot}%{_datadir}/appdata/org.libreoffice.kde.metainfo.xml +rm -f %{buildroot}%{_datadir}/metainfo/org.libreoffice.kde.metainfo.xml %endif # Remove pointless readmes @@ -1458,14 +1441,6 @@ %dir %{_datadir}/icons/hicolor/512x512/apps %dir %{_datadir}/icons/hicolor/512x512/mimetypes %endif -# FIXME: this is KDE4 only, wipe? -%dir %{_datadir}/icons/locolor -%dir %{_datadir}/icons/locolor/16x16 -%dir %{_datadir}/icons/locolor/16x16/apps -%dir %{_datadir}/icons/locolor/16x16/mimetypes -%dir %{_datadir}/icons/locolor/32x32 -%dir %{_datadir}/icons/locolor/32x32/apps -%dir %{_datadir}/icons/locolor/32x32/mimetypes %files -n libreofficekit %dir %{_libdir}/girepository-1.0 ++++++ bsc1177955.diff ++++++ --- /var/tmp/diff_new_pack.PR4M2k/_old 2021-02-11 12:52:40.693942566 +0100 +++ /var/tmp/diff_new_pack.PR4M2k/_new 2021-02-11 12:52:40.693942566 +0100 @@ -33,15 +33,14 @@ .../drawingml/diagram/diagramlayoutatoms.cxx | 78 ++++++++++++++----- 1 file changed, 60 insertions(+), 18 deletions(-) -diff --git a/oox/source/drawingml/diagram/diagramlayoutatoms.cxx b/oox/source/drawingml/diagram/diagramlayoutatoms.cxx -index 24acaf176491..3492ccefaa1a 100644 ---- a/oox/source/drawingml/diagram/diagramlayoutatoms.cxx -+++ b/oox/source/drawingml/diagram/diagramlayoutatoms.cxx -@@ -452,6 +452,37 @@ sal_Int32 AlgAtom::getVerticalShapesCount(const ShapePtr& rShape) - +Index: libreoffice-7.1.0.3/oox/source/drawingml/diagram/diagramlayoutatoms.cxx +=================================================================== +--- libreoffice-7.1.0.3.orig/oox/source/drawingml/diagram/diagramlayoutatoms.cxx ++++ libreoffice-7.1.0.3/oox/source/drawingml/diagram/diagramlayoutatoms.cxx +@@ -784,6 +784,37 @@ sal_Int32 AlgAtom::getVerticalShapesCoun namespace { -+/** + /** + * Decides if a certain reference type (e.g. "right") can be inferred from the available properties + * in rMap (e.g. left and width). Returns true if rValue is written to. + */ @@ -72,24 +71,20 @@ + return false; +} + - /** ++/** * Apply rConstraint to the rProperties shared layout state. * -@@ -468,26 +499,37 @@ void ApplyConstraintToLayout(const Constraint& rConstraint, LayoutPropertyMap& r - } + * Note that the order in which constraints are applied matters, given that constraints can refer to +@@ -803,11 +834,22 @@ void ApplyConstraintToLayout(const Const + return; - const LayoutPropertyMap::const_iterator aRef = rProperties.find(rConstraint.msRefForName); -- if (aRef != rProperties.end()) -+ if (aRef == rProperties.end()) -+ return; -+ -+ const LayoutProperty::const_iterator aRefType = aRef->second.find(rConstraint.mnRefType); + const LayoutProperty::const_iterator aRefType = aRef->second.find(rConstraint.mnRefType); + sal_Int32 nInferredValue = 0; -+ if (aRefType != aRef->second.end()) + if (aRefType != aRef->second.end()) + { + // Reference is found directly. -+ rProperties[rConstraint.msForName][rConstraint.mnType] -+ = aRefType->second * rConstraint.mfFactor; + rProperties[rConstraint.msForName][rConstraint.mnType] + = aRefType->second * rConstraint.mfFactor; + } + else if (InferFromLayoutProperty(aRef->second, rConstraint.mnRefType, nInferredValue)) + { @@ -97,40 +92,9 @@ + rProperties[rConstraint.msForName][rConstraint.mnType] + = nInferredValue * rConstraint.mfFactor; + } -+ else + else { -- const LayoutProperty::const_iterator aRefType = aRef->second.find(rConstraint.mnRefType); -- if (aRefType != aRef->second.end()) -- rProperties[rConstraint.msForName][rConstraint.mnType] -- = aRefType->second * rConstraint.mfFactor; + // Reference not found, assume a fixed value. -+ // Values are never in EMU, while oox::drawingml::Shape position and size are always in -+ // EMU. -+ double fUnitFactor = 0; -+ if (isFontUnit(rConstraint.mnRefType)) -+ // Points -> EMU. -+ fUnitFactor = EMU_PER_PT; - else -- { -- // Values are never in EMU, while oox::drawingml::Shape position and size are always in -- // EMU. -- double fUnitFactor = 0; -- if (isFontUnit(rConstraint.mnRefType)) -- // Points -> EMU. -- fUnitFactor = EMU_PER_PT; -- else -- // Millimeters -> EMU. -- fUnitFactor = EMU_PER_HMM * 100; -- rProperties[rConstraint.msForName][rConstraint.mnType] -- = rConstraint.mfValue * fUnitFactor; -- } -+ // Millimeters -> EMU. -+ fUnitFactor = EMU_PER_HMM * 100; -+ rProperties[rConstraint.msForName][rConstraint.mnType] -+ = rConstraint.mfValue * fUnitFactor; - } - } - --- -2.26.2 - + // Values are never in EMU, while oox::drawingml::Shape position and size are always in + // EMU. + double fUnitFactor = 0; ++++++ gpgme-1.9.0.tar.bz2 -> gpgme-1.13.1.tar.bz2 ++++++ ++++ 111575 lines of diff (skipped) ++++++ libassuan-2.5.1.tar.bz2 -> libassuan-2.5.3.tar.bz2 ++++++ ++++ 3184 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.1/AUTHORS new/libassuan-2.5.3/AUTHORS --- old/libassuan-2.5.1/AUTHORS 2017-12-07 14:05:59.000000000 +0100 +++ new/libassuan-2.5.3/AUTHORS 2019-02-11 11:27:47.000000000 +0100 @@ -55,7 +55,7 @@ Copyright (C) 1992-2013 Free Software Foundation, Inc. Copyright (C) 1994 X Consortium Copyright (C) 2000 Werner Koch (dd9jn) - Copyright (C) 2001-2017 g10 Code GmbH + Copyright (C) 2001-2019 g10 Code GmbH Copyright (C) 2004 Simon Josefsson 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.1/ChangeLog new/libassuan-2.5.3/ChangeLog --- old/libassuan-2.5.1/ChangeLog 2017-12-07 15:56:45.000000000 +0100 +++ new/libassuan-2.5.3/ChangeLog 2019-02-11 11:34:51.000000000 +0100 @@ -1,3 +1,191 @@ +2019-02-11 Werner Koch <w...@gnupg.org> + + Release 2.5.3. + + commit 4de3154ea6e6e89e34760b7b9e0eed5123bb81f9 + + +2019-01-25 Werner Koch <w...@gnupg.org> + + socks5: Fix compiler warning on Windows. + + commit 75770b1131e11075c82031bdb220591154df9e64 + * src/assuan-socket.c (socks5_connect): Use cast macro to get the + hightest socket number. + +2019-01-25 NIIBE Yutaka <gni...@fsij.org> + + socks5: Implement timeout to detect bogus service. + + commit 5e48116051a476e1dcf5f66d9e21d8003b27ad20 + * src/assuan-socket.c (TIMEOUT_NOT_WAITING_SOCKS5_FOREVER): New. + (socks5_connect): Call 'select' in order to not waiting response + forever. + +2019-01-16 NIIBE Yutaka <gni...@fsij.org> + + build: With LD_LIBRARY_PATH defined, use --disable-new-dtags. + + commit 23bf875954329458c0ac6c31e253cba44db8a648 + * configure.ac (LDADD_FOR_TESTS_KLUDGE): New for --disable-new-dtags. + * tests/Makefile.am (LDADD): Use LDADD_FOR_TESTS_KLUDGE. + +2018-12-13 Werner Koch <w...@gnupg.org> + + Release 2.5.2. + + commit 86e1d17de081081f9302ca58cc2e07ecde3172f6 + * configure.ac: Bump LT version to C8/A8/R2. + +2018-11-14 NIIBE Yutaka <gni...@fsij.org> + + libassuan.vers: Remove duplicates. + + commit eac43aadd7c3a249f35c7cce25eac78f4aaa85db + + + server: Don't call _assuan_waitpid on server side. + + commit 8153608073b7859eed32b8963b4a052243b4858f + * src/server.c (_assuan_server_finish): Never call waitpid here. + * src/assuan-socket-server.c (accept_connection_bottom): Indentation. + +2018-11-13 NIIBE Yutaka <gni...@fsij.org> + + build: Update autogen.rc and autogen.sh. + + commit 5e7988d2da3cdc36ebed3b598c0582028f3715ab + * autogen.sh: Update from libgpg-error, version 2018-07-10. + * autogen.rc: Remove obsolete --with-gpg-error-prefix option. + +2018-11-08 NIIBE Yutaka <gni...@fsij.org> + + socket: Use union for sockaddr access. + + commit ea69c7126ff25d7d44950bf4a70467d577989a34 + * src/assuan-socket.c (socks5_connect, use_socks): Use union + to access, instead of using cast to the pointer. + +2018-11-02 NIIBE Yutaka <gni...@fsij.org> + + build: Update gpg-error.m4 and libassuan.m4. + + commit 50ed4f7d5b68e94464df7c0646c3424cee2f47de + * m4/gpg-error.m4: Update to 2018-11-02. + * src/libassuan.m4: Add AC_MSG_NOTICE. + +2018-10-29 NIIBE Yutaka <gni...@fsij.org> + + build: Update gpg-error.m4 and libassuan.m4. + + commit e916b1ece87dee254ea7899b01cd5d2c2ff58021 + * m4/gpg-error.m4: Update to 2018-10-26. + * src/libassuan.m4: Follow the change of gpgrt-config. + +2018-10-26 NIIBE Yutaka <gni...@fsij.org> + + libassuan.m4: Better backward compatibility support. + + commit 882cbafa9444060524ff132d403a76d61f4273a6 + * m4/gpg-error.m4: Update. + * src/libassuan.m4: Don't assume libassuan-config is newer. + + build: Fix libassuan.m4. + + commit 0a2a322cb470479cf1f9c8653ba0f943eb30ce0d + * src/libassuan.m4: Use AC_PATH_PROG to detect libassuan-config. + + build: Fix previous commit. + + commit 24f80c49fde0fa4e9a7c2818c8a922cc5a4abacc + + + build: Improve libassuan.m4. + + commit bb9a89bf5defa793ae9c1939d9476f6dfd46d448 + * src/libassuan.m4: Don't try gpgrt-config when LIBASSUAN_CONFIG set. + Fall back to detecting libassuan-config, when gpgrt-config doesn't + work well. + +2018-10-25 NIIBE Yutaka <gni...@fsij.org> + + build: Fix previous commit. + + commit 0a3192ae33f6b57312cb5bfec0e8fd491c923728 + + + build: Relax requirements. + + commit b7922ea7ae2c3d385a7b3b3a5f33987705cfdd2b + * m4/gpg-error.m4: Update from libgpg-error 1.33. + * src/libassuan.m4: Don't require AM_PATH_GPG_ERROR. Only when + gpgrt-config is available and works well, use it. + * configure.ac (AM_PATH_GPG_ERROR): No requirement any more. + + build: Use LIBASSUAN_CONFIG_LIBS (instead of LIB). + + commit 1dd2430d8877ffda43bc46f0d5f23fea4801ecf6 + * configure.ac (LIBASSUAN_CONFIG_LIBS): Rename from *_LIB. + (LIBASSUAN_CONFIG_EXTRA_LIBS): Remove. + * src/libassuan-config.in: Follow the change. + * src/libassuan.pc.in: Likewise. + + build: Require libgpg-error >= 1.33. + + commit 27f4671883e3241ac0fdee3935c8707c816686b6 + * configure.ac (AM_PATH_GPG_ERROR): Require 1.33. + * m4/gpg-error.m4: Update from libgpg-error 1.33. + +2018-10-24 NIIBE Yutaka <gni...@fsij.org> + + build: Fix libassuan.pc. + + commit 25797256e1588db9f3171a050246008ac66c66b3 + * src/libassuan.pc.in: Fix typo. + + build: Fix previous commit. + + commit b9fb02a823f72f97d93344d16d49b73e39a7aaaf + + + build: Compatibility to pkg-config. + + commit 9b1666522f7b748cdbdd65cf7f91a76fdde6623b + * src/libassuan-config.in: Support --variable and --modversion. + + build: Make libassuan.m4 use gpg-error-config. + + commit f69f4c893f29c1a359cc60f8a87a79d05d9a6c15 + * src/libassuan.m4: Use gpg-error-config. + + build: Provide libassuan.pc, generated by configure. + + commit 9c74661d6f8028c616932b02eb5360a2e3587e81 + * configure.ac (PACKAGE, VERSION): Remove. + Generate src/libassuan.pc. + * src/Makefile.am (pkgconfigdir, pkgconfig_DATA): New. + (assuan.h): Use PACKAGE_VERSION and VERSION_NUMBER vars. + * src/libassuan-config.in: Use @PACKAGE_VERSION@. + * src/libassuan.pc.in: New. + + build: Update gpg-error.m4 from libgpg-error. + + commit 34fd79ae2af25a2ac9a60a811229ec9d28926f9d + * m4/gpg-error.m4: Update from libgpg-error 1.33. + +2018-09-14 Ben Kibbey <b...@luxsci.net> + + Fix OpenBSD build. + + commit afeae6496f51d28958fd92b04cc933ee6ceb5b61 + * configure.ac: Define HAVE_STRUCT_SOCKPEERCRED_PID when found. + +2018-03-27 NIIBE Yutaka <gni...@fsij.org> + + tests: Exclude tests for Windows build. + + commit b270f2ec21b67f5728edae4b2ddf6fe17a0fd25a + * tests/Makefile.am [HAVE_W32_SYSTEM] (TESTS, testtools): Fix. + +2018-02-26 NIIBE Yutaka <gni...@fsij.org> + + Silence two minor warning on Windows. + + commit 6c736325c028647dc3283bf723e2e28199e7f45b + * src/assuan-defs.h [HAVE_W64_SYSTEM] (SOCKET2HANDLE): Care for size + of integer. + * src/stpcpy.c: No K&R anymore. + +2018-02-23 NIIBE Yutaka <gni...@fsij.org> + + Fix previous commit. + + commit 35aad6b5d53b292e8e7c52c4eb90535be0580cd2 + + +2018-02-20 NIIBE Yutaka <gni...@fsij.org> + + Better credential support for other OSes. + + commit 0ad3aafe2c02cdff21e10a59de56b8a2f9532be3 + * configure.ac (HAVE_UCRED_H, HAVE_SYS_UCRED_H): Check these headers + unconditionally. + (HAVE_SO_PEERCRED, HAVE_LOCAL_PEEREID): Remove. + (HAVE_STRUCT_SOCKPEERCRED_PID): New. + (HAVE_GETPEEREID): New. + * src/assuan-socket-server.c (accept_connection_bottom): Add + support for OpenBSD, macOS, and FreeBSD. + 2017-12-07 Werner Koch <w...@gnupg.org> Release 2.5.1. 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.1/NEWS new/libassuan-2.5.3/NEWS --- old/libassuan-2.5.1/NEWS 2017-12-07 15:53:37.000000000 +0100 +++ new/libassuan-2.5.3/NEWS 2019-02-11 11:27:01.000000000 +0100 @@ -1,3 +1,26 @@ +Noteworthy changes in version 2.5.3 (2019-02-11) [C8/A8/R3] +------------------------------------------------ + + * Add a timeout for writing to a SOCKS5 proxy. This helps if another + service is running on the standard tor socket (e.g. Windows 10). + [#3381] + + * Add workaround for a problem with LD_LIBRARY_PATH on newer systems. + [#4298] + + Release-info: https://dev.gnupg.org/T4361 + + +Noteworthy changes in version 2.5.2 (2018-12-13) [C8/A8/R2] +------------------------------------------------ + + * Better credential support for BSDs. + + * Fix some compiler warnings. + + * Update the build system. + + Noteworthy changes in version 2.5.1 (2017-12-07) [C8/A8/R1] ------------------------------------------------ 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.1/README new/libassuan-2.5.3/README --- old/libassuan-2.5.1/README 2017-12-07 14:05:16.000000000 +0100 +++ new/libassuan-2.5.3/README 2018-12-13 09:04:29.000000000 +0100 @@ -2,7 +2,7 @@ =========== Copyright (C) 2001-2013 Free Software Foundation, Inc. - Copyright (C) 2001-2017 g10 Code GmbH + Copyright (C) 2001-2018 g10 Code GmbH This is a general purpose IPC library which is for example used 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.1/VERSION new/libassuan-2.5.3/VERSION --- old/libassuan-2.5.1/VERSION 2017-12-07 15:55:49.000000000 +0100 +++ new/libassuan-2.5.3/VERSION 2019-02-11 11:33:44.000000000 +0100 @@ -1 +1 @@ -2.5.1 +2.5.3 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.1/autogen.rc new/libassuan-2.5.3/autogen.rc --- old/libassuan-2.5.1/autogen.rc 2014-01-10 17:18:30.000000000 +0100 +++ new/libassuan-2.5.3/autogen.rc 2018-12-13 08:52:39.000000000 +0100 @@ -2,15 +2,11 @@ case "$myhost" in w32) - configure_opts=" - --with-gpg-error-prefix=@SYSROOT@ - " + configure_opts="" ;; amd64) - configure_opts=" - --with-gpg-error-prefix=@SYSROOT@ - " + configure_opts="" ;; 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.1/autogen.sh new/libassuan-2.5.3/autogen.sh --- old/libassuan-2.5.1/autogen.sh 2017-11-15 18:18:26.000000000 +0100 +++ new/libassuan-2.5.3/autogen.sh 2018-12-13 08:52:39.000000000 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # autogen.sh -# Copyright (C) 2003, 2014, 2017 g10 Code GmbH +# Copyright (C) 2003, 2014, 2017, 2018 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 @@ -15,7 +15,7 @@ # configure it for the respective package. It is maintained as part of # GnuPG and source copied by other packages. # -# Version: 2017-01-17 +# Version: 2018-07-10 configure_ac="configure.ac" @@ -74,7 +74,6 @@ PRINT_BUILD=no tmp=$(dirname "$0") tsdir=$(cd "${tmp}"; pwd) -version_parts=3 if [ -n "${AUTOGEN_SH_SILENT}" ]; then SILENT=" --silent" @@ -85,9 +84,10 @@ echo " --silent Silent operation" echo " --force Pass --force to autoconf" echo " --find-version Helper for configure.ac" - echo " --build-TYPE Configure to cross build for TYPE" + echo " --git-build Run all commands to build from a Git" echo " --print-host Print only the host triplet" echo " --print-build Print only the build platform triplet" + echo " --build-TYPE Configure to cross build for TYPE" echo "" echo " ARGS are passed to configure in --build-TYPE mode." echo " Configuration for this script is expected in autogen.rc" @@ -159,6 +159,10 @@ SILENT=" --silent" shift ;; + --git-build) + myhost="git-build" + shift + ;; --build-w32) myhost="w32" shift @@ -187,6 +191,25 @@ die_p +# **** GIT BUILD **** +# This is a helper to build from git. +if [ "$myhost" = "git-build" ]; then + tmp="$(pwd)" + cd "$tsdir" || fatal "error cd-ing to $tsdir" + ./autogen.sh || fatal "error running ./autogen.sh" + cd "$tmp" || fatal "error cd-ing back to $tmp" + die_p + "$tsdir"/configure || fatal "error running $tsdir/configure" + die_p + make || fatal "error running make" + die_p + make check || fatal "error running male check" + die_p + exit 0 +fi +# **** end GIT BUILD **** + + # Source our configuration if [ -f "${tsdir}/autogen.rc" ]; then . "${tsdir}/autogen.rc" @@ -215,18 +238,15 @@ exit 1 fi - case "$version_parts" in - 2) - matchstr1="$package-$major.[0-9]*" - matchstr2="$package-$major-base" - vers="$major.$minor" - ;; - *) - matchstr1="$package-$major.$minor.[0-9]*" - matchstr2="$package-$major.$minor-base" - vers="$major.$minor.$micro" - ;; - esac + if [ -z "$micro" ]; then + matchstr1="$package-$major.[0-9]*" + matchstr2="$package-$major-base" + vers="$major.$minor" + else + matchstr1="$package-$major.$minor.[0-9]*" + matchstr2="$package-$major.$minor-base" + vers="$major.$minor.$micro" + fi beta=no if [ -e .git ]; then @@ -467,6 +487,10 @@ EOF $CP build-aux/git-hooks/commit-msg .git/hooks/commit-msg chmod +x .git/hooks/commit-msg + if [ x"${display_name}" != x ]; then + git config format.subjectPrefix "PATCH ${display_name}" + git config sendemail.to "${patches_to}" + fi fi fi 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.1/config.h.in new/libassuan-2.5.3/config.h.in --- old/libassuan-2.5.1/config.h.in 2017-12-07 15:56:34.000000000 +0100 +++ new/libassuan-2.5.3/config.h.in 2019-02-11 11:34:49.000000000 +0100 @@ -68,9 +68,6 @@ /* Define to 1 if you have the <locale.h> header file. */ #undef HAVE_LOCALE_H -/* Defined if LOCAL_PEEREID is supported (NetBSD specific) */ -#undef HAVE_LOCAL_PEEREID - /* Define to 1 if you have the <memory.h> header file. */ #undef HAVE_MEMORY_H @@ -86,9 +83,6 @@ /* Define to 1 if you have the `setenv' function. */ #undef HAVE_SETENV -/* Defined if SO_PEERCRED is supported (Linux specific) */ -#undef HAVE_SO_PEERCRED - /* Define to 1 if you have the `stat' function. */ #undef HAVE_STAT @@ -107,6 +101,9 @@ /* Define to 1 if you have the <string.h> header file. */ #undef HAVE_STRING_H +/* Define if struct sockpeercred contains the pid member. */ +#undef HAVE_STRUCT_SOCKPEERCRED_PID + /* Define to 1 if you have the <sys/select.h> header file. */ #undef HAVE_SYS_SELECT_H @@ -122,6 +119,9 @@ /* Define to 1 if you have the <sys/types.h> header file. */ #undef HAVE_SYS_TYPES_H +/* Define to 1 if you have the <sys/ucred.h> header file. */ +#undef HAVE_SYS_UCRED_H + /* Define to 1 if you have the <sys/uio.h> header file. */ #undef HAVE_SYS_UIO_H @@ -153,10 +153,10 @@ */ #undef LT_OBJDIR -/* Name of this package */ +/* Name of package */ #undef PACKAGE -/* Bug report address */ +/* Define to the address where bug reports for this package should be sent. */ #undef PACKAGE_BUGREPORT /* Define to the full name of this package. */ @@ -205,7 +205,7 @@ #endif -/* Version of this package */ +/* Version number of package */ #undef VERSION /* Expose all libc features (__DARWIN_C_FULL) */ 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.1/configure.ac new/libassuan-2.5.3/configure.ac --- old/libassuan-2.5.1/configure.ac 2017-12-07 15:53:45.000000000 +0100 +++ new/libassuan-2.5.3/configure.ac 2019-02-11 11:27:16.000000000 +0100 @@ -33,7 +33,7 @@ m4_define([mym4_package],[libassuan]) m4_define([mym4_major], [2]) m4_define([mym4_minor], [5]) -m4_define([mym4_micro], [1]) +m4_define([mym4_micro], [3]) # 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=1 +LIBASSUAN_LT_REVISION=3 # If the API is changed in an incompatible way: increment the next counter. LIBASSUAN_CONFIG_API_VERSION=2 @@ -73,9 +73,6 @@ AC_SUBST(LIBASSUAN_LT_AGE) AC_SUBST(LIBASSUAN_LT_REVISION) -PACKAGE=$PACKAGE_NAME -VERSION=$PACKAGE_VERSION - AC_CONFIG_AUX_DIR([build-aux]) AM_INIT_AUTOMAKE([serial-tests dist-bzip2 no-dist-gzip]) AM_MAINTAINER_MODE @@ -88,17 +85,45 @@ AC_GNU_SOURCE +# Taken from mpfr-4.0.1, then modified for LDADD_FOR_TESTS_KLUDGE +dnl Under Linux, make sure that the old dtags are used if LD_LIBRARY_PATH +dnl is defined. The issue is that with the new dtags, LD_LIBRARY_PATH has +dnl the precedence over the run path, so that if a compatible MPFR library +dnl is installed in some directory from $LD_LIBRARY_PATH, then the tested +dnl MPFR library will be this library instead of the MPFR library from the +dnl build tree. Other OS with the same issue might be added later. +dnl +dnl References: +dnl https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=859732 +dnl http://lists.gnu.org/archive/html/libtool/2017-05/msg00000.html +dnl +dnl We need to check whether --disable-new-dtags is supported as alternate +dnl linkers may be used (e.g., with tcc: CC=tcc LD=tcc). +dnl +case $host in + *-*-linux*) + if test -n "$LD_LIBRARY_PATH"; then + saved_LDFLAGS="$LDFLAGS" + LDADD_FOR_TESTS_KLUDGE="-Wl,--disable-new-dtags" + LDFLAGS="$LDFLAGS $LDADD_FOR_TESTS_KLUDGE" + AC_MSG_CHECKING(whether --disable-new-dtags is supported by the linker) + AC_LINK_IFELSE([AC_LANG_SOURCE([[ +int main (void) { return 0; } + ]])], + [AC_MSG_RESULT(yes (use it since LD_LIBRARY_PATH is set))], + [AC_MSG_RESULT(no) + LDADD_FOR_TESTS_KLUDGE="" + ]) + LDFLAGS="$saved_LDFLAGS" + fi + ;; +esac +AC_SUBST([LDADD_FOR_TESTS_KLUDGE]) -AC_SUBST(PACKAGE) -AC_SUBST(VERSION) -AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of this package]) -AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version of this package]) -AC_DEFINE_UNQUOTED(PACKAGE_BUGREPORT, "$PACKAGE_BUGREPORT",[Bug report address]) VERSION_NUMBER=m4_esyscmd(printf "0x%02x%02x%02x" mym4_major \ mym4_minor mym4_micro) AC_SUBST(VERSION_NUMBER) - # Don't default to build static libs. LT_PREREQ([2.2.6]) LT_INIT([win32-dll disable-static]) @@ -300,18 +325,16 @@ # # Provide info for src/libassuan-config.in # -LIBASSUAN_CONFIG_LIB="-lassuan" +LIBASSUAN_CONFIG_LIBS="-lassuan" LIBASSUAN_CONFIG_CFLAGS="" LIBASSUAN_CONFIG_HOST="$host" -LIBASSUAN_CONFIG_EXTRA_LIBS= if test x"$NETLIBS" != x; then - LIBASSUAN_CONFIG_EXTRA_LIBS="$LIBASSUAN_CONFIG_EXTRA_LIBS $NETLIBS" + LIBASSUAN_CONFIG_LIBS="$LIBASSUAN_CONFIG_LIBS $NETLIBS" fi -AC_SUBST(LIBASSUAN_CONFIG_LIB) +AC_SUBST(LIBASSUAN_CONFIG_LIBS) AC_SUBST(LIBASSUAN_CONFIG_CFLAGS) AC_SUBST(LIBASSUAN_CONFIG_HOST) AC_SUBST(LIBASSUAN_CONFIG_API_VERSION) -AC_SUBST(LIBASSUAN_CONFIG_EXTRA_LIBS) # # Checks for header files. @@ -319,7 +342,7 @@ AC_HEADER_STDC AC_CHECK_HEADERS([string.h 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 ]) + sys/select.h ucred.h sys/ucred.h]) AC_TYPE_UINTPTR_T AC_TYPE_UINT16_T @@ -421,48 +444,19 @@ # -# Check for the getsockopt SO_PEERCRED +# Check for the getsockopt SO_PEERCRED, etc. # -AC_MSG_CHECKING(for SO_PEERCRED) -AC_CACHE_VAL(assuan_cv_sys_so_peercred, - [AC_TRY_COMPILE([#include <sys/socket.h>], - [struct ucred cr; - int cl = sizeof cr; - getsockopt (1, SOL_SOCKET, SO_PEERCRED, &cr, &cl);], - assuan_cv_sys_so_peercred=yes, - assuan_cv_sys_so_peercred=no) - ]) -AC_MSG_RESULT($assuan_cv_sys_so_peercred) +AC_CHECK_MEMBER(struct sockpeercred.pid, + [AC_DEFINE(HAVE_STRUCT_SOCKPEERCRED_PID, 1, + Define if struct sockpeercred contains the pid member.)], + [], [#include <sys/types.h> +#include <sys/socket.h> ]) -if test $assuan_cv_sys_so_peercred = yes; then - AC_DEFINE(HAVE_SO_PEERCRED, 1, - [Defined if SO_PEERCRED is supported (Linux specific)]) -else - # Check for the getsockopt LOCAL_PEEREID (NetBSD) - AC_MSG_CHECKING(for LOCAL_PEEREID) - AC_CACHE_VAL(assuan_cv_sys_so_local_peereid, - [AC_TRY_COMPILE([#include <sys/socket.> - #include <sys/un.h>], - [struct unpcbid unp; - int unpl = sizeof unp; - getsockopt (1, SOL_SOCKET, LOCAL_PEEREID, &unp, &unpl);], - assuan_cv_sys_so_local_peereid=yes, - assuan_cv_sys_so_local_peereid=no) - ]) - AC_MSG_RESULT($assuan_cv_sys_so_local_peereid) +# (Open)Solaris +AC_CHECK_FUNCS([getpeerucred]) - if test $assuan_cv_sys_so_local_peereid = yes; then - AC_DEFINE(HAVE_LOCAL_PEEREID, 1, - [Defined if LOCAL_PEEREID is supported (NetBSD specific)]) - else - # (Open)Solaris - AC_CHECK_FUNCS([getpeerucred], AC_CHECK_HEADERS([ucred.h])) - if test $ac_cv_func_getpeerucred != yes; then - # FreeBSD - AC_CHECK_FUNCS([getpeereid]) - fi - fi -fi +# FreeBSD +AC_CHECK_FUNCS([getpeereid]) # @@ -485,6 +479,7 @@ AC_CONFIG_FILES([tests/Makefile]) AC_CONFIG_FILES([src/libassuan-config], [chmod +x src/libassuan-config]) AC_CONFIG_FILES([src/versioninfo.rc]) +AC_CONFIG_FILES([src/libassuan.pc]) AC_OUTPUT 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.1/doc/assuan.info new/libassuan-2.5.3/doc/assuan.info --- old/libassuan-2.5.1/doc/assuan.info 2017-12-07 15:56:33.000000000 +0100 +++ new/libassuan-2.5.3/doc/assuan.info 2019-02-11 11:34:51.000000000 +0100 @@ -7,8 +7,8 @@ This file documents the use and the internals of Assuan. - This is Edition 2.5.1, last updated 7 December 2017, of 'The -'Developing with Assuan' Manual', for Version 2.5.1. + This is Edition 2.5.3, last updated 7 December 2017, of 'The +'Developing with Assuan' Manual', for Version 2.5.3. Published by the Free Software Foundation 51 Franklin Street, Fifth Floor 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.1/doc/stamp-vti new/libassuan-2.5.3/doc/stamp-vti --- old/libassuan-2.5.1/doc/stamp-vti 2017-12-07 15:56:32.000000000 +0100 +++ new/libassuan-2.5.3/doc/stamp-vti 2019-02-11 11:34:50.000000000 +0100 @@ -1,4 +1,4 @@ @set UPDATED 7 December 2017 @set UPDATED-MONTH December 2017 -@set EDITION 2.5.1 -@set VERSION 2.5.1 +@set EDITION 2.5.3 +@set VERSION 2.5.3 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.1/doc/version.texi new/libassuan-2.5.3/doc/version.texi --- old/libassuan-2.5.1/doc/version.texi 2017-12-07 15:56:32.000000000 +0100 +++ new/libassuan-2.5.3/doc/version.texi 2019-02-11 11:34:50.000000000 +0100 @@ -1,4 +1,4 @@ @set UPDATED 7 December 2017 @set UPDATED-MONTH December 2017 -@set EDITION 2.5.1 -@set VERSION 2.5.1 +@set EDITION 2.5.3 +@set VERSION 2.5.3 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.1/m4/gpg-error.m4 new/libassuan-2.5.3/m4/gpg-error.m4 --- old/libassuan-2.5.1/m4/gpg-error.m4 2013-03-15 20:26:09.000000000 +0100 +++ new/libassuan-2.5.3/m4/gpg-error.m4 2018-12-13 08:52:39.000000000 +0100 @@ -1,5 +1,5 @@ # gpg-error.m4 - autoconf macro to detect libgpg-error. -# Copyright (C) 2002, 2003, 2004, 2011 g10 Code GmbH +# Copyright (C) 2002, 2003, 2004, 2011, 2014, 2018 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 @@ -8,10 +8,21 @@ # This file is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY, to the extent permitted by law; without even the # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# +# Last-changed: 2018-11-02 + dnl AM_PATH_GPG_ERROR([MINIMUM-VERSION, dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]]) -dnl Test for libgpg-error and define GPG_ERROR_CFLAGS and GPG_ERROR_LIBS +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], [ AC_REQUIRE([AC_CANONICAL_HOST]) @@ -30,23 +41,75 @@ AC_ARG_WITH(gpg-error-prefix,, [gpg_error_config_prefix="$withval"]) - if test x$gpg_error_config_prefix != x ; then - if test x${GPG_ERROR_CONFIG+set} != xset ; then - GPG_ERROR_CONFIG=$gpg_error_config_prefix/bin/gpg-error-config + if test x"${GPG_ERROR_CONFIG}" = x ; then + if test x"${gpg_error_config_prefix}" != x ; then + GPG_ERROR_CONFIG="${gpg_error_config_prefix}/bin/gpg-error-config" + else + case "${SYSROOT}" in + /*) + if test -x "${SYSROOT}/bin/gpg-error-config" ; then + GPG_ERROR_CONFIG="${SYSROOT}/bin/gpg-error-config" + fi + ;; + '') + ;; + *) + AC_MSG_WARN([Ignoring \$SYSROOT as it is not an absolute path.]) + ;; + esac fi fi - AC_PATH_TOOL(GPG_ERROR_CONFIG, gpg-error-config, no) - min_gpg_error_version=ifelse([$1], ,0.0,$1) - AC_MSG_CHECKING(for GPG Error - version >= $min_gpg_error_version) + AC_PATH_PROG(GPG_ERROR_CONFIG, gpg-error-config, no) + min_gpg_error_version=ifelse([$1], ,1.33,$1) ok=no - if test "$GPG_ERROR_CONFIG" != "no" \ - && test -f "$GPG_ERROR_CONFIG" ; then + + 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) + + 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 + fi + fi + fi + 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 + 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 + fi + else + gpg_error_config_version=`$GPG_ERROR_CONFIG --version` + fi + if test "$GPG_ERROR_CONFIG" != "no"; then req_major=`echo $min_gpg_error_version | \ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)/\1/'` req_minor=`echo $min_gpg_error_version | \ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)/\2/'` - gpg_error_config_version=`$GPG_ERROR_CONFIG $gpg_error_config_args --version` major=`echo $gpg_error_config_version | \ sed 's/\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'` minor=`echo $gpg_error_config_version | \ @@ -60,31 +123,66 @@ 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 - GPG_ERROR_CFLAGS=`$GPG_ERROR_CONFIG $gpg_error_config_args --cflags` - GPG_ERROR_LIBS=`$GPG_ERROR_CONFIG $gpg_error_config_args --libs` + GPG_ERROR_CFLAGS=`$GPG_ERROR_CONFIG --cflags` + GPG_ERROR_LIBS=`$GPG_ERROR_CONFIG --libs` + if test -z "$GPGRT_CONFIG"; then + GPG_ERROR_MT_CFLAGS=`$GPG_ERROR_CONFIG --mt --cflags 2>/dev/null` + GPG_ERROR_MT_LIBS=`$GPG_ERROR_CONFIG --mt --libs 2>/dev/null` + else + GPG_ERROR_MT_CFLAGS=`$GPG_ERROR_CONFIG --variable=mtcflags 2>/dev/null` + GPG_ERROR_MT_CFLAGS="$GPG_ERROR_CFLAGS${GPG_ERROR_CFLAGS:+ }$GPG_ERROR_MT_CFLAGS" + GPG_ERROR_MT_LIBS=`$GPG_ERROR_CONFIG --variable=mtlibs 2>/dev/null` + GPG_ERROR_MT_LIBS="$GPG_ERROR_LIBS${GPG_ERROR_LIBS:+ }$GPG_ERROR_MT_LIBS" + fi AC_MSG_RESULT([yes ($gpg_error_config_version)]) ifelse([$2], , :, [$2]) - gpg_error_config_host=`$GPG_ERROR_CONFIG $gpg_error_config_args --host 2>/dev/null || echo none` + if test -z "$GPGRT_CONFIG"; then + gpg_error_config_host=`$GPG_ERROR_CONFIG --host 2>/dev/null || echo none` + else + gpg_error_config_host=`$GPG_ERROR_CONFIG --variable=host 2>/dev/null || echo none` + fi if test x"$gpg_error_config_host" != xnone ; then if test x"$gpg_error_config_host" != x"$host" ; then AC_MSG_WARN([[ *** -*** The config script $GPG_ERROR_CONFIG was +*** The config script "$GPG_ERROR_CONFIG" was *** built for $gpg_error_config_host and thus may not match the *** used host $host. -*** You may want to use the configure option --with-gpg-error-prefix -*** to specify a matching config script. +*** You may want to use the configure option --with-libgpg-error-prefix +*** to specify a matching config script or use \$SYSROOT. ***]]) + gpg_config_script_warn="$gpg_config_script_warn libgpg-error" fi fi else GPG_ERROR_CFLAGS="" GPG_ERROR_LIBS="" + GPG_ERROR_MT_CFLAGS="" + GPG_ERROR_MT_LIBS="" AC_MSG_RESULT(no) ifelse([$3], , :, [$3]) fi AC_SUBST(GPG_ERROR_CFLAGS) AC_SUBST(GPG_ERROR_LIBS) + AC_SUBST(GPG_ERROR_MT_CFLAGS) + AC_SUBST(GPG_ERROR_MT_LIBS) ]) 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.1/src/Makefile.am new/libassuan-2.5.3/src/Makefile.am --- old/libassuan-2.5.1/src/Makefile.am 2017-11-15 16:31:49.000000000 +0100 +++ new/libassuan-2.5.3/src/Makefile.am 2018-10-25 11:20:28.000000000 +0200 @@ -19,8 +19,12 @@ # SPDX-License-Identifier: LGPL-2.1+ ## Process this file with automake to produce Makefile.in +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = libassuan.pc + EXTRA_DIST = libassuan-config.in libassuan.m4 libassuan.vers \ - versioninfo.rc.in libassuan.def mkheader.c gpgcedev.def + versioninfo.rc.in libassuan.def mkheader.c gpgcedev.def \ + libassuan.pc.in AM_CPPFLAGS = -I.. bin_SCRIPTS = libassuan-config @@ -149,6 +153,4 @@ assuan.h: assuan.h.in mkheader $(parts_of_assuan_h) ./mkheader $(host_os) $(srcdir)/assuan.h.in \ - @VERSION@ @VERSION_NUMBER@ >$@ - - + $(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.1/src/assuan-defs.h new/libassuan-2.5.3/src/assuan-defs.h --- old/libassuan-2.5.1/src/assuan-defs.h 2017-11-15 16:33:35.000000000 +0100 +++ new/libassuan-2.5.3/src/assuan-defs.h 2018-07-02 17:46:50.000000000 +0200 @@ -410,7 +410,7 @@ #if HAVE_W64_SYSTEM -# define SOCKET2HANDLE(s) ((void *)(s)) +# define SOCKET2HANDLE(s) ((void *)(uintptr_t)(s)) # define HANDLE2SOCKET(h) ((uintptr_t)(h)) #elif HAVE_W32_SYSTEM # define SOCKET2HANDLE(s) ((void *)(s)) 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.1/src/assuan-socket-server.c new/libassuan-2.5.3/src/assuan-socket-server.c --- old/libassuan-2.5.1/src/assuan-socket-server.c 2017-11-15 16:36:26.000000000 +0100 +++ new/libassuan-2.5.3/src/assuan-socket-server.c 2018-12-13 08:52:39.000000000 +0100 @@ -31,9 +31,6 @@ #ifdef HAVE_SYS_TYPES_H # include <sys/types.h> #endif -#ifdef HAVE_UCRED_H -#include <ucred.h> -#endif #ifdef HAVE_W32_SYSTEM # ifdef HAVE_WINSOCK2_H # include <winsock2.h> @@ -48,6 +45,12 @@ # include <sys/socket.h> # include <sys/un.h> #endif +#ifdef HAVE_SYS_UCRED_H +#include <sys/ucred.h> +#endif +#ifdef HAVE_UCRED_H +#include <ucred.h> +#endif #include "debug.h" #include "assuan-defs.h" @@ -60,60 +63,87 @@ TRACE (ctx, ASSUAN_LOG_SYSIO, "accept_connection_bottom", ctx); ctx->peercred_valid = 0; -#ifdef HAVE_SO_PEERCRED +#ifdef SO_PEERCRED { - struct ucred cr; +#ifdef HAVE_STRUCT_SOCKPEERCRED_PID + struct sockpeercred cr; /* OpenBSD */ +#else + struct ucred cr; /* GNU/Linux */ +#endif socklen_t cl = sizeof cr; - if ( !getsockopt (fd, SOL_SOCKET, SO_PEERCRED, &cr, &cl)) + if (!getsockopt (fd, SOL_SOCKET, SO_PEERCRED, &cr, &cl)) { - ctx->peercred.pid = cr.pid; - ctx->peercred.uid = cr.uid; - ctx->peercred.gid = cr.gid; - ctx->peercred_valid = 1; - - /* This overrides any already set PID if the function returns - a valid one. */ - if (cr.pid != ASSUAN_INVALID_PID && cr.pid) - ctx->pid = cr.pid; + ctx->peercred_valid = 1; + ctx->peercred.pid = cr.pid; + ctx->peercred.uid = cr.uid; + ctx->peercred.gid = cr.gid; } } -#elif defined (HAVE_GETPEERUCRED) - { - ucred_t *ucred = NULL; +#elif defined (LOCAL_PEERPID) + { /* macOS */ + socklen_t len = sizeof (pid_t); - if (getpeerucred (fd, &ucred) != -1) + if (!getsockopt (fd, SOL_LOCAL, LOCAL_PEERPID, &ctx->peercred.pid, &len)) { - ctx->peercred.uid = ucred_geteuid (ucred); - ctx->peercred.gid = ucred_getegid (ucred); - ctx->peercred.pid = ucred_getpid (ucred); - ctx->peercred_valid = 1; - ucred_free (ucred); + ctx->peercred_valid = 1; + +#if defined (LOCAL_PEERCRED) + { + struct xucred cr; + len = sizeof (struct xucred); + + if (!getsockopt (fd, SOL_LOCAL, LOCAL_PEERCRED, &cr, &len)) + { + ctx->peercred.uid = cr.cr_uid; + ctx->peercred.gid = cr.cr_gid; + } + } +#endif } } -#elif defined (HAVE_LOCAL_PEEREID) - { +#elif defined (LOCAL_PEEREID) + { /* NetBSD */ struct unpcbid unp; socklen_t unpl = sizeof unp; if (getsockopt (fd, 0, LOCAL_PEEREID, &unp, &unpl) != -1) { - ctx->peercred.pid = unp.unp_pid; - ctx->peercred.uid = unp.unp_euid; - ctx->peercred.gid = unp.unp_egid; - ctx->peercred_valid = 1; + ctx->peercred_valid = 1; + ctx->peercred.pid = unp.unp_pid; + ctx->peercred.uid = unp.unp_euid; + ctx->peercred.gid = unp.unp_egid; + } + } +#elif defined (HAVE_GETPEERUCRED) + { /* Solaris */ + ucred_t *ucred = NULL; + + if (getpeerucred (fd, &ucred) != -1) + { + ctx->peercred_valid = 1; + ctx->peercred.pid = ucred_getpid (ucred); + ctx->peercred.uid = ucred_geteuid (ucred); + ctx->peercred.gid = ucred_getegid (ucred); + + ucred_free (ucred); } } #elif defined(HAVE_GETPEEREID) - { + { /* FreeBSD */ if (getpeereid (fd, &ctx->peercred.uid, &ctx->peercred.gid) != -1) { - ctx->peercred.pid = ASSUAN_INVALID_PID; - ctx->peercred_valid = 1; + ctx->peercred_valid = 1; + ctx->peercred.pid = ASSUAN_INVALID_PID; } } #endif + /* This overrides any already set PID if the function returns + a valid one. */ + if (ctx->peercred_valid && ctx->peercred.pid != ASSUAN_INVALID_PID) + ctx->pid = ctx->peercred.pid; + ctx->inbound.fd = fd; ctx->inbound.eof = 0; ctx->inbound.linelen = 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.1/src/assuan-socket.c new/libassuan-2.5.3/src/assuan-socket.c --- old/libassuan-2.5.1/src/assuan-socket.c 2017-12-07 13:28:05.000000000 +0100 +++ new/libassuan-2.5.3/src/assuan-socket.c 2019-01-25 13:52:14.000000000 +0100 @@ -690,6 +690,8 @@ } +#define TIMEOUT_NOT_WAITING_SOCKS5_FOREVER 1 /* in second(s) */ + /* Connect using the SOCKS5 protocol. */ static int socks5_connect (assuan_context_t ctx, assuan_fd_t sock, @@ -703,13 +705,23 @@ struct sockaddr_in proxyaddr_in; struct sockaddr *proxyaddr; size_t proxyaddrlen; - struct sockaddr_in6 *addr_in6; - struct sockaddr_in *addr_in; + union { + struct sockaddr *addr; + struct sockaddr_in *addr_in; + struct sockaddr_in6 *addr_in6; + } addru; unsigned char buffer[22+512]; /* The extra 512 gives enough space for username/password or the hostname. */ size_t buflen, hostnamelen; int method; + fd_set fds; + struct timeval tv = { TIMEOUT_NOT_WAITING_SOCKS5_FOREVER, 0 }; + + addru.addr = addr; + + FD_ZERO (&fds); + FD_SET (HANDLE2SOCKET (sock), &fds); /* memset (&proxyaddr_in6, 0, sizeof proxyaddr_in6); */ memset (&proxyaddr_in, 0, sizeof proxyaddr_in); @@ -765,6 +777,25 @@ ret = do_writen (ctx, sock, buffer, 3); if (ret) return ret; + + /* There may be a different service at the port, which doesn't + respond. Not to be bothred by such a service. */ + /* FIXME: Since the process may block on select, it should be + npth_select to release thread scheduling if nPth is enabled. + Ideally, select is better to be in the system hooks. However, it + is considered OK to use select directly; Normal use case is three + steps: detect SOCKS5 service before nPth use, configure nPth + system hooks, and then use socks5_connect. For the first call, + select indeed blocks, but it's only single thread. For + succeeding calls, this select should soon return successfully. + */ + ret = select (HANDLE2SOCKET (sock)+1, &fds, NULL, NULL, &tv); + if (!ret) + { + gpg_err_set_errno (ETIMEDOUT); + return -1; + } + ret = do_readn (ctx, sock, buffer, 2); if (ret) return ret; @@ -848,20 +879,16 @@ } else if (addr->sa_family == AF_INET6) { - addr_in6 = (struct sockaddr_in6 *)addr; - buffer[3] = 4; /* ATYP = IPv6 */ - memcpy (buffer+ 4, &addr_in6->sin6_addr.s6_addr, 16); /* DST.ADDR */ - memcpy (buffer+20, &addr_in6->sin6_port, 2); /* DST.PORT */ + memcpy (buffer+ 4, &addru.addr_in6->sin6_addr.s6_addr, 16); /* DST.ADDR */ + memcpy (buffer+20, &addru.addr_in6->sin6_port, 2); /* DST.PORT */ buflen = 22; } else { - addr_in = (struct sockaddr_in *)addr; - buffer[3] = 1; /* ATYP = IPv4 */ - memcpy (buffer+4, &addr_in->sin_addr.s_addr, 4); /* DST.ADDR */ - memcpy (buffer+8, &addr_in->sin_port, 2); /* DST.PORT */ + memcpy (buffer+4, &addru.addr_in->sin_addr.s_addr, 4); /* DST.ADDR */ + memcpy (buffer+8, &addru.addr_in->sin_port, 2); /* DST.PORT */ buflen = 10; } ret = do_writen (ctx, sock, buffer, buflen); @@ -931,15 +958,22 @@ static int use_socks (struct sockaddr *addr) { + union { + struct sockaddr *addr; + struct sockaddr_in *addr_in; + struct sockaddr_in6 *addr_in6; + } addru; + + addru.addr = addr; + if (!tor_mode) return 0; else if (addr->sa_family == AF_INET6) { - struct sockaddr_in6 *addr_in6 = (struct sockaddr_in6 *)addr; const unsigned char *s; int i; - s = (unsigned char *)&addr_in6->sin6_addr.s6_addr; + s = (unsigned char *)&addru.addr_in6->sin6_addr.s6_addr; if (s[15] != 1) return 1; /* Last octet is not 1 - not the loopback address. */ for (i=0; i < 15; i++, s++) @@ -950,9 +984,7 @@ } else if (addr->sa_family == AF_INET) { - struct sockaddr_in *addr_in = (struct sockaddr_in *)addr; - - if (*(unsigned char*)&addr_in->sin_addr.s_addr == 127) + if (*(unsigned char*)&addru.addr_in->sin_addr.s_addr == 127) return 0; /* Loopback (127.0.0.0/8) */ return 1; 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.1/src/assuan.h.in new/libassuan-2.5.3/src/assuan.h.in --- old/libassuan-2.5.1/src/assuan.h.in 2017-12-07 15:06:40.000000000 +0100 +++ new/libassuan-2.5.3/src/assuan.h.in 2019-02-11 11:28:56.000000000 +0100 @@ -1,6 +1,6 @@ /* assuan.h - Definitions for the Assuan IPC library -*- c -*- * Copyright (C) 2001-2013 Free Software Foundation, Inc. - * Copyright (C) 2001-2017 g10 Code GmbH + * Copyright (C) 2001-2019 g10 Code GmbH * * This file is part of Assuan. * @@ -16,7 +16,7 @@ * * You should have received a copy of the GNU Lesser General Public * License along with this program; if not, see <http://www.gnu.org/licenses/>. - * SPDX-License-Identifier: LGPL-2.1+ + * SPDX-License-Identifier: LGPL-2.1-or-later * * @configure_input@ */ @@ -382,8 +382,8 @@ struct _assuan_peercred { #ifdef _WIN32 - /* Empty struct not allowed on some compilers. */ - unsigned int _dummy; + /* Empty struct not allowed on some compilers, so, put this (not valid). */ + pid_t pid; #else pid_t pid; uid_t uid; 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.1/src/libassuan-config.in new/libassuan-2.5.3/src/libassuan-config.in --- old/libassuan-2.5.1/src/libassuan-config.in 2017-11-15 16:52:31.000000000 +0100 +++ new/libassuan-2.5.3/src/libassuan-config.in 2018-10-25 11:20:28.000000000 +0200 @@ -15,8 +15,8 @@ gpg_error_libs="@GPG_ERROR_LIBS@" PGM=libassuan-config -lib="@LIBASSUAN_CONFIG_LIB@" -extralibs="@LIBASSUAN_CONFIG_EXTRA_LIBS@ $gpg_error_libs" +lib="@LIBASSUAN_CONFIG_LIBS@" +extralibs="$gpg_error_libs" cflags="@LIBASSUAN_CONFIG_CFLAGS@ $gpg_error_cflags" api_version="@LIBASSUAN_CONFIG_API_VERSION@" my_host="@LIBASSUAN_CONFIG_HOST@" @@ -70,8 +70,17 @@ --exec-prefix) echo_exec_prefix=yes ;; - --version) - echo "@VERSION@" + --variable=*) + case "${1#*=}" in + prefix) echo "$prefix" ;; + exec_prefix) echo "$exec_prefix" ;; + host) echo "$my_host" ;; + api_version) echo "$api_version" ;; + esac + exit 0 + ;; + --modversion|--version) + echo "@PACKAGE_VERSION@" exit 0 ;; --api-version) 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.1/src/libassuan.m4 new/libassuan-2.5.3/src/libassuan.m4 --- old/libassuan-2.5.1/src/libassuan.m4 2017-11-15 16:53:09.000000000 +0100 +++ new/libassuan-2.5.3/src/libassuan.m4 2018-12-13 08:52:39.000000000 +0100 @@ -21,13 +21,22 @@ [prefix where LIBASSUAN is installed (optional)]), libassuan_config_prefix="$withval", libassuan_config_prefix="") if test x$libassuan_config_prefix != x ; then - libassuan_config_args="$libassuan_config_args --prefix=$libassuan_config_prefix" if test x${LIBASSUAN_CONFIG+set} != xset ; then LIBASSUAN_CONFIG=$libassuan_config_prefix/bin/libassuan-config fi fi - AC_PATH_TOOL(LIBASSUAN_CONFIG, libassuan-config, no) + use_gpgrt_config="" + if test x"${LIBASSUAN_CONFIG}" = x -a x"$GPGRT_CONFIG" != x -a "$GPGRT_CONFIG" != "no"; then + if $GPGRT_CONFIG libassuan --exists; then + LIBASSUAN_CONFIG="$GPGRT_CONFIG libassuan" + AC_MSG_NOTICE([Use gpgrt-config as libassuan-config]) + use_gpgrt_config=yes + fi + fi + if test -z "$use_gpgrt_config"; then + AC_PATH_PROG(LIBASSUAN_CONFIG, libassuan-config, no) + fi tmp=ifelse([$1], ,1:0.9.2,$1) if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then @@ -40,8 +49,7 @@ AC_MSG_CHECKING(for LIBASSUAN - version >= $min_libassuan_version) ok=no - if test "$LIBASSUAN_CONFIG" != "no" \ - && test -f "$LIBASSUAN_CONFIG" ; then + if test "$LIBASSUAN_CONFIG" != "no"; then req_major=`echo $min_libassuan_version | \ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\1/'` req_minor=`echo $min_libassuan_version | \ @@ -49,7 +57,11 @@ req_micro=`echo $min_libassuan_version | \ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\3/'` - libassuan_config_version=`$LIBASSUAN_CONFIG --version` + if test -z "$use_gpgrt_config"; then + libassuan_config_version=`$LIBASSUAN_CONFIG --version` + else + libassuan_config_version=`$LIBASSUAN_CONFIG --modversion` + fi major=`echo $libassuan_config_version | \ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'` minor=`echo $libassuan_config_version | \ @@ -82,7 +94,11 @@ if test $ok = yes; then if test "$req_libassuan_api" -gt 0 ; then - tmp=`$LIBASSUAN_CONFIG --api-version 2>/dev/null || echo 0` + if test -z "$use_gpgrt_config"; then + tmp=`$LIBASSUAN_CONFIG --api-version 2>/dev/null || echo 0` + else + tmp=`$LIBASSUAN_CONFIG --variable=api_version 2>/dev/null || echo 0` + fi if test "$tmp" -gt 0 ; then AC_MSG_CHECKING([LIBASSUAN API version]) if test "$req_libassuan_api" -eq "$tmp" ; then @@ -97,12 +113,16 @@ if test $ok = yes; then if test x"$host" != x ; then - libassuan_config_host=`$LIBASSUAN_CONFIG --host 2>/dev/null || echo none` + if test -z "$use_gpgrt_config"; then + libassuan_config_host=`$LIBASSUAN_CONFIG --host 2>/dev/null || echo none` + else + libassuan_config_host=`$LIBASSUAN_CONFIG --variable=host 2>/dev/null || echo none` + fi if test x"$libassuan_config_host" != xnone ; then if test x"$libassuan_config_host" != x"$host" ; then AC_MSG_WARN([[ *** -*** The config script $LIBASSUAN_CONFIG was +*** The config script "$LIBASSUAN_CONFIG" was *** built for $libassuan_config_host and thus may not match the *** used host $host. *** You may want to use the configure option --with-libassuan-prefix @@ -138,8 +158,8 @@ AC_DEFUN([AM_PATH_LIBASSUAN], [ _AM_PATH_LIBASSUAN_COMMON($1) if test $ok = yes; then - LIBASSUAN_CFLAGS=`$LIBASSUAN_CONFIG $libassuan_config_args --cflags` - LIBASSUAN_LIBS=`$LIBASSUAN_CONFIG $libassuan_config_args --libs` + LIBASSUAN_CFLAGS=`$LIBASSUAN_CONFIG --cflags` + LIBASSUAN_LIBS=`$LIBASSUAN_CONFIG --libs` ifelse([$2], , :, [$2]) else LIBASSUAN_CFLAGS="" 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.1/src/libassuan.pc.in new/libassuan-2.5.3/src/libassuan.pc.in --- old/libassuan-2.5.1/src/libassuan.pc.in 1970-01-01 01:00:00.000000000 +0100 +++ new/libassuan-2.5.3/src/libassuan.pc.in 2018-10-25 11:20:28.000000000 +0200 @@ -0,0 +1,14 @@ +prefix=@prefix@ +exec_prefix=@exec_prefix@ +includedir=@includedir@ +libdir=@libdir@ +host=@LIBASSUAN_CONFIG_HOST@ +api_version=@LIBASSUAN_CONFIG_API_VERSION@ + +Name: libassuan +Description: IPC library for the GnuPG components +Requires: gpg-error +Version: @PACKAGE_VERSION@ +Cflags: @LIBASSUAN_CONFIG_CFLAGS@ +Libs: @LIBASSUAN_CONFIG_LIBS@ +URL: https://www.gnupg.org/related_software/libassuan/index.html 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.1/src/libassuan.vers new/libassuan-2.5.3/src/libassuan.vers --- old/libassuan-2.5.1/src/libassuan.vers 2017-12-07 13:25:43.000000000 +0100 +++ new/libassuan-2.5.3/src/libassuan.vers 2018-12-13 08:52:39.000000000 +0100 @@ -51,7 +51,6 @@ assuan_inquire; assuan_inquire_ext; assuan_new; - assuan_new; assuan_new_ext; assuan_pending_line; assuan_pipe_connect; @@ -70,7 +69,6 @@ assuan_register_post_cmd_notify; assuan_register_reset_notify; assuan_release; - assuan_release; assuan_send_data; assuan_sendfd; assuan_set_assuan_log_prefix; 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.1/src/server.c new/libassuan-2.5.3/src/server.c --- old/libassuan-2.5.1/src/server.c 2017-11-15 16:55:43.000000000 +0100 +++ new/libassuan-2.5.3/src/server.c 2018-12-13 08:52:39.000000000 +0100 @@ -46,7 +46,6 @@ } if (ctx->pid != ASSUAN_INVALID_PID && ctx->pid) { - _assuan_waitpid (ctx, ctx->pid, ctx->flags.no_waitpid, NULL, 0); ctx->pid = ASSUAN_INVALID_PID; } 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.1/src/stpcpy.c new/libassuan-2.5.3/src/stpcpy.c --- old/libassuan-2.5.1/src/stpcpy.c 2017-11-15 16:56:28.000000000 +0100 +++ new/libassuan-2.5.3/src/stpcpy.c 2018-07-02 17:46:50.000000000 +0200 @@ -32,9 +32,7 @@ /* Copy SRC to DEST, returning the address of the terminating '\0' in DEST. */ char * -__stpcpy (dest, src) - char *dest; - const char *src; +__stpcpy (char *dest, const char *src) { register char *d = dest; register const char *s = src; 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.1/src/sysutils.c new/libassuan-2.5.3/src/sysutils.c --- old/libassuan-2.5.1/src/sysutils.c 2017-12-07 14:06:29.000000000 +0100 +++ new/libassuan-2.5.3/src/sysutils.c 2019-02-11 11:28:23.000000000 +0100 @@ -47,9 +47,9 @@ "\n\n" "This is Libassuan " PACKAGE_VERSION " - The GnuPG IPC Library\n" "Copyright 2001-2013 Free Software Foundation, Inc.\n" - "Copyright 2001-2017 g10 Code GmbH\n" + "Copyright 2001-2019 g10 Code GmbH\n" "\n" - "SPDX-License-Identifier: LGPL-2.1+\n" + "SPDX-License-Identifier: LGPL-2.1-or-later\n" "(" BUILD_REVISION " " BUILD_TIMESTAMP ")\n" "\n\n"; return blurb; 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.1/src/versioninfo.rc.in new/libassuan-2.5.3/src/versioninfo.rc.in --- old/libassuan-2.5.1/src/versioninfo.rc.in 2017-12-07 14:06:13.000000000 +0100 +++ new/libassuan-2.5.3/src/versioninfo.rc.in 2019-02-11 11:27:34.000000000 +0100 @@ -40,7 +40,7 @@ VALUE "FileDescription", "Assuan - GnuPG IPC\0" VALUE "FileVersion", "@LIBASSUAN_LT_CURRENT@.@LIBASSUAN_LT_AGE@.@LIBASSUAN_LT_REVISION@.@BUILD_REVISION@\0" VALUE "InternalName", "libassuan\0" - VALUE "LegalCopyright", "Copyright ? 2001-2017 g10 Code GmbH\0" + VALUE "LegalCopyright", "Copyright ? 2001-2019 g10 Code GmbH\0" VALUE "LegalTrademarks", "\0" VALUE "OriginalFilename", "libassuan.dll\0" VALUE "PrivateBuild", "\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.1/tests/Makefile.am new/libassuan-2.5.3/tests/Makefile.am --- old/libassuan-2.5.1/tests/Makefile.am 2016-07-13 15:30:39.000000000 +0200 +++ new/libassuan-2.5.3/tests/Makefile.am 2019-01-25 13:50:55.000000000 +0100 @@ -25,14 +25,19 @@ BUILT_SOURCES = CLEANFILES = -testtools = socks5 - -TESTS = version pipeconnect +TESTS = version if HAVE_W32CE_SYSTEM w32cetools = ce-createpipe ce-server endif +if HAVE_W32_SYSTEM +testtools = +else +TESTS += pipeconnect +testtools = socks5 +endif + if USE_DESCRIPTOR_PASSING TESTS += fdpassing endif @@ -42,5 +47,6 @@ noinst_HEADERS = common.h noinst_PROGRAMS = $(TESTS) $(w32cetools) $(testtools) -LDADD = ../src/libassuan.la $(NETLIBS) $(GPG_ERROR_LIBS) +LDADD = ../src/libassuan.la $(NETLIBS) $(GPG_ERROR_LIBS) \ + @LDADD_FOR_TESTS_KLUDGE@ ++++++ libgpg-error-1.27.tar.bz2 -> libgpg-error-1.37.tar.bz2 ++++++ ++++ 51716 lines of diff (skipped) ++++++ libreoffice-7.0.4.2.tar.xz -> libreoffice-7.1.0.3.tar.xz ++++++ /work/SRC/openSUSE:Factory/libreoffice/libreoffice-7.0.4.2.tar.xz /work/SRC/openSUSE:Factory/.libreoffice.new.28504/libreoffice-7.1.0.3.tar.xz differ: char 27, line 1 ++++++ libreoffice-help-7.0.4.2.tar.xz -> libreoffice-help-7.1.0.3.tar.xz ++++++ /work/SRC/openSUSE:Factory/libreoffice/libreoffice-help-7.0.4.2.tar.xz /work/SRC/openSUSE:Factory/.libreoffice.new.28504/libreoffice-help-7.1.0.3.tar.xz differ: char 26, line 1 ++++++ libreoffice-translations-7.0.4.2.tar.xz -> libreoffice-translations-7.1.0.3.tar.xz ++++++ /work/SRC/openSUSE:Factory/libreoffice/libreoffice-translations-7.0.4.2.tar.xz /work/SRC/openSUSE:Factory/.libreoffice.new.28504/libreoffice-translations-7.1.0.3.tar.xz differ: char 26, line 1 ++++++ skia-m85-e684c6daef6bfb774a325a069eda1f76ca6ac26c.tar.xz -> skia-m88-59bafeeaa7de9eb753e3778c414e01dcf013dcd8.tar.xz ++++++ /work/SRC/openSUSE:Factory/libreoffice/skia-m85-e684c6daef6bfb774a325a069eda1f76ca6ac26c.tar.xz /work/SRC/openSUSE:Factory/.libreoffice.new.28504/skia-m88-59bafeeaa7de9eb753e3778c414e01dcf013dcd8.tar.xz differ: char 15, line 1 ++++++ use-comphelper.patch ++++++ >From f14b83b38d35a585976ef5d422754d8e0d0266a6 Mon Sep 17 00:00:00 2001 From: Andrew Udvare <audv...@gmail.com> Date: Thu, 24 Dec 2020 06:04:16 -0500 Subject: [PATCH] ucp: fix call to getComponentContext Commit 3f9940c2e050830051a31e4b70736132e034a9db mistakenly removed include/ucbhelper/getcomponentcontext.hxx seeing the getComponentContext method as unused. According to that file, ucbhelper::getComponentContext was just a duplicate of comphelper::getComponentContext so this commit changes to calling that method instead. Change-Id: Ibd66b56a72afce437a26417d7944ec1ace34a4eb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108262 Reviewed-by: Julien Nabet <serval2...@yahoo.fr> Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk> Tested-by: Noel Grandin <noel.gran...@collabora.co.uk> --- ucb/source/ucp/webdav/webdavprovider.cxx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ucb/source/ucp/webdav/webdavprovider.cxx b/ucb/source/ucp/webdav/webdavprovider.cxx index 462e4e5a98f7..570b36e6180c 100644 --- a/ucb/source/ucp/webdav/webdavprovider.cxx +++ b/ucb/source/ucp/webdav/webdavprovider.cxx @@ -17,6 +17,7 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ +#include <comphelper/processfactory.hxx> #include <ucbhelper/contentidentifier.hxx> #include <ucbhelper/macros.hxx> #include "webdavprovider.hxx" @@ -106,7 +107,7 @@ static css::uno::Reference< css::uno::XInterface > ContentProvider_CreateInstance( const css::uno::Reference< css::lang::XMultiServiceFactory> & rSMgr ) { css::lang::XServiceInfo* pX = - static_cast<css::lang::XServiceInfo*>(new ContentProvider( ucbhelper::getComponentContext(rSMgr) )); + static_cast<css::lang::XServiceInfo*>(new ContentProvider( comphelper::getComponentContext(rSMgr) )); return css::uno::Reference< css::uno::XInterface >::query( pX ); }