Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package xml-security-c for openSUSE:Factory checked in at 2021-11-10 21:47:06 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/xml-security-c (Old) and /work/SRC/openSUSE:Factory/.xml-security-c.new.1890 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xml-security-c" Wed Nov 10 21:47:06 2021 rev:7 rq:930722 version:2.0.4 Changes: -------- --- /work/SRC/openSUSE:Factory/xml-security-c/xml-security-c.changes 2021-02-17 18:13:37.658043079 +0100 +++ /work/SRC/openSUSE:Factory/.xml-security-c.new.1890/xml-security-c.changes 2021-11-10 21:47:56.731850604 +0100 @@ -1,0 +2,6 @@ +Mon Nov 8 15:25:45 UTC 2021 - Danilo Spinella <danilo.spine...@suse.com> + +- Update to 2.0.4: no changelog available +- Drop xml-security-c-2.0.2-xalan-1.12.patch + +------------------------------------------------------------------- Old: ---- xml-security-c-2.0.2-xalan-1.12.patch xml-security-c-2.0.2.tar.bz2 xml-security-c-2.0.2.tar.bz2.asc New: ---- xml-security-c-2.0.4.tar.bz2 xml-security-c-2.0.4.tar.bz2.asc ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xml-security-c.spec ++++++ --- /var/tmp/diff_new_pack.0kKXaI/_old 2021-11-10 21:47:57.155850789 +0100 +++ /var/tmp/diff_new_pack.0kKXaI/_new 2021-11-10 21:47:57.159850791 +0100 @@ -18,7 +18,7 @@ %define libvers 20 Name: xml-security-c -Version: 2.0.2 +Version: 2.0.4 Release: 0 Summary: Apache XML security C++ library License: Apache-2.0 @@ -27,7 +27,6 @@ Source0: http://www.apache.org/dist/santuario/c-library/%{name}-%{version}.tar.bz2 Source1: http://www.apache.org/dist/santuario/c-library/%{name}-%{version}.tar.bz2.asc Source2: %{name}.keyring -Patch0: xml-security-c-2.0.2-xalan-1.12.patch BuildRequires: gcc-c++ BuildRequires: libxalan-c-devel >= 1.11 BuildRequires: libxerces-c-devel >= 3.2 ++++++ xml-security-c-2.0.2.tar.bz2 -> xml-security-c-2.0.4.tar.bz2 ++++++ ++++ 16777 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/xml-security-c-2.0.2/NOTICE.txt new/xml-security-c-2.0.4/NOTICE.txt --- old/xml-security-c-2.0.2/NOTICE.txt 2018-06-18 16:48:28.000000000 +0200 +++ new/xml-security-c-2.0.4/NOTICE.txt 2021-10-20 14:11:47.000000000 +0200 @@ -1,5 +1,5 @@ Apache Santuario XML-Security-C Library -Copyright 2010-2018 The Apache Software Foundation +Copyright 2010-2021 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/). 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/xml-security-c-2.0.2/config.h.in new/xml-security-c-2.0.4/config.h.in --- old/xml-security-c-2.0.2/config.h.in 2018-10-11 16:47:45.000000000 +0200 +++ new/xml-security-c-2.0.4/config.h.in 2021-10-28 20:13:40.000000000 +0200 @@ -9,9 +9,6 @@ /* Define to 1 if you have the <inttypes.h> header file. */ #undef HAVE_INTTYPES_H -/* Define to 1 if you have the <memory.h> header file. */ -#undef HAVE_MEMORY_H - /* Define if you have POSIX threads libraries and header files. */ #undef HAVE_PTHREAD @@ -21,6 +18,9 @@ /* Define to 1 if you have the <stdint.h> header file. */ #undef HAVE_STDINT_H +/* Define to 1 if you have the <stdio.h> header file. */ +#undef HAVE_STDIO_H + /* Define to 1 if you have the <stdlib.h> header file. */ #undef HAVE_STDLIB_H @@ -70,7 +70,9 @@ your system. */ #undef PTHREAD_CREATE_JOINABLE -/* Define to 1 if you have the ANSI C header files. */ +/* Define to 1 if all of the C90 standard headers exist (not just the ones + required in a freestanding environment). This macro is provided for + backward compatibility; new code need not use it. */ #undef STDC_HEADERS /* Version number of package */ @@ -121,11 +123,6 @@ /* Define to 1 if XKMS support is included. */ #undef XSEC_XKMS_ENABLED -/* Enable large inode numbers on Mac OS X 10.5. */ -#ifndef _DARWIN_USE_64_BIT_INODE -# define _DARWIN_USE_64_BIT_INODE 1 -#endif - /* Number of bits in a file offset, on hosts where this is settable. */ #undef _FILE_OFFSET_BITS 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/xml-security-c-2.0.2/configure.ac new/xml-security-c-2.0.4/configure.ac --- old/xml-security-c-2.0.2/configure.ac 2018-10-11 15:23:01.000000000 +0200 +++ new/xml-security-c-2.0.4/configure.ac 2021-10-28 20:10:29.000000000 +0200 @@ -17,26 +17,22 @@ # Process this file with autoreconf AC_PREREQ(2.50) -AC_INIT([[XML-Security-C]],[2.0.2],[d...@santuario.apache.org],[xml-security-c]) +AC_INIT([[XML-Security-C]],[2.0.4],[d...@santuario.apache.org],[xml-security-c]) AC_CONFIG_SRCDIR(xsec) AC_CONFIG_AUX_DIR(build-aux) AC_CONFIG_MACRO_DIR(m4) AM_INIT_AUTOMAKE([foreign dist-bzip2 dist-zip subdir-objects nostdinc]) -AC_PROG_LIBTOOL PKG_INSTALLDIR AC_SYS_LARGEFILE AC_ARG_ENABLE(debug, - AS_HELP_STRING([--enable-debug],[Have GCC compile with symbols (Default = no)]), + AS_HELP_STRING([--enable-debug],[Produce debug variant (Default = no)]), enable_debug=$enableval, enable_debug=no) if test "$enable_debug" = "yes" ; then - GCC_CFLAGS="$CFLAGS -g -D_DEBUG" - GCC_CXXFLAGS="$CXXFLAGS -g -D_DEBUG" -else - GCC_CFLAGS="$CFLAGS -O2 -DNDEBUG" - GCC_CXXFLAGS="$CXXFLAGS -O2 -DNDEBUG" + AM_CFLAGS="-D_DEBUG" + AM_CXXFLAGS="-D_DEBUG" fi @@ -50,22 +46,21 @@ AC_PROG_CC([gcc gcc3 cc]) AC_PROG_CXX([g++ g++3 c++ CC]) +LT_INIT([disable-static]) AC_PROG_INSTALL AC_PROG_LN_S AC_PROG_AWK AC_CHECK_PROG(AUTOCONF, autoconf, autoconf, true) if test "$GCC" = "yes" ; then - CFLAGS="-Wall $GCC_CFLAGS" - CXXFLAGS="-Wall $GCC_CXXFLAGS" + AM_CFLAGS="$AM_CFLAGS -Wall -W" + AM_CXXFLAGS="$AM_CXXFLAGS -Wall -W" fi -# pthreads -AX_PTHREAD -CFLAGS="${CFLAGS} ${PTHREAD_CFLAGS}" -CXXFLAGS="${CXXFLAGS} ${PTHREAD_CFLAGS}" -LIBS="${LIBS} ${PTHREAD_LIBS}" -CC="${PTHREAD_CC}" +AC_SUBST([AM_CFLAGS]) +AC_SUBST([AM_CXXFLAGS]) + +AX_PTHREAD(,[AC_MSG_ERROR([unable to find pthreads, currently this is required])]) # Check for required includes AC_CHECK_HEADERS([unistd.h direct.h]) @@ -74,14 +69,18 @@ # Check whether getcwd can dynamically allocate memory. AC_MSG_CHECKING([whether getcwd(NULL, 0) works]) -AC_RUN_IFELSE([AC_LANG_PROGRAM([#include <stdlib.h> - #include <unistd.h>], -[char *cwd = getcwd(NULL, 0); -return (cwd != NULL) ? EXIT_SUCCESS : EXIT_FAILURE;])], - [AC_MSG_RESULT(yes) - AC_DEFINE([XSEC_HAVE_GETCWD_DYN], [1], - [Define to 1 if getcwd(NULL, 0) works])], - [AC_MSG_RESULT(no)]) +AC_CACHE_VAL([xml_cv_func_getcwd_null], +[AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include <stdlib.h> + #include <unistd.h> + char *cwd = getcwd(NULL, 0); + return (cwd != NULL) ? EXIT_SUCCESS : EXIT_FAILURE;]])], + [xml_cv_func_getcwd_null=yes], + [xml_cv_func_getcwd_null=no])]) +AC_MSG_RESULT([$xml_cv_func_getcwd_null]) +if test $xml_cv_func_getcwd_null = yes; then +AC_DEFINE([XSEC_HAVE_GETCWD_DYN], [1], + [Define to 1 if getcwd(NULL, 0) works]) +fi AC_LANG(C++) 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/xml-security-c-2.0.2/m4/ax_pthread.m4 new/xml-security-c-2.0.4/m4/ax_pthread.m4 --- old/xml-security-c-2.0.2/m4/ax_pthread.m4 2018-06-18 16:48:28.000000000 +0200 +++ new/xml-security-c-2.0.4/m4/ax_pthread.m4 2021-10-14 22:02:15.000000000 +0200 @@ -1,5 +1,5 @@ # =========================================================================== -# http://www.gnu.org/software/autoconf-archive/ax_pthread.html +# https://www.gnu.org/software/autoconf-archive/ax_pthread.html # =========================================================================== # # SYNOPSIS @@ -14,24 +14,28 @@ # flags that are needed. (The user can also force certain compiler # flags/libs to be tested by setting these environment variables.) # -# Also sets PTHREAD_CC to any special C compiler that is needed for -# multi-threaded programs (defaults to the value of CC otherwise). (This -# is necessary on AIX to use the special cc_r compiler alias.) +# Also sets PTHREAD_CC and PTHREAD_CXX to any special C compiler that is +# needed for multi-threaded programs (defaults to the value of CC +# respectively CXX otherwise). (This is necessary on e.g. AIX to use the +# special cc_r/CC_r compiler alias.) # # NOTE: You are assumed to not only compile your program with these flags, -# but also link it with them as well. e.g. you should link with +# but also to link with them as well. For example, you might link with # $PTHREAD_CC $CFLAGS $PTHREAD_CFLAGS $LDFLAGS ... $PTHREAD_LIBS $LIBS +# $PTHREAD_CXX $CXXFLAGS $PTHREAD_CFLAGS $LDFLAGS ... $PTHREAD_LIBS $LIBS # -# If you are only building threads programs, you may wish to use these +# If you are only building threaded programs, you may wish to use these # variables in your default LIBS, CFLAGS, and CC: # # LIBS="$PTHREAD_LIBS $LIBS" # CFLAGS="$CFLAGS $PTHREAD_CFLAGS" +# CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS" # CC="$PTHREAD_CC" +# CXX="$PTHREAD_CXX" # # In addition, if the PTHREAD_CREATE_JOINABLE thread-attribute constant -# has a nonstandard name, defines PTHREAD_CREATE_JOINABLE to that name -# (e.g. PTHREAD_CREATE_UNDETACHED on AIX). +# has a nonstandard name, this macro defines PTHREAD_CREATE_JOINABLE to +# that name (e.g. PTHREAD_CREATE_UNDETACHED on AIX). # # Also HAVE_PTHREAD_PRIO_INHERIT is defined if pthread is found and the # PTHREAD_PRIO_INHERIT symbol is defined when compiling with @@ -55,6 +59,7 @@ # # Copyright (c) 2008 Steven G. Johnson <stev...@alum.mit.edu> # Copyright (c) 2011 Daniel Richard G. <sk...@iskunk.org> +# Copyright (c) 2019 Marc Stevens <marc.stev...@cwi.nl> # # 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 @@ -67,7 +72,7 @@ # Public License for more details. # # You should have received a copy of the GNU General Public License along -# with this program. If not, see <http://www.gnu.org/licenses/>. +# 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 @@ -82,35 +87,41 @@ # modified version of the Autoconf Macro, you may extend this special # exception to the GPL to apply to your modified version as well. -#serial 16 +#serial 31 AU_ALIAS([ACX_PTHREAD], [AX_PTHREAD]) AC_DEFUN([AX_PTHREAD], [ AC_REQUIRE([AC_CANONICAL_HOST]) +AC_REQUIRE([AC_PROG_CC]) +AC_REQUIRE([AC_PROG_SED]) AC_LANG_PUSH([C]) ax_pthread_ok=no # We used to check for pthread.h first, but this fails if pthread.h -# requires special compiler flags (e.g. on True64 or Sequent). +# requires special compiler flags (e.g. on Tru64 or Sequent). # It gets checked for in the link test anyway. # First of all, check if the user has set any of the PTHREAD_LIBS, # etcetera environment variables, and if threads linking works using # them: -if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then - save_CFLAGS="$CFLAGS" +if test "x$PTHREAD_CFLAGS$PTHREAD_LIBS" != "x"; then + ax_pthread_save_CC="$CC" + ax_pthread_save_CFLAGS="$CFLAGS" + ax_pthread_save_LIBS="$LIBS" + AS_IF([test "x$PTHREAD_CC" != "x"], [CC="$PTHREAD_CC"]) + AS_IF([test "x$PTHREAD_CXX" != "x"], [CXX="$PTHREAD_CXX"]) CFLAGS="$CFLAGS $PTHREAD_CFLAGS" - save_LIBS="$LIBS" LIBS="$PTHREAD_LIBS $LIBS" - AC_MSG_CHECKING([for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS]) - AC_TRY_LINK_FUNC(pthread_join, ax_pthread_ok=yes) - AC_MSG_RESULT($ax_pthread_ok) - if test x"$ax_pthread_ok" = xno; then + AC_MSG_CHECKING([for pthread_join using $CC $PTHREAD_CFLAGS $PTHREAD_LIBS]) + AC_LINK_IFELSE([AC_LANG_CALL([], [pthread_join])], [ax_pthread_ok=yes]) + AC_MSG_RESULT([$ax_pthread_ok]) + if test "x$ax_pthread_ok" = "xno"; then PTHREAD_LIBS="" PTHREAD_CFLAGS="" fi - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" + CC="$ax_pthread_save_CC" + CFLAGS="$ax_pthread_save_CFLAGS" + LIBS="$ax_pthread_save_LIBS" fi # We must check for the threads library under a number of different @@ -118,12 +129,14 @@ # (e.g. DEC) have both -lpthread and -lpthreads, where one of the # libraries is broken (non-POSIX). -# Create a list of thread flags to try. Items starting with a "-" are -# C compiler flags, and other items are library names, except for "none" -# which indicates that we try without any flags at all, and "pthread-config" -# which is a program returning the flags for the Pth emulation library. +# Create a list of thread flags to try. Items with a "," contain both +# C compiler flags (before ",") and linker flags (after ","). Other items +# starting with a "-" are C compiler flags, and remaining items are +# library names, except for "none" which indicates that we try without +# any flags at all, and "pthread-config" which is a program returning +# the flags for the Pth emulation library. -ax_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config" +ax_pthread_flags="pthreads none -Kthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config" # The ordering *is* (sometimes) important. Some notes on the # individual items follow: @@ -132,68 +145,163 @@ # none: in case threads are in libc; should be tried before -Kthread and # other compiler flags to prevent continual compiler warnings # -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h) -# -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able) -# lthread: LinuxThreads port on FreeBSD (also preferred to -pthread) -# -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads) -# -pthreads: Solaris/gcc -# -mthreads: Mingw32/gcc, Lynx/gcc +# -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads), Tru64 +# (Note: HP C rejects this with "bad form for `-t' option") +# -pthreads: Solaris/gcc (Note: HP C also rejects) # -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it -# doesn't hurt to check since this sometimes defines pthreads too; -# also defines -D_REENTRANT) -# ... -mt is also the pthreads flag for HP/aCC +# doesn't hurt to check since this sometimes defines pthreads and +# -D_REENTRANT too), HP C (must be checked before -lpthread, which +# is present but should not be used directly; and before -mthreads, +# because the compiler interprets this as "-mt" + "-hreads") +# -mthreads: Mingw32/gcc, Lynx/gcc # pthread: Linux, etcetera # --thread-safe: KAI C++ # pthread-config: use pthread-config program (for GNU Pth library) -case "${host_cpu}-${host_os}" in - *solaris*) +case $host_os in + + freebsd*) + + # -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able) + # lthread: LinuxThreads port on FreeBSD (also preferred to -pthread) + + ax_pthread_flags="-kthread lthread $ax_pthread_flags" + ;; + + hpux*) + + # From the cc(1) man page: "[-mt] Sets various -D flags to enable + # multi-threading and also sets -lpthread." + + ax_pthread_flags="-mt -pthread pthread $ax_pthread_flags" + ;; + + openedition*) + + # IBM z/OS requires a feature-test macro to be defined in order to + # enable POSIX threads at all, so give the user a hint if this is + # not set. (We don't define these ourselves, as they can affect + # other portions of the system API in unpredictable ways.) + + AC_EGREP_CPP([AX_PTHREAD_ZOS_MISSING], + [ +# if !defined(_OPEN_THREADS) && !defined(_UNIX03_THREADS) + AX_PTHREAD_ZOS_MISSING +# endif + ], + [AC_MSG_WARN([IBM z/OS requires -D_OPEN_THREADS or -D_UNIX03_THREADS to enable pthreads support.])]) + ;; + + solaris*) # On Solaris (at least, for some versions), libc contains stubbed # (non-functional) versions of the pthreads routines, so link-based - # tests will erroneously succeed. (We need to link with -pthreads/-mt/ - # -lpthread.) (The stubs are missing pthread_cleanup_push, or rather - # a function called by this macro, so we could check for that, but - # who knows whether they'll stub that too in a future libc.) So, - # we'll just look for -pthreads and -lpthread first: + # tests will erroneously succeed. (N.B.: The stubs are missing + # pthread_cleanup_push, or rather a function called by this macro, + # so we could check for that, but who knows whether they'll stub + # that too in a future libc.) So we'll check first for the + # standard Solaris way of linking pthreads (-mt -lpthread). + + ax_pthread_flags="-mt,-lpthread pthread $ax_pthread_flags" + ;; +esac + +# Are we compiling with Clang? + +AC_CACHE_CHECK([whether $CC is Clang], + [ax_cv_PTHREAD_CLANG], + [ax_cv_PTHREAD_CLANG=no + # Note that Autoconf sets GCC=yes for Clang as well as GCC + if test "x$GCC" = "xyes"; then + AC_EGREP_CPP([AX_PTHREAD_CC_IS_CLANG], + [/* Note: Clang 2.7 lacks __clang_[a-z]+__ */ +# if defined(__clang__) && defined(__llvm__) + AX_PTHREAD_CC_IS_CLANG +# endif + ], + [ax_cv_PTHREAD_CLANG=yes]) + fi + ]) +ax_pthread_clang="$ax_cv_PTHREAD_CLANG" + + +# GCC generally uses -pthread, or -pthreads on some platforms (e.g. SPARC) + +# Note that for GCC and Clang -pthread generally implies -lpthread, +# except when -nostdlib is passed. +# This is problematic using libtool to build C++ shared libraries with pthread: +# [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=25460 +# [2] https://bugzilla.redhat.com/show_bug.cgi?id=661333 +# [3] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=468555 +# To solve this, first try -pthread together with -lpthread for GCC + +AS_IF([test "x$GCC" = "xyes"], + [ax_pthread_flags="-pthread,-lpthread -pthread -pthreads $ax_pthread_flags"]) + +# Clang takes -pthread (never supported any other flag), but we'll try with -lpthread first + +AS_IF([test "x$ax_pthread_clang" = "xyes"], + [ax_pthread_flags="-pthread,-lpthread -pthread"]) + + +# The presence of a feature test macro requesting re-entrant function +# definitions is, on some systems, a strong hint that pthreads support is +# correctly enabled + +case $host_os in + darwin* | hpux* | linux* | osf* | solaris*) + ax_pthread_check_macro="_REENTRANT" + ;; - ax_pthread_flags="-pthreads pthread -mt -pthread $ax_pthread_flags" + aix*) + ax_pthread_check_macro="_THREAD_SAFE" ;; - *-darwin*) - ax_pthread_flags="-pthread $ax_pthread_flags" + *) + ax_pthread_check_macro="--" ;; esac +AS_IF([test "x$ax_pthread_check_macro" = "x--"], + [ax_pthread_check_cond=0], + [ax_pthread_check_cond="!defined($ax_pthread_check_macro)"]) -if test x"$ax_pthread_ok" = xno; then -for flag in $ax_pthread_flags; do - case $flag in +if test "x$ax_pthread_ok" = "xno"; then +for ax_pthread_try_flag in $ax_pthread_flags; do + + case $ax_pthread_try_flag in none) AC_MSG_CHECKING([whether pthreads work without any flags]) ;; + *,*) + PTHREAD_CFLAGS=`echo $ax_pthread_try_flag | sed "s/^\(.*\),\(.*\)$/\1/"` + PTHREAD_LIBS=`echo $ax_pthread_try_flag | sed "s/^\(.*\),\(.*\)$/\2/"` + AC_MSG_CHECKING([whether pthreads work with "$PTHREAD_CFLAGS" and "$PTHREAD_LIBS"]) + ;; + -*) - AC_MSG_CHECKING([whether pthreads work with $flag]) - PTHREAD_CFLAGS="$flag" + AC_MSG_CHECKING([whether pthreads work with $ax_pthread_try_flag]) + PTHREAD_CFLAGS="$ax_pthread_try_flag" ;; pthread-config) - AC_CHECK_PROG(ax_pthread_config, pthread-config, yes, no) - if test x"$ax_pthread_config" = xno; then continue; fi + AC_CHECK_PROG([ax_pthread_config], [pthread-config], [yes], [no]) + AS_IF([test "x$ax_pthread_config" = "xno"], [continue]) PTHREAD_CFLAGS="`pthread-config --cflags`" PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`" ;; *) - AC_MSG_CHECKING([for the pthreads library -l$flag]) - PTHREAD_LIBS="-l$flag" + AC_MSG_CHECKING([for the pthreads library -l$ax_pthread_try_flag]) + PTHREAD_LIBS="-l$ax_pthread_try_flag" ;; esac - save_LIBS="$LIBS" - save_CFLAGS="$CFLAGS" - LIBS="$PTHREAD_LIBS $LIBS" + ax_pthread_save_CFLAGS="$CFLAGS" + ax_pthread_save_LIBS="$LIBS" CFLAGS="$CFLAGS $PTHREAD_CFLAGS" + LIBS="$PTHREAD_LIBS $LIBS" # Check for various functions. We must include pthread.h, # since some functions may be macros. (On the Sequent, we @@ -204,8 +312,18 @@ # pthread_cleanup_push because it is one of the few pthread # functions on Solaris that doesn't have a non-functional libc stub. # We try pthread_create on general principles. + AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <pthread.h> - static void routine(void *a) { a = 0; } +# if $ax_pthread_check_cond +# error "$ax_pthread_check_macro must be defined" +# endif + static void *some_global = NULL; + static void routine(void *a) + { + /* To avoid any unused-parameter or + unused-but-set-parameter warning. */ + some_global = a; + } static void *start_routine(void *a) { return a; }], [pthread_t th; pthread_attr_t attr; pthread_create(&th, 0, start_routine, 0); @@ -213,93 +331,188 @@ pthread_attr_init(&attr); pthread_cleanup_push(routine, 0); pthread_cleanup_pop(0) /* ; */])], - [ax_pthread_ok=yes], - []) + [ax_pthread_ok=yes], + []) - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" + CFLAGS="$ax_pthread_save_CFLAGS" + LIBS="$ax_pthread_save_LIBS" - AC_MSG_RESULT($ax_pthread_ok) - if test "x$ax_pthread_ok" = xyes; then - break; - fi + AC_MSG_RESULT([$ax_pthread_ok]) + AS_IF([test "x$ax_pthread_ok" = "xyes"], [break]) PTHREAD_LIBS="" PTHREAD_CFLAGS="" done fi + +# Clang needs special handling, because older versions handle the -pthread +# option in a rather... idiosyncratic way + +if test "x$ax_pthread_clang" = "xyes"; then + + # Clang takes -pthread; it has never supported any other flag + + # (Note 1: This will need to be revisited if a system that Clang + # supports has POSIX threads in a separate library. This tends not + # to be the way of modern systems, but it's conceivable.) + + # (Note 2: On some systems, notably Darwin, -pthread is not needed + # to get POSIX threads support; the API is always present and + # active. We could reasonably leave PTHREAD_CFLAGS empty. But + # -pthread does define _REENTRANT, and while the Darwin headers + # ignore this macro, third-party headers might not.) + + # However, older versions of Clang make a point of warning the user + # that, in an invocation where only linking and no compilation is + # taking place, the -pthread option has no effect ("argument unused + # during compilation"). They expect -pthread to be passed in only + # when source code is being compiled. + # + # Problem is, this is at odds with the way Automake and most other + # C build frameworks function, which is that the same flags used in + # compilation (CFLAGS) are also used in linking. Many systems + # supported by AX_PTHREAD require exactly this for POSIX threads + # support, and in fact it is often not straightforward to specify a + # flag that is used only in the compilation phase and not in + # linking. Such a scenario is extremely rare in practice. + # + # Even though use of the -pthread flag in linking would only print + # a warning, this can be a nuisance for well-run software projects + # that build with -Werror. So if the active version of Clang has + # this misfeature, we search for an option to squash it. + + AC_CACHE_CHECK([whether Clang needs flag to prevent "argument unused" warning when linking with -pthread], + [ax_cv_PTHREAD_CLANG_NO_WARN_FLAG], + [ax_cv_PTHREAD_CLANG_NO_WARN_FLAG=unknown + # Create an alternate version of $ac_link that compiles and + # links in two steps (.c -> .o, .o -> exe) instead of one + # (.c -> exe), because the warning occurs only in the second + # step + ax_pthread_save_ac_link="$ac_link" + ax_pthread_sed='s/conftest\.\$ac_ext/conftest.$ac_objext/g' + ax_pthread_link_step=`AS_ECHO(["$ac_link"]) | sed "$ax_pthread_sed"` + ax_pthread_2step_ac_link="($ac_compile) && (echo ==== >&5) && ($ax_pthread_link_step)" + ax_pthread_save_CFLAGS="$CFLAGS" + for ax_pthread_try in '' -Qunused-arguments -Wno-unused-command-line-argument unknown; do + AS_IF([test "x$ax_pthread_try" = "xunknown"], [break]) + CFLAGS="-Werror -Wunknown-warning-option $ax_pthread_try -pthread $ax_pthread_save_CFLAGS" + ac_link="$ax_pthread_save_ac_link" + AC_LINK_IFELSE([AC_LANG_SOURCE([[int main(void){return 0;}]])], + [ac_link="$ax_pthread_2step_ac_link" + AC_LINK_IFELSE([AC_LANG_SOURCE([[int main(void){return 0;}]])], + [break]) + ]) + done + ac_link="$ax_pthread_save_ac_link" + CFLAGS="$ax_pthread_save_CFLAGS" + AS_IF([test "x$ax_pthread_try" = "x"], [ax_pthread_try=no]) + ax_cv_PTHREAD_CLANG_NO_WARN_FLAG="$ax_pthread_try" + ]) + + case "$ax_cv_PTHREAD_CLANG_NO_WARN_FLAG" in + no | unknown) ;; + *) PTHREAD_CFLAGS="$ax_cv_PTHREAD_CLANG_NO_WARN_FLAG $PTHREAD_CFLAGS" ;; + esac + +fi # $ax_pthread_clang = yes + + + # Various other checks: -if test "x$ax_pthread_ok" = xyes; then - save_LIBS="$LIBS" - LIBS="$PTHREAD_LIBS $LIBS" - save_CFLAGS="$CFLAGS" +if test "x$ax_pthread_ok" = "xyes"; then + ax_pthread_save_CFLAGS="$CFLAGS" + ax_pthread_save_LIBS="$LIBS" CFLAGS="$CFLAGS $PTHREAD_CFLAGS" + LIBS="$PTHREAD_LIBS $LIBS" # Detect AIX lossage: JOINABLE attribute is called UNDETACHED. - AC_MSG_CHECKING([for joinable pthread attribute]) - attr_name=unknown - for attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do - AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <pthread.h>], - [int attr = $attr; return attr /* ; */])], - [attr_name=$attr; break], - []) - done - AC_MSG_RESULT($attr_name) - if test "$attr_name" != PTHREAD_CREATE_JOINABLE; then - AC_DEFINE_UNQUOTED(PTHREAD_CREATE_JOINABLE, $attr_name, - [Define to necessary symbol if this constant - uses a non-standard name on your system.]) - fi - - AC_MSG_CHECKING([if more special flags are required for pthreads]) - flag=no - case "${host_cpu}-${host_os}" in - *-aix* | *-freebsd* | *-darwin*) flag="-D_THREAD_SAFE";; - *-osf* | *-hpux*) flag="-D_REENTRANT";; - *solaris*) - if test "$GCC" = "yes"; then - flag="-D_REENTRANT" - else - flag="-mt -D_REENTRANT" - fi - ;; - esac - AC_MSG_RESULT(${flag}) - if test "x$flag" != xno; then - PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS" - fi + AC_CACHE_CHECK([for joinable pthread attribute], + [ax_cv_PTHREAD_JOINABLE_ATTR], + [ax_cv_PTHREAD_JOINABLE_ATTR=unknown + for ax_pthread_attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do + AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <pthread.h>], + [int attr = $ax_pthread_attr; return attr /* ; */])], + [ax_cv_PTHREAD_JOINABLE_ATTR=$ax_pthread_attr; break], + []) + done + ]) + AS_IF([test "x$ax_cv_PTHREAD_JOINABLE_ATTR" != "xunknown" && \ + test "x$ax_cv_PTHREAD_JOINABLE_ATTR" != "xPTHREAD_CREATE_JOINABLE" && \ + test "x$ax_pthread_joinable_attr_defined" != "xyes"], + [AC_DEFINE_UNQUOTED([PTHREAD_CREATE_JOINABLE], + [$ax_cv_PTHREAD_JOINABLE_ATTR], + [Define to necessary symbol if this constant + uses a non-standard name on your system.]) + ax_pthread_joinable_attr_defined=yes + ]) + + AC_CACHE_CHECK([whether more special flags are required for pthreads], + [ax_cv_PTHREAD_SPECIAL_FLAGS], + [ax_cv_PTHREAD_SPECIAL_FLAGS=no + case $host_os in + solaris*) + ax_cv_PTHREAD_SPECIAL_FLAGS="-D_POSIX_PTHREAD_SEMANTICS" + ;; + esac + ]) + AS_IF([test "x$ax_cv_PTHREAD_SPECIAL_FLAGS" != "xno" && \ + test "x$ax_pthread_special_flags_added" != "xyes"], + [PTHREAD_CFLAGS="$ax_cv_PTHREAD_SPECIAL_FLAGS $PTHREAD_CFLAGS" + ax_pthread_special_flags_added=yes]) AC_CACHE_CHECK([for PTHREAD_PRIO_INHERIT], - ax_cv_PTHREAD_PRIO_INHERIT, [ - AC_LINK_IFELSE([ - AC_LANG_PROGRAM([[#include <pthread.h>]], [[int i = PTHREAD_PRIO_INHERIT;]])], - [ax_cv_PTHREAD_PRIO_INHERIT=yes], - [ax_cv_PTHREAD_PRIO_INHERIT=no]) + [ax_cv_PTHREAD_PRIO_INHERIT], + [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <pthread.h>]], + [[int i = PTHREAD_PRIO_INHERIT; + return i;]])], + [ax_cv_PTHREAD_PRIO_INHERIT=yes], + [ax_cv_PTHREAD_PRIO_INHERIT=no]) ]) - AS_IF([test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes"], - AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], 1, [Have PTHREAD_PRIO_INHERIT.])) - - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" - - # More AIX lossage: must compile with xlc_r or cc_r - if test x"$GCC" != xyes; then - AC_CHECK_PROGS(PTHREAD_CC, xlc_r cc_r, ${CC}) - else - PTHREAD_CC=$CC + AS_IF([test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes" && \ + test "x$ax_pthread_prio_inherit_defined" != "xyes"], + [AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], [1], [Have PTHREAD_PRIO_INHERIT.]) + ax_pthread_prio_inherit_defined=yes + ]) + + CFLAGS="$ax_pthread_save_CFLAGS" + LIBS="$ax_pthread_save_LIBS" + + # More AIX lossage: compile with *_r variant + if test "x$GCC" != "xyes"; then + case $host_os in + aix*) + AS_CASE(["x/$CC"], + [x*/c89|x*/c89_128|x*/c99|x*/c99_128|x*/cc|x*/cc128|x*/xlc|x*/xlc_v6|x*/xlc128|x*/xlc128_v6], + [#handle absolute path differently from PATH based program lookup + AS_CASE(["x$CC"], + [x/*], + [ + AS_IF([AS_EXECUTABLE_P([${CC}_r])],[PTHREAD_CC="${CC}_r"]) + AS_IF([test "x${CXX}" != "x"], [AS_IF([AS_EXECUTABLE_P([${CXX}_r])],[PTHREAD_CXX="${CXX}_r"])]) + ], + [ + AC_CHECK_PROGS([PTHREAD_CC],[${CC}_r],[$CC]) + AS_IF([test "x${CXX}" != "x"], [AC_CHECK_PROGS([PTHREAD_CXX],[${CXX}_r],[$CXX])]) + ] + ) + ]) + ;; + esac fi -else - PTHREAD_CC="$CC" fi -AC_SUBST(PTHREAD_LIBS) -AC_SUBST(PTHREAD_CFLAGS) -AC_SUBST(PTHREAD_CC) +test -n "$PTHREAD_CC" || PTHREAD_CC="$CC" +test -n "$PTHREAD_CXX" || PTHREAD_CXX="$CXX" + +AC_SUBST([PTHREAD_LIBS]) +AC_SUBST([PTHREAD_CFLAGS]) +AC_SUBST([PTHREAD_CC]) +AC_SUBST([PTHREAD_CXX]) # Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND: -if test x"$ax_pthread_ok" = xyes; then - ifelse([$1],,AC_DEFINE(HAVE_PTHREAD,1,[Define if you have POSIX threads libraries and header files.]),[$1]) +if test "x$ax_pthread_ok" = "xyes"; then + ifelse([$1],,[AC_DEFINE([HAVE_PTHREAD],[1],[Define if you have POSIX threads libraries and header files.])],[$1]) : else ax_pthread_ok=no 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/xml-security-c-2.0.2/xml-security-c.pc.in new/xml-security-c-2.0.4/xml-security-c.pc.in --- old/xml-security-c-2.0.2/xml-security-c.pc.in 2018-06-18 19:17:51.000000000 +0200 +++ new/xml-security-c-2.0.4/xml-security-c.pc.in 2021-10-20 14:13:59.000000000 +0200 @@ -7,7 +7,7 @@ Description: Apache XML security C++ library Version: @VERSION@ Libs: -L${libdir} -lxml-security-c -Libs.private: @xalan_LIBS@ -Cflags: -I${includedir} @xalan_CXXFLAGS@ +Libs.private: @xalan_LIBS@ @PTHREAD_LIBS@ +Cflags: -I${includedir} @xalan_CXXFLAGS@ @PTHREAD_CFLAGS@ Requires: @AX_PACKAGE_REQUIRES@ Requires.private: @AX_PACKAGE_REQUIRES_PRIVATE@ 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/xml-security-c-2.0.2/xml-security-c.spec new/xml-security-c-2.0.4/xml-security-c.spec --- old/xml-security-c-2.0.2/xml-security-c.spec 2018-10-11 15:24:26.000000000 +0200 +++ new/xml-security-c-2.0.4/xml-security-c.spec 2021-10-28 20:35:27.000000000 +0200 @@ -1,5 +1,5 @@ Name: xml-security-c -Version: 2.0.2 +Version: 2.0.4 Release: 1 Summary: Apache XML security C++ library Group: Development/Libraries/C and C++ @@ -15,6 +15,10 @@ BuildRequires: redhat-rpm-config %endif +%if 0%{?rhel} >= 8 || 0%{?centos_version} >= 800 +BuildRequires: gdb +%endif + %description The xml-security-c library is a C++ implementation of the XML Digital Signature and Encryption specifications. The library makes use of the Apache XML project's @@ -77,13 +81,9 @@ %{__rm} -rf $RPM_BUILD_ROOT -%ifnos solaris2.8 solaris2.9 solaris2.10 %post -n libxml-security-c20 -p /sbin/ldconfig -%endif -%ifnos solaris2.8 solaris2.9 solaris2.10 %postun -n libxml-security-c20 -p /sbin/ldconfig -%endif %files -n xml-security-c-bin %defattr(-,root,root,-) @@ -97,11 +97,17 @@ %defattr(-,root,root,-) %{_includedir}/* %{_libdir}/*.so -%{_libdir}/*.a %{_libdir}/pkgconfig/xml-security-c.pc %exclude %{_libdir}/*.la %changelog +* Thu Oct 14 2021 Scott Cantor <canto...@osu.edu> 2.0.3-1 +- Bump version for OpenSSL 3 fix + +* Fri Sep 27 2019 Scott Cantor <canto...@osu.edu> 2.0.0-2 +- Add CentOS 8 dependency rule +- Remove Solaris exclusions + * Mon Nov 13 2017 Scott Cantor <canto...@osu.edu> 2.0.0-1 - update to 2.0.0 - exclude libtool archive 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/xml-security-c-2.0.2/xsec/Makefile.am new/xml-security-c-2.0.4/xsec/Makefile.am --- old/xml-security-c-2.0.2/xsec/Makefile.am 2018-10-11 15:23:33.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/Makefile.am 2021-10-28 20:11:01.000000000 +0200 @@ -21,7 +21,7 @@ noinst_PROGRAMS = ${samples} bin_PROGRAMS = ${tools} -AM_CXXFLAGS = $(xerces_CXXFLAGS) $(xalan_CXXFLAGS) +AM_CXXFLAGS += $(xerces_CXXFLAGS) $(xalan_CXXFLAGS) LDADD = libxml-security-c.la $(xerces_LIBS) $(xalan_LIBS) # @@ -160,13 +160,15 @@ $(xalan_CXXFLAGS) \ $(xerces_CXXFLAGS) \ $(openssl_CFLAGS) \ - $(nss_CFLAGS) + $(nss_CFLAGS) \ + $(PTHREAD_CFLAGS) libxml_security_c_la_LIBADD = \ $(xalan_LIBS) \ $(xerces_LIBS) \ $(openssl_LIBS) \ - $(nss_LIBS) + $(nss_LIBS) \ + $(PTHREAD_LIBS) lib_LTLIBRARIES = libxml-security-c.la @@ -650,7 +652,7 @@ # # Now the library specific build items # -libxml_security_c_la_LDFLAGS = -version-info 20:2:0 +libxml_security_c_la_LDFLAGS = -version-info 20:4:0 EXTRA_DIST = \ utils/winutils/XSECSOAPRequestorSimpleWin32.cpp \ 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/xml-security-c-2.0.2/xsec/canon/XSECC14n20010315.cpp new/xml-security-c-2.0.4/xsec/canon/XSECC14n20010315.cpp --- old/xml-security-c-2.0.2/xsec/canon/XSECC14n20010315.cpp 2018-06-18 16:48:28.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/canon/XSECC14n20010315.cpp 2021-10-15 16:14:50.000000000 +0200 @@ -25,7 +25,7 @@ * * Author(s): Berin Lautenbach * - * $Id: XSECC14n20010315.cpp 1833341 2018-06-11 16:25:41Z scantor $ + * $Id: XSECC14n20010315.cpp 1894293 2021-10-15 14:14:50Z scantor $ * */ @@ -55,6 +55,11 @@ #include <xalanc/XPath/XPathEvaluator.hpp> #include <xalanc/XPath/NodeRefList.hpp> +// If this isn't defined, we're on Xalan 1.12+ and require modern C++ +#ifndef XALAN_USING_XALAN +# define XALAN_USING_XALAN(NAME) using xalanc :: NAME; +#endif + // Namespace definitions XALAN_USING_XALAN(XPathEvaluator) XALAN_USING_XALAN(XercesDOMSupport) 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/xml-security-c-2.0.2/xsec/dsig/DSIGReference.hpp new/xml-security-c-2.0.4/xsec/dsig/DSIGReference.hpp --- old/xml-security-c-2.0.2/xsec/dsig/DSIGReference.hpp 2018-06-18 16:48:29.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/dsig/DSIGReference.hpp 2021-10-14 22:25:33.000000000 +0200 @@ -22,10 +22,13 @@ * * DSIG_Reference := Class for checking and setting up reference nodes in a DSIG signature * - * $Id: DSIGReference.hpp 1818065 2017-12-13 20:55:19Z scantor $ + * $Id: DSIGReference.hpp 1894269 2021-10-14 20:25:32Z scantor $ * */ +#ifndef DSIGREFERENCE_INCLUDE +#define DSIGREFERENCE_INCLUDE + // High level include #include <xsec/framework/XSECDefs.hpp> @@ -528,6 +531,4 @@ friend class DSIGSignedInfo; }; - - - +#endif /* #define DSIGREFERENCE_INCLUDE */ 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/xml-security-c-2.0.2/xsec/dsig/DSIGXPathHere.hpp new/xml-security-c-2.0.4/xsec/dsig/DSIGXPathHere.hpp --- old/xml-security-c-2.0.2/xsec/dsig/DSIGXPathHere.hpp 2018-06-18 16:48:29.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/dsig/DSIGXPathHere.hpp 2021-10-15 16:14:50.000000000 +0200 @@ -22,7 +22,7 @@ * * DSIGXPathHere := Implementation of the "here()" XPath function. * - * $Id: DSIGXPathHere.hpp 1807005 2017-09-01 20:42:20Z scantor $ + * $Id: DSIGXPathHere.hpp 1894293 2021-10-15 14:14:50Z scantor $ * */ @@ -54,6 +54,11 @@ # pragma warning(default: 4267) #endif +// If this isn't defined, we're on Xalan 1.12+ and require modern C++ +#ifndef XALAN_USING_XALAN +# define XALAN_USING_XALAN(NAME) using xalanc :: NAME; +#endif + // Namespace usage XALAN_USING_XALAN(Function); 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/xml-security-c-2.0.2/xsec/enc/OpenSSL/OpenSSLCryptoBase64.cpp new/xml-security-c-2.0.4/xsec/enc/OpenSSL/OpenSSLCryptoBase64.cpp --- old/xml-security-c-2.0.2/xsec/enc/OpenSSL/OpenSSLCryptoBase64.cpp 2018-06-18 16:48:29.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/enc/OpenSSL/OpenSSLCryptoBase64.cpp 2021-10-15 18:11:10.000000000 +0200 @@ -48,7 +48,7 @@ // Construction/Destruction // -------------------------------------------------------------------------------- -#if (OPENSSL_VERSION_NUMBER < 0x10100000L) +#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || defined(LIBRESSL_VERSION_NUMBER) OpenSSLCryptoBase64::OpenSSLCryptoBase64() : mp_ectx(&m_ectx_store), mp_dctx(&m_dctx_store) { } OpenSSLCryptoBase64::~OpenSSLCryptoBase64() { } #else 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/xml-security-c-2.0.2/xsec/enc/OpenSSL/OpenSSLCryptoBase64.hpp new/xml-security-c-2.0.4/xsec/enc/OpenSSL/OpenSSLCryptoBase64.hpp --- old/xml-security-c-2.0.2/xsec/enc/OpenSSL/OpenSSLCryptoBase64.hpp 2018-06-18 16:48:29.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/enc/OpenSSL/OpenSSLCryptoBase64.hpp 2021-10-15 18:12:37.000000000 +0200 @@ -24,7 +24,7 @@ * * Author(s): Berin Lautenbach * - * $Id: OpenSSLCryptoBase64.hpp 1808174 2017-09-12 21:50:30Z scantor $ + * $Id: OpenSSLCryptoBase64.hpp 1894296 2021-10-15 16:12:36Z scantor $ * */ @@ -205,7 +205,7 @@ EVP_ENCODE_CTX *mp_ectx; // Encode context EVP_ENCODE_CTX *mp_dctx; // Decode context -#if (OPENSSL_VERSION_NUMBER < 0x10100000L) +#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || defined(LIBRESSL_VERSION_NUMBER) EVP_ENCODE_CTX m_ectx_store; EVP_ENCODE_CTX m_dctx_store; #endif 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/xml-security-c-2.0.2/xsec/enc/OpenSSL/OpenSSLCryptoKeyDSA.cpp new/xml-security-c-2.0.4/xsec/enc/OpenSSL/OpenSSLCryptoKeyDSA.cpp --- old/xml-security-c-2.0.2/xsec/enc/OpenSSL/OpenSSLCryptoKeyDSA.cpp 2018-10-11 17:13:40.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/enc/OpenSSL/OpenSSLCryptoKeyDSA.cpp 2021-10-29 16:06:14.000000000 +0200 @@ -24,7 +24,7 @@ * * Author(s): Berin Lautenbach * - * $Id: OpenSSLCryptoKeyDSA.cpp 1843562 2018-10-11 15:13:40Z scantor $ + * $Id: OpenSSLCryptoKeyDSA.cpp 1894616 2021-10-29 14:06:14Z scantor $ * */ #include <xsec/framework/XSECDefs.hpp> @@ -43,6 +43,23 @@ #include <openssl/dsa.h> +// Inline for older OpenSSL versions. +#if (OPENSSL_VERSION_NUMBER < 0x10100000L) +static int BN_bn2binpad(const BIGNUM *a, unsigned char *to, int tolen) +{ + int bytes = BN_num_bytes(a); + + if (bytes > tolen) { + return -1; + } + while (bytes < tolen) { + *to++ = 0; + bytes++; + } + BN_bn2bin(a, to); + return tolen; +} +#endif OpenSSLCryptoKeyDSA::OpenSSLCryptoKeyDSA() : mp_dsaKey(NULL), mp_accumP(NULL), mp_accumQ(NULL), mp_accumG(NULL) { }; @@ -395,25 +412,19 @@ DSA_SIG_get0(dsa_sig, &dsaSigR, &dsaSigS); - unsigned char* rawSigBuf = new unsigned char[(BN_num_bits(dsaSigR) + BN_num_bits(dsaSigS) + 7) / 8]; - ArrayJanitor<unsigned char> j_sigbuf(rawSigBuf); + const int DSAsigCompLen = 20; // XMLDSIG spec 6.4.1 + unsigned char rawSigBuf[2*DSAsigCompLen]; - unsigned int rawLen = BN_bn2bin(dsaSigR, rawSigBuf); - - if (rawLen <= 0) { + if (BN_bn2binpad(dsaSigR, rawSigBuf, DSAsigCompLen) <= 0) { throw XSECCryptoException(XSECCryptoException::DSAError, "OpenSSL:DSA - Error converting signature to raw buffer"); } - unsigned int rawLenS = BN_bn2bin(dsaSigS, (unsigned char *) &rawSigBuf[rawLen]); - - if (rawLenS <= 0) { + if (BN_bn2binpad(dsaSigS, rawSigBuf+DSAsigCompLen, DSAsigCompLen) <= 0) { throw XSECCryptoException(XSECCryptoException::DSAError, "OpenSSL:DSA - Error converting signature to raw buffer"); } - rawLen += rawLenS; - // Now convert to Base 64 BIO * b64 = BIO_new(BIO_f_base64()); @@ -424,7 +435,7 @@ // Translate signature from Base64 - BIO_write(b64, rawSigBuf, rawLen); + BIO_write(b64, rawSigBuf, 2*DSAsigCompLen); BIO_flush(b64); unsigned int sigValLen = BIO_read(bmem, base64SignatureBuf, base64SignatureBufLen); @@ -437,11 +448,9 @@ } return sigValLen; - } - XSECCryptoKey * OpenSSLCryptoKeyDSA::clone() const { OpenSSLCryptoKeyDSA * ret; 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/xml-security-c-2.0.2/xsec/enc/OpenSSL/OpenSSLCryptoKeyRSA.cpp new/xml-security-c-2.0.4/xsec/enc/OpenSSL/OpenSSLCryptoKeyRSA.cpp --- old/xml-security-c-2.0.2/xsec/enc/OpenSSL/OpenSSLCryptoKeyRSA.cpp 2018-10-11 17:13:40.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/enc/OpenSSL/OpenSSLCryptoKeyRSA.cpp 2021-10-14 22:02:15.000000000 +0200 @@ -24,7 +24,7 @@ * * Author(s): Berin Lautenbach * - * $Id: OpenSSLCryptoKeyRSA.cpp 1843562 2018-10-11 15:13:40Z scantor $ + * $Id: OpenSSLCryptoKeyRSA.cpp 1894259 2021-10-14 18:22:11Z scantor $ * */ @@ -413,7 +413,7 @@ if (k == NULL || EVP_PKEY_id(k) != EVP_PKEY_RSA) return; // Nothing to do with us - RSA *rsa = EVP_PKEY_get0_RSA(k); + const RSA *rsa = EVP_PKEY_get0_RSA(k); const BIGNUM *n=NULL, *e=NULL, *d=NULL; RSA_get0_key(rsa, &n, &e, &d); 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/xml-security-c-2.0.2/xsec/enc/OpenSSL/OpenSSLSupport.cpp new/xml-security-c-2.0.4/xsec/enc/OpenSSL/OpenSSLSupport.cpp --- old/xml-security-c-2.0.2/xsec/enc/OpenSSL/OpenSSLSupport.cpp 2018-06-18 16:48:29.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/enc/OpenSSL/OpenSSLSupport.cpp 2021-10-15 18:11:10.000000000 +0200 @@ -273,7 +273,7 @@ #endif -#if (OPENSSL_VERSION_NUMBER < 0x10100000L) +#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || defined(LIBRESSL_VERSION_NUMBER) EvpEncodeCtxRAII::EvpEncodeCtxRAII() : mp_ctx(&mp_ctx_store) { }; EvpEncodeCtxRAII::~EvpEncodeCtxRAII() { } #else 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/xml-security-c-2.0.2/xsec/enc/OpenSSL/OpenSSLSupport.hpp new/xml-security-c-2.0.4/xsec/enc/OpenSSL/OpenSSLSupport.hpp --- old/xml-security-c-2.0.2/xsec/enc/OpenSSL/OpenSSLSupport.hpp 2018-06-18 16:48:29.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/enc/OpenSSL/OpenSSLSupport.hpp 2021-10-15 18:11:10.000000000 +0200 @@ -88,7 +88,7 @@ private: EVP_ENCODE_CTX *mp_ctx; -#if (OPENSSL_VERSION_NUMBER < 0x10100000L) +#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || defined(LIBRESSL_VERSION_NUMBER) EVP_ENCODE_CTX mp_ctx_store; #endif }; 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/xml-security-c-2.0.2/xsec/framework/XSECVersion.hpp new/xml-security-c-2.0.4/xsec/framework/XSECVersion.hpp --- old/xml-security-c-2.0.2/xsec/framework/XSECVersion.hpp 2018-10-11 15:23:45.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/framework/XSECVersion.hpp 2021-10-28 20:11:44.000000000 +0200 @@ -30,7 +30,7 @@ #define XSEC_VERSION_MAJOR 2 #define XSEC_VERSION_MEDIUM 0 -#define XSEC_VERSION_MINOR 2 +#define XSEC_VERSION_MINOR 4 // -------------------------------------------------------------------------------- // Version Handling 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/xml-security-c-2.0.2/xsec/framework/version.rc new/xml-security-c-2.0.4/xsec/framework/version.rc --- old/xml-security-c-2.0.2/xsec/framework/version.rc 2018-10-11 15:24:07.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/framework/version.rc 2021-10-28 20:11:29.000000000 +0200 @@ -54,8 +54,8 @@ // VS_VERSION_INFO VERSIONINFO - FILEVERSION 2,0,2,0 - PRODUCTVERSION 2,0,2,0 + FILEVERSION 2,0,4,0 + PRODUCTVERSION 2,0,4,0 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -73,13 +73,13 @@ VALUE "Comments", "\0" VALUE "CompanyName", "The Apache Software Foundation\0" VALUE "FileDescription", "Santuario C++ XML Security Library\0" - VALUE "FileVersion", "2, 0, 2, 0\0" + VALUE "FileVersion", "2, 0, 4, 0\0" #ifdef _DEBUG VALUE "InternalName", "xsec_2_0D\0" #else VALUE "InternalName", "xsec_2_0\0" #endif - VALUE "LegalCopyright", "Copyright ??? 2002-2018 The Apache Software Foundation\0" + VALUE "LegalCopyright", "Copyright ??? 2002-2021 The Apache Software Foundation\0" VALUE "LegalTrademarks", "\0" #ifdef _DEBUG VALUE "OriginalFilename", "xsec_2_0D.dll\0" @@ -88,7 +88,7 @@ #endif VALUE "PrivateBuild", "\0" VALUE "ProductName", "Santuario C++ XML Security Library\0" - VALUE "ProductVersion", "2, 0, 2, 0\0" + VALUE "ProductVersion", "2, 0, 4, 0\0" VALUE "SpecialBuild", "\0" END END 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/xml-security-c-2.0.2/xsec/samples/simpleDecrypt.cpp new/xml-security-c-2.0.4/xsec/samples/simpleDecrypt.cpp --- old/xml-security-c-2.0.2/xsec/samples/simpleDecrypt.cpp 2018-06-22 21:22:03.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/samples/simpleDecrypt.cpp 2021-10-15 16:14:50.000000000 +0200 @@ -23,7 +23,7 @@ * SimpleEncrypt := An application to generate an XML document (via Xerces) and encrypt * a portion of it * - * $Id: simpleDecrypt.cpp 1834154 2018-06-22 19:22:03Z scantor $ + * $Id: simpleDecrypt.cpp 1894293 2021-10-15 14:14:50Z scantor $ * */ @@ -54,6 +54,12 @@ #ifdef XSEC_HAVE_XALAN #include <xalanc/XalanTransformer/XalanTransformer.hpp> + +// If this isn't defined, we're on Xalan 1.12+ and require modern C++ +#ifndef XALAN_USING_XALAN +# define XALAN_USING_XALAN(NAME) using xalanc :: NAME; +#endif + XALAN_USING_XALAN(XalanTransformer) #endif 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/xml-security-c-2.0.2/xsec/samples/simpleEncrypt.cpp new/xml-security-c-2.0.4/xsec/samples/simpleEncrypt.cpp --- old/xml-security-c-2.0.2/xsec/samples/simpleEncrypt.cpp 2018-06-22 21:22:03.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/samples/simpleEncrypt.cpp 2021-10-15 16:14:50.000000000 +0200 @@ -23,7 +23,7 @@ * SimpleEncrypt := An application to generate an XML document (via Xerces) and encrypt * a portion of it * - * $Id: simpleEncrypt.cpp 1834154 2018-06-22 19:22:03Z scantor $ + * $Id: simpleEncrypt.cpp 1894293 2021-10-15 14:14:50Z scantor $ * */ @@ -48,6 +48,10 @@ #ifdef XSEC_HAVE_XALAN #include <xalanc/XalanTransformer/XalanTransformer.hpp> +// If this isn't defined, we're on Xalan 1.12+ and require modern C++ +#ifndef XALAN_USING_XALAN +# define XALAN_USING_XALAN(NAME) using xalanc :: NAME; +#endif XALAN_USING_XALAN(XalanTransformer) #endif 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/xml-security-c-2.0.2/xsec/samples/simpleHMAC.cpp new/xml-security-c-2.0.4/xsec/samples/simpleHMAC.cpp --- old/xml-security-c-2.0.2/xsec/samples/simpleHMAC.cpp 2018-06-22 20:47:16.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/samples/simpleHMAC.cpp 2021-10-15 15:48:12.000000000 +0200 @@ -49,6 +49,10 @@ #ifdef XSEC_HAVE_XALAN #include <xalanc/XalanTransformer/XalanTransformer.hpp> +// If this isn't defined, we're on Xalan 1.12+ and require modern C++ +#ifndef XALAN_USING_XALAN +# define XALAN_USING_XALAN(NAME) using xalanc :: NAME; +#endif XALAN_USING_XALAN(XalanTransformer) #endif 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/xml-security-c-2.0.2/xsec/samples/simpleValidate.cpp new/xml-security-c-2.0.4/xsec/samples/simpleValidate.cpp --- old/xml-security-c-2.0.2/xsec/samples/simpleValidate.cpp 2018-06-22 20:57:51.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/samples/simpleValidate.cpp 2021-10-15 15:48:42.000000000 +0200 @@ -52,6 +52,10 @@ #ifdef XSEC_HAVE_XALAN #include <xalanc/XalanTransformer/XalanTransformer.hpp> +// If this isn't defined, we're on Xalan 1.12+ and require modern C++ +#ifndef XALAN_USING_XALAN +# define XALAN_USING_XALAN(NAME) using xalanc :: NAME; +#endif XALAN_USING_XALAN(XalanTransformer) #endif 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/xml-security-c-2.0.2/xsec/tools/checksig/checksig.cpp new/xml-security-c-2.0.4/xsec/tools/checksig/checksig.cpp --- old/xml-security-c-2.0.2/xsec/tools/checksig/checksig.cpp 2018-06-18 16:48:28.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/tools/checksig/checksig.cpp 2021-10-15 16:14:50.000000000 +0200 @@ -22,7 +22,7 @@ * * checkSig := (Very ugly) tool to check a signature embedded in an XML file * - * $Id: checksig.cpp 1832576 2018-05-30 23:45:26Z scantor $ + * $Id: checksig.cpp 1894293 2021-10-15 14:14:50Z scantor $ * */ @@ -83,6 +83,11 @@ #include <xalanc/XPath/XPathEvaluator.hpp> #include <xalanc/XalanTransformer/XalanTransformer.hpp> +// If this isn't defined, we're on Xalan 1.12+ and require modern C++ +#ifndef XALAN_USING_XALAN +# define XALAN_USING_XALAN(NAME) using xalanc :: NAME; +#endif + XALAN_USING_XALAN(XPathEvaluator) XALAN_USING_XALAN(XalanTransformer) 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/xml-security-c-2.0.2/xsec/tools/cipher/cipher.cpp new/xml-security-c-2.0.4/xsec/tools/cipher/cipher.cpp --- old/xml-security-c-2.0.2/xsec/tools/cipher/cipher.cpp 2018-06-22 21:22:03.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/tools/cipher/cipher.cpp 2021-10-15 16:14:50.000000000 +0200 @@ -24,7 +24,7 @@ * * Author(s): Berin Lautenbach * - * $Id: cipher.cpp 1834154 2018-06-22 19:22:03Z scantor $ + * $Id: cipher.cpp 1894293 2021-10-15 14:14:50Z scantor $ * */ @@ -93,6 +93,11 @@ #include <xalanc/XPath/XPathEvaluator.hpp> #include <xalanc/XalanTransformer/XalanTransformer.hpp> +// If this isn't defined, we're on Xalan 1.12+ and require modern C++ +#ifndef XALAN_USING_XALAN +# define XALAN_USING_XALAN(NAME) using xalanc :: NAME; +#endif + XALAN_USING_XALAN(XPathEvaluator) XALAN_USING_XALAN(XalanTransformer) 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/xml-security-c-2.0.2/xsec/tools/siginf/siginf.cpp new/xml-security-c-2.0.4/xsec/tools/siginf/siginf.cpp --- old/xml-security-c-2.0.2/xsec/tools/siginf/siginf.cpp 2018-06-18 16:48:28.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/tools/siginf/siginf.cpp 2021-10-15 16:14:50.000000000 +0200 @@ -24,7 +24,7 @@ * * Author(s): Berin Lautenbach * - * $Id: siginf.cpp 1832576 2018-05-30 23:45:26Z scantor $ + * $Id: siginf.cpp 1894293 2021-10-15 14:14:50Z scantor $ * */ @@ -86,6 +86,11 @@ #include <xalanc/XPath/XPathEvaluator.hpp> #include <xalanc/XalanTransformer/XalanTransformer.hpp> +// If this isn't defined, we're on Xalan 1.12+ and require modern C++ +#ifndef XALAN_USING_XALAN +# define XALAN_USING_XALAN(NAME) using xalanc :: NAME; +#endif + XALAN_USING_XALAN(XPathEvaluator) XALAN_USING_XALAN(XalanTransformer) 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/xml-security-c-2.0.2/xsec/tools/templatesign/templatesign.cpp new/xml-security-c-2.0.4/xsec/tools/templatesign/templatesign.cpp --- old/xml-security-c-2.0.2/xsec/tools/templatesign/templatesign.cpp 2018-06-22 21:22:03.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/tools/templatesign/templatesign.cpp 2021-10-15 16:14:50.000000000 +0200 @@ -24,7 +24,7 @@ * * Author(s): Berin Lautenbach * - * $Id: templatesign.cpp 1834154 2018-06-22 19:22:03Z scantor $ + * $Id: templatesign.cpp 1894293 2021-10-15 14:14:50Z scantor $ * */ @@ -95,6 +95,11 @@ #include <xalanc/XPath/XPathEvaluator.hpp> #include <xalanc/XalanTransformer/XalanTransformer.hpp> +// If this isn't defined, we're on Xalan 1.12+ and require modern C++ +#ifndef XALAN_USING_XALAN +# define XALAN_USING_XALAN(NAME) using xalanc :: NAME; +#endif + XALAN_USING_XALAN(XPathEvaluator) XALAN_USING_XALAN(XalanTransformer) 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/xml-security-c-2.0.2/xsec/tools/txfmout/txfmout.cpp new/xml-security-c-2.0.4/xsec/tools/txfmout/txfmout.cpp --- old/xml-security-c-2.0.2/xsec/tools/txfmout/txfmout.cpp 2018-06-18 16:48:28.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/tools/txfmout/txfmout.cpp 2021-10-15 16:14:50.000000000 +0200 @@ -25,7 +25,7 @@ * * Author(s): Berin Lautenbach * - * $Id: txfmout.cpp 1832576 2018-05-30 23:45:26Z scantor $ + * $Id: txfmout.cpp 1894293 2021-10-15 14:14:50Z scantor $ * */ @@ -84,6 +84,11 @@ #include <xalanc/XPath/XPathEvaluator.hpp> #include <xalanc/XalanTransformer/XalanTransformer.hpp> +// If this isn't defined, we're on Xalan 1.12+ and require modern C++ +#ifndef XALAN_USING_XALAN +# define XALAN_USING_XALAN(NAME) using xalanc :: NAME; +#endif + XALAN_USING_XALAN(XPathEvaluator) XALAN_USING_XALAN(XalanTransformer) 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/xml-security-c-2.0.2/xsec/tools/xklient/xklient.cpp new/xml-security-c-2.0.4/xsec/tools/xklient/xklient.cpp --- old/xml-security-c-2.0.2/xsec/tools/xklient/xklient.cpp 2018-06-18 16:48:28.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/tools/xklient/xklient.cpp 2021-10-15 16:14:50.000000000 +0200 @@ -22,7 +22,7 @@ * * xklient := Act as a client for an XKMS service * - * $Id: xklient.cpp 1832576 2018-05-30 23:45:26Z scantor $ + * $Id: xklient.cpp 1894293 2021-10-15 14:14:50Z scantor $ * */ @@ -122,6 +122,11 @@ #include <xalanc/XPath/XPathEvaluator.hpp> #include <xalanc/XalanTransformer/XalanTransformer.hpp> +// If this isn't defined, we're on Xalan 1.12+ and require modern C++ +#ifndef XALAN_USING_XALAN +# define XALAN_USING_XALAN(NAME) using xalanc :: NAME; +#endif + XALAN_USING_XALAN(XPathEvaluator) XALAN_USING_XALAN(XalanTransformer) 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/xml-security-c-2.0.2/xsec/tools/xtest/xtest.cpp new/xml-security-c-2.0.4/xsec/tools/xtest/xtest.cpp --- old/xml-security-c-2.0.2/xsec/tools/xtest/xtest.cpp 2018-06-18 16:48:28.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/tools/xtest/xtest.cpp 2021-10-15 16:14:50.000000000 +0200 @@ -25,7 +25,7 @@ * * Author(s): Berin Lautenbach * - * $Id: xtest.cpp 1833341 2018-06-11 16:25:41Z scantor $ + * $Id: xtest.cpp 1894293 2021-10-15 14:14:50Z scantor $ * */ @@ -63,6 +63,11 @@ #include <xalanc/XPath/XPathEvaluator.hpp> #include <xalanc/XalanTransformer/XalanTransformer.hpp> +// If this isn't defined, we're on Xalan 1.12+ and require modern C++ +#ifndef XALAN_USING_XALAN +# define XALAN_USING_XALAN(NAME) using xalanc :: NAME; +#endif + XALAN_USING_XALAN(XPathEvaluator) XALAN_USING_XALAN(XalanTransformer) 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/xml-security-c-2.0.2/xsec/transformers/TXFMXPath.cpp new/xml-security-c-2.0.4/xsec/transformers/TXFMXPath.cpp --- old/xml-security-c-2.0.2/xsec/transformers/TXFMXPath.cpp 2018-06-18 16:48:29.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/transformers/TXFMXPath.cpp 2021-10-15 16:14:50.000000000 +0200 @@ -22,7 +22,7 @@ * * TXFMXPath := Class that performs XPath transforms * - * $Id: TXFMXPath.cpp 1833341 2018-06-11 16:25:41Z scantor $ + * $Id: TXFMXPath.cpp 1894293 2021-10-15 14:14:50Z scantor $ * */ @@ -47,6 +47,11 @@ # pragma warning(default: 4267) #endif +// If this isn't defined, we're on Xalan 1.12+ and require modern C++ +#ifndef XALAN_USING_XALAN +# define XALAN_USING_XALAN(NAME) using xalanc :: NAME; +#endif + // Xalan namespace usage XALAN_USING_XALAN(XPathProcessorImpl) XALAN_USING_XALAN(XercesDOMSupport) 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/xml-security-c-2.0.2/xsec/transformers/TXFMXPathFilter.cpp new/xml-security-c-2.0.4/xsec/transformers/TXFMXPathFilter.cpp --- old/xml-security-c-2.0.2/xsec/transformers/TXFMXPathFilter.cpp 2018-06-18 16:48:29.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/transformers/TXFMXPathFilter.cpp 2021-10-15 16:14:50.000000000 +0200 @@ -22,7 +22,7 @@ * * TXFMXPathFilter := Class that performs XPath transforms * - * $Id: TXFMXPathFilter.cpp 1833341 2018-06-11 16:25:41Z scantor $ + * $Id: TXFMXPathFilter.cpp 1894293 2021-10-15 14:14:50Z scantor $ * */ @@ -66,6 +66,11 @@ # pragma warning(default: 4267) #endif +// If this isn't defined, we're on Xalan 1.12+ and require modern C++ +#ifndef XALAN_USING_XALAN +# define XALAN_USING_XALAN(NAME) using xalanc :: NAME; +#endif + // Xalan namespace usage XALAN_USING_XALAN(XPathProcessorImpl) XALAN_USING_XALAN(XalanDOMString) 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/xml-security-c-2.0.2/xsec/transformers/TXFMXSL.hpp new/xml-security-c-2.0.4/xsec/transformers/TXFMXSL.hpp --- old/xml-security-c-2.0.2/xsec/transformers/TXFMXSL.hpp 2018-06-18 16:48:29.000000000 +0200 +++ new/xml-security-c-2.0.4/xsec/transformers/TXFMXSL.hpp 2021-10-15 16:14:50.000000000 +0200 @@ -22,7 +22,7 @@ * * TXFMXSL := Class that performs XML Stylesheet Language transforms * - * $Id: TXFMXSL.hpp 1818065 2017-12-13 20:55:19Z scantor $ + * $Id: TXFMXSL.hpp 1894293 2021-10-15 14:14:50Z scantor $ * */ @@ -43,6 +43,11 @@ #include <xalanc/XPath/ElementPrefixResolverProxy.hpp> #include <xalanc/XalanTransformer/XalanTransformer.hpp> +// If this isn't defined, we're on Xalan 1.12+ and require modern C++ +#ifndef XALAN_USING_XALAN +# define XALAN_USING_XALAN(NAME) using xalanc :: NAME; +#endif + // Xalan Namespace usage XALAN_USING_XALAN(XercesDOMSupport) XALAN_USING_XALAN(XercesParserLiaison)