Control: tags -1 + patch pending Dear maintainer,
I've prepared an NMU for lasso (versioned as 2.3.6-2.2) and uploaded it to DELAYED/2. Please feel free to tell me if I should delay it longer. (Sorry for the config.{sub,guess} noise. The clean target updates these two files.) Regards -- Sebastian Ramacher
diff -u lasso-2.3.6/config.guess lasso-2.3.6/config.guess --- lasso-2.3.6/config.guess +++ lasso-2.3.6/config.guess @@ -1,14 +1,12 @@ #! /bin/sh # Attempt to guess a canonical system name. -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, -# 2011, 2012 Free Software Foundation, Inc. +# Copyright 1992-2013 Free Software Foundation, Inc. -timestamp='2012-02-10' +timestamp='2013-05-16' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or +# the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but @@ -22,19 +20,17 @@ # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - - -# Originally written by Per Bothner. Please send patches (context -# diff format) to <config-patc...@gnu.org> and include a ChangeLog -# entry. +# the same distribution terms that you use for the rest of that +# program. This Exception is an additional permission under section 7 +# of the GNU General Public License, version 3 ("GPLv3"). # -# This script attempts to guess a canonical system name similar to -# config.sub. If it succeeds, it prints the system name on stdout, and -# exits with 0. Otherwise, it exits with 1. +# Originally written by Per Bothner. # # You can get the latest version of this script from: # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD +# +# Please send patches with a ChangeLog entry to config-patc...@gnu.org. + me=`echo "$0" | sed -e 's,.*/,,'` @@ -54,9 +50,7 @@ GNU config.guess ($timestamp) Originally written by Per Bothner. -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, -2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 -Free Software Foundation, Inc. +Copyright 1992-2013 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -138,6 +132,27 @@ UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown +case "${UNAME_SYSTEM}" in +Linux|GNU|GNU/*) + # If the system lacks a compiler, then just pick glibc. + # We could probably try harder. + LIBC=gnu + + eval $set_cc_for_build + cat <<-EOF > $dummy.c + #include <features.h> + #if defined(__UCLIBC__) + LIBC=uclibc + #elif defined(__dietlibc__) + LIBC=dietlibc + #else + LIBC=gnu + #endif + EOF + eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` + ;; +esac + # Note: order is significant - the case branches are not exclusive. case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in @@ -200,6 +215,10 @@ # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. echo "${machine}-${os}${release}" exit ;; + *:Bitrig:*:*) + UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` + echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE} + exit ;; *:OpenBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} @@ -302,7 +321,7 @@ arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) echo arm-acorn-riscix${UNAME_RELEASE} exit ;; - arm:riscos:*:*|arm:RISCOS:*:*) + arm*:riscos:*:*|arm*:RISCOS:*:*) echo arm-unknown-riscos exit ;; SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) @@ -801,6 +820,9 @@ i*:CYGWIN*:*) echo ${UNAME_MACHINE}-pc-cygwin exit ;; + *:MINGW64*:*) + echo ${UNAME_MACHINE}-pc-mingw64 + exit ;; *:MINGW*:*) echo ${UNAME_MACHINE}-pc-mingw32 exit ;; @@ -852,21 +874,21 @@ exit ;; *:GNU:*:*) # the GNU system - echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` + echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` exit ;; *:GNU/*:*:*) # other systems with GNU libc and userland - echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu + echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC} exit ;; i*86:Minix:*:*) echo ${UNAME_MACHINE}-pc-minix exit ;; aarch64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; aarch64_be:Linux:*:*) UNAME_MACHINE=aarch64_be - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; alpha:Linux:*:*) case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in @@ -879,59 +901,54 @@ EV68*) UNAME_MACHINE=alphaev68 ;; esac objdump --private-headers /bin/sh | grep -q ld.so.1 - if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi - echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} + if test "$?" = 0 ; then LIBC="gnulibc1" ; fi + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + arc:Linux:*:* | arceb:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; arm*:Linux:*:*) eval $set_cc_for_build if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_EABI__ then - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} else if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_PCS_VFP then - echo ${UNAME_MACHINE}-unknown-linux-gnueabi + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi else - echo ${UNAME_MACHINE}-unknown-linux-gnueabihf + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf fi fi exit ;; avr32*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; cris:Linux:*:*) - echo ${UNAME_MACHINE}-axis-linux-gnu + echo ${UNAME_MACHINE}-axis-linux-${LIBC} exit ;; crisv32:Linux:*:*) - echo ${UNAME_MACHINE}-axis-linux-gnu + echo ${UNAME_MACHINE}-axis-linux-${LIBC} exit ;; frv:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; hexagon:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; i*86:Linux:*:*) - LIBC=gnu - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #ifdef __dietlibc__ - LIBC=dietlibc - #endif -EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` - echo "${UNAME_MACHINE}-pc-linux-${LIBC}" + echo ${UNAME_MACHINE}-pc-linux-${LIBC} exit ;; ia64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; m32r*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; m68*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; mips:Linux:*:* | mips64:Linux:*:*) eval $set_cc_for_build @@ -950,54 +967,57 @@ #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` - test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } + test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } ;; + or1k:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; or32:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; padre:Linux:*:*) - echo sparc-unknown-linux-gnu + echo sparc-unknown-linux-${LIBC} exit ;; parisc64:Linux:*:* | hppa64:Linux:*:*) - echo hppa64-unknown-linux-gnu + echo hppa64-unknown-linux-${LIBC} exit ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in - PA7*) echo hppa1.1-unknown-linux-gnu ;; - PA8*) echo hppa2.0-unknown-linux-gnu ;; - *) echo hppa-unknown-linux-gnu ;; + PA7*) echo hppa1.1-unknown-linux-${LIBC} ;; + PA8*) echo hppa2.0-unknown-linux-${LIBC} ;; + *) echo hppa-unknown-linux-${LIBC} ;; esac exit ;; ppc64:Linux:*:*) - echo powerpc64-unknown-linux-gnu + echo powerpc64-unknown-linux-${LIBC} exit ;; ppc:Linux:*:*) - echo powerpc-unknown-linux-gnu + echo powerpc-unknown-linux-${LIBC} exit ;; s390:Linux:*:* | s390x:Linux:*:*) - echo ${UNAME_MACHINE}-ibm-linux + echo ${UNAME_MACHINE}-ibm-linux-${LIBC} exit ;; sh64*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; sh*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; sparc:Linux:*:* | sparc64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; tile*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; vax:Linux:*:*) - echo ${UNAME_MACHINE}-dec-linux-gnu + echo ${UNAME_MACHINE}-dec-linux-${LIBC} exit ;; x86_64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; xtensa*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; i*86:DYNIX/ptx:4*:*) # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. @@ -1201,6 +1221,9 @@ BePC:Haiku:*:*) # Haiku running on Intel PC compatible. echo i586-pc-haiku exit ;; + x86_64:Haiku:*:*) + echo x86_64-unknown-haiku + exit ;; SX-4:SUPER-UX:*:*) echo sx4-nec-superux${UNAME_RELEASE} exit ;; @@ -1227,19 +1250,21 @@ exit ;; *:Darwin:*:*) UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown - case $UNAME_PROCESSOR in - i386) - eval $set_cc_for_build - if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then - if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ - (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ - grep IS_64BIT_ARCH >/dev/null - then - UNAME_PROCESSOR="x86_64" - fi - fi ;; - unknown) UNAME_PROCESSOR=powerpc ;; - esac + eval $set_cc_for_build + if test "$UNAME_PROCESSOR" = unknown ; then + UNAME_PROCESSOR=powerpc + fi + if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then + if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ + (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_64BIT_ARCH >/dev/null + then + case $UNAME_PROCESSOR in + i386) UNAME_PROCESSOR=x86_64 ;; + powerpc) UNAME_PROCESSOR=powerpc64 ;; + esac + fi + fi echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} exit ;; *:procnto*:*:* | *:QNX:[0123456789]*:*) @@ -1256,7 +1281,7 @@ NEO-?:NONSTOP_KERNEL:*:*) echo neo-tandem-nsk${UNAME_RELEASE} exit ;; - NSE-?:NONSTOP_KERNEL:*:*) + NSE-*:NONSTOP_KERNEL:*:*) echo nse-tandem-nsk${UNAME_RELEASE} exit ;; NSR-?:NONSTOP_KERNEL:*:*) @@ -1330,9 +1355,6 @@ exit ;; esac -#echo '(No uname command or uname output not recognized.)' 1>&2 -#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 - eval $set_cc_for_build cat >$dummy.c <<EOF #ifdef _SEQUENT_ diff -u lasso-2.3.6/config.sub lasso-2.3.6/config.sub --- lasso-2.3.6/config.sub +++ lasso-2.3.6/config.sub @@ -1,24 +1,18 @@ #! /bin/sh # Configuration validation subroutine script. -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, -# 2011, 2012 Free Software Foundation, Inc. +# Copyright 1992-2013 Free Software Foundation, Inc. -timestamp='2012-04-18' +timestamp='2013-04-24' -# This file is (in principle) common to ALL GNU software. -# The presence of a machine in this file suggests that SOME GNU software -# can handle that machine. It does not imply ALL GNU software can. -# -# This file is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or +# This file is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, see <http://www.gnu.org/licenses/>. @@ -26,11 +20,12 @@ # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. +# the same distribution terms that you use for the rest of that +# program. This Exception is an additional permission under section 7 +# of the GNU General Public License, version 3 ("GPLv3"). -# Please send patches to <config-patc...@gnu.org>. Submit a context -# diff and a properly formatted GNU ChangeLog entry. +# Please send patches with a ChangeLog entry to config-patc...@gnu.org. # # Configuration subroutine to validate and canonicalize a configuration type. # Supply the specified configuration type as an argument. @@ -73,9 +68,7 @@ version="\ GNU config.sub ($timestamp) -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, -2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 -Free Software Foundation, Inc. +Copyright 1992-2013 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -123,7 +116,7 @@ maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ - linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ + linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ knetbsd*-gnu* | netbsd*-gnu* | \ kopensolaris*-gnu* | \ storm-chaos* | os2-emx* | rtmk-nova*) @@ -156,7 +149,7 @@ -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ - -apple | -axis | -knuth | -cray | -microblaze) + -apple | -axis | -knuth | -cray | -microblaze*) os= basic_machine=$1 ;; @@ -259,8 +252,10 @@ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | am33_2.0 \ - | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ - | be32 | be64 \ + | arc | arceb \ + | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ + | avr | avr32 \ + | be32 | be64 \ | bfin \ | c4x | clipper \ | d10v | d30v | dlx | dsp16xx \ @@ -273,7 +268,7 @@ | le32 | le64 \ | lm32 \ | m32c | m32r | m32rle | m68000 | m68k | m88k \ - | maxq | mb | microblaze | mcore | mep | metag \ + | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ | mips64 | mips64el \ @@ -291,16 +286,17 @@ | mipsisa64r2 | mipsisa64r2el \ | mipsisa64sb1 | mipsisa64sb1el \ | mipsisa64sr71k | mipsisa64sr71kel \ + | mipsr5900 | mipsr5900el \ | mipstx39 | mipstx39el \ | mn10200 | mn10300 \ | moxie \ | mt \ | msp430 \ | nds32 | nds32le | nds32be \ - | nios | nios2 \ + | nios | nios2 | nios2eb | nios2el \ | ns16k | ns32k \ | open8 \ - | or32 \ + | or1k | or32 \ | pdp10 | pdp11 | pj | pjl \ | powerpc | powerpc64 | powerpc64le | powerpcle \ | pyramid \ @@ -370,7 +366,7 @@ | aarch64-* | aarch64_be-* \ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ - | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ + | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | avr-* | avr32-* \ | be32-* | be64-* \ @@ -389,7 +385,8 @@ | lm32-* \ | m32c-* | m32r-* | m32rle-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ + | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ + | microblaze-* | microblazeel-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ | mips64-* | mips64el-* \ @@ -407,12 +404,13 @@ | mipsisa64r2-* | mipsisa64r2el-* \ | mipsisa64sb1-* | mipsisa64sb1el-* \ | mipsisa64sr71k-* | mipsisa64sr71kel-* \ + | mipsr5900-* | mipsr5900el-* \ | mipstx39-* | mipstx39el-* \ | mmix-* \ | mt-* \ | msp430-* \ | nds32-* | nds32le-* | nds32be-* \ - | nios-* | nios2-* \ + | nios-* | nios2-* | nios2eb-* | nios2el-* \ | none-* | np1-* | ns16k-* | ns32k-* \ | open8-* \ | orion-* \ @@ -788,9 +786,13 @@ basic_machine=ns32k-utek os=-sysv ;; - microblaze) + microblaze*) basic_machine=microblaze-xilinx ;; + mingw64) + basic_machine=x86_64-pc + os=-mingw64 + ;; mingw32) basic_machine=i386-pc os=-mingw32 @@ -1019,7 +1021,11 @@ basic_machine=i586-unknown os=-pw32 ;; - rdos) + rdos | rdos64) + basic_machine=x86_64-pc + os=-rdos + ;; + rdos32) basic_machine=i386-pc os=-rdos ;; @@ -1346,21 +1352,21 @@ -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ - | -sym* | -kopensolaris* \ + | -sym* | -kopensolaris* | -plan9* \ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ | -aos* | -aros* \ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ - | -openbsd* | -solidbsd* \ + | -bitrig* | -openbsd* | -solidbsd* \ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -chorusos* | -chorusrdb* | -cegcc* \ | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ - | -mingw32* | -linux-gnu* | -linux-android* \ - | -linux-newlib* | -linux-uclibc* \ + | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ + | -linux-newlib* | -linux-musl* | -linux-uclibc* \ | -uxpv* | -beos* | -mpeix* | -udk* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ @@ -1492,9 +1498,6 @@ -aros*) os=-aros ;; - -kaos*) - os=-kaos - ;; -zvmoe) os=-zvmoe ;; @@ -1586,6 +1589,9 @@ mips*-*) os=-elf ;; + or1k-*) + os=-elf + ;; or32-*) os=-coff ;; diff -u lasso-2.3.6/debian/changelog lasso-2.3.6/debian/changelog --- lasso-2.3.6/debian/changelog +++ lasso-2.3.6/debian/changelog @@ -1,3 +1,12 @@ +lasso (2.3.6-2.2) unstable; urgency=low + + * Non-maintainer upload. + * Apply commit a5674b48 from upstream to port to the libxml buffer API. + Also adopt changes for the Perl binding. libxml stopped to expose the + internals of xmlOutputBuffer in 2.9. (Closes: #713668) + + -- Sebastian Ramacher <sramac...@debian.org> Tue, 30 Jul 2013 14:19:34 +0200 + lasso (2.3.6-2.1) unstable; urgency=low * Non-maintainer upload. only in patch2: unchanged: --- lasso-2.3.6.orig/bindings/perl/glist_handling.c +++ lasso-2.3.6/bindings/perl/glist_handling.c @@ -29,6 +29,24 @@ #include <lasso/utils.h> #include "../utils.c" +static xmlBuffer* +xmlnode_to_xmlbuffer(xmlNode *node) +{ + xmlOutputBufferPtr output_buffer; + xmlBuffer *buffer; + + if (! node) + return NULL; + + buffer = xmlBufferCreate(); + output_buffer = xmlOutputBufferCreateBuffer(buffer, NULL); + xmlNodeDumpOutput(output_buffer, NULL, node, 0, 0, NULL); + xmlOutputBufferClose(output_buffer); + xmlBufferAdd(buffer, BAD_CAST "", 1); + + return buffer; +} + /** * xmlnode_to_pv: * @node: an xmlNode* object @@ -39,25 +57,19 @@ static SV* xmlnode_to_pv(xmlNode *node, gboolean do_free) { - xmlOutputBufferPtr buf; + xmlBuffer* buf; SV *pestring = NULL; if (node == NULL) { return &PL_sv_undef; } - buf = xmlAllocOutputBuffer(NULL); + buf = xmlnode_to_xmlbuffer(node); if (buf == NULL) { pestring = &PL_sv_undef; } else { - xmlNodeDumpOutput(buf, NULL, node, 0, 1, NULL); - xmlOutputBufferFlush(buf); - if (buf->conv == NULL) { - pestring = newSVpv((char*)buf->buffer->content, 0); - } else { - pestring = newSVpv((char*)buf->conv->content, 0); - } - xmlOutputBufferClose(buf); + pestring = newSVpv((char*)xmlBufferContent(buf), 0); + xmlBufferFree(buf); } if (do_free) { lasso_release_xml_node(node); only in patch2: unchanged: --- lasso-2.3.6.orig/bindings/php5/wrapper_source_top.c +++ lasso-2.3.6/bindings/php5/wrapper_source_top.c @@ -119,31 +119,41 @@ } /* Conversion functions */ +static xmlBuffer* +xmlnode_to_xmlbuffer(xmlNode *node) +{ + xmlOutputBufferPtr output_buffer; + xmlBuffer *buffer; + + if (! node) + return NULL; + + buffer = xmlBufferCreate(); + output_buffer = xmlOutputBufferCreateBuffer(buffer, NULL); + xmlNodeDumpOutput(output_buffer, NULL, node, 0, 0, NULL); + xmlOutputBufferClose(output_buffer); + xmlBufferAdd(buffer, BAD_CAST "", 1); + + return buffer; +} + static char* get_string_from_xml_node(xmlNode *xmlnode) { - xmlOutputBufferPtr buf; - char *xmlString; + xmlBuffer *buffer; + char *result; if (xmlnode == NULL) { return NULL; } - - buf = xmlAllocOutputBuffer(NULL); - if (buf == NULL) { - xmlString = NULL; + buffer = xmlnode_to_xmlbuffer(xmlnode); + if (buffer == NULL) { + result = NULL; } else { - xmlNodeDumpOutput(buf, NULL, xmlnode, 0, 1, NULL); - xmlOutputBufferFlush(buf); - if (buf->conv == NULL) { - xmlString = estrdup((char*)buf->buffer->content); - } else { - xmlString = estrdup((char*)buf->conv->content); - } - xmlOutputBufferClose(buf); + result = estrdup((char*)xmlBufferContent(buffer)); + xmlBufferFree(buffer); } - - return xmlString; + return result; } static xmlNode* only in patch2: unchanged: --- lasso-2.3.6.orig/bindings/python/wrapper_top.c +++ lasso-2.3.6/bindings/python/wrapper_top.c @@ -103,28 +103,40 @@ return proxy; } +static xmlBuffer* +xmlnode_to_xmlbuffer(xmlNode *node) +{ + xmlOutputBufferPtr output_buffer; + xmlBuffer *buffer; + + if (! node) + return NULL; + + buffer = xmlBufferCreate(); + output_buffer = xmlOutputBufferCreateBuffer(buffer, NULL); + xmlNodeDumpOutput(output_buffer, NULL, node, 0, 0, NULL); + xmlOutputBufferClose(output_buffer); + xmlBufferAdd(buffer, BAD_CAST "", 1); + + return buffer; +} + static PyObject* get_pystring_from_xml_node(xmlNode *xmlnode) { - xmlOutputBufferPtr buf; PyObject *pystring = NULL; + xmlBuffer *buffer; if (xmlnode == NULL) { return NULL; } + buffer = xmlnode_to_xmlbuffer(xmlnode); - buf = xmlAllocOutputBuffer(NULL); - if (buf == NULL) { + if (buffer == NULL) { pystring = NULL; } else { - xmlNodeDumpOutput(buf, NULL, xmlnode, 0, 1, NULL); - xmlOutputBufferFlush(buf); - if (buf->conv == NULL) { - pystring = PyString_FromString((char*)buf->buffer->content); - } else { - pystring = PyString_FromString((char*)buf->conv->content); - } - xmlOutputBufferClose(buf); + pystring = PyString_FromString((char*)xmlBufferContent(buffer)); + xmlBufferFree(buffer); } return pystring; only in patch2: unchanged: --- lasso-2.3.6.orig/lasso/id-ff/lecp.c +++ lasso-2.3.6/lasso/id-ff/lecp.c @@ -58,8 +58,6 @@ LassoProfile *profile; gchar *assertionConsumerServiceURL; xmlNode *msg; - xmlOutputBuffer *buf; - xmlCharEncodingHandler *handler; g_return_val_if_fail(LASSO_IS_LECP(lecp), LASSO_PARAM_ERROR_BAD_TYPE_OR_NULL_OBJ); @@ -89,16 +87,7 @@ LASSO_PROFILE(lecp)->server->certificate; msg = lasso_node_get_xmlNode(LASSO_NODE(lecp->authnRequestEnvelope), FALSE); - /* msg is not SOAP but straight XML */ - handler = xmlFindCharEncodingHandler("utf-8"); - buf = xmlAllocOutputBuffer(handler); - xmlNodeDumpOutput(buf, NULL, msg, 0, 0, "utf-8"); - xmlOutputBufferFlush(buf); - - lasso_assign_string(profile->msg_body, - (char*)(buf->conv ? buf->conv->content : buf->buffer->content)); - xmlOutputBufferClose(buf); - xmlFreeNode(msg); + lasso_assign_new_string(profile->msg_body, lasso_xmlnode_to_string(msg, 0, 0)) if (profile->msg_body == NULL) { return LASSO_PROFILE_ERROR_BUILDING_REQUEST_FAILED; @@ -299,8 +288,6 @@ xmlXPathContext *xpathCtx; xmlXPathObject *xpathObj; xmlNode *soap_envelope, *soap_body, *authn_request; - xmlOutputBuffer *buf; - xmlCharEncodingHandler *handler; g_return_val_if_fail(LASSO_IS_LECP(lecp), LASSO_PARAM_ERROR_BAD_TYPE_OR_NULL_OBJ); g_return_val_if_fail(request_msg != NULL, LASSO_PARAM_ERROR_INVALID_VALUE); @@ -337,13 +324,8 @@ soap_body = xmlNewTextChild(soap_envelope, NULL, (xmlChar*)"Body", NULL); xmlAddChild(soap_body, authn_request); - handler = xmlFindCharEncodingHandler("utf-8"); - buf = xmlAllocOutputBuffer(handler); - xmlNodeDumpOutput(buf, NULL, soap_envelope, 0, 0, "utf-8"); - xmlOutputBufferFlush(buf); - LASSO_PROFILE(lecp)->msg_body = g_strdup( (char*)( - buf->conv ? buf->conv->content : buf->buffer->content)); - xmlOutputBufferClose(buf); + lasso_assign_new_string(LASSO_PROFILE(lecp)->msg_body, + lasso_xmlnode_to_string(soap_envelope, 0, 0)); xmlFreeNode(soap_envelope); only in patch2: unchanged: --- lasso-2.3.6.orig/lasso/id-ff/session.c +++ lasso-2.3.6/lasso/id-ff/session.c @@ -437,27 +437,12 @@ xmlChar * xmlNode_to_base64(xmlNode *node) { - xmlOutputBufferPtr buf = NULL; - xmlCharEncodingHandlerPtr handler = NULL; - xmlChar *buffer = NULL; + gchar *buffer = NULL; xmlChar *ret = NULL; - handler = xmlFindCharEncodingHandler("utf-8"); - if (! handler) - goto cleanup; - buf = xmlAllocOutputBuffer(handler); - if (! buf) - goto cleanup; - xmlNodeDumpOutput(buf, NULL, node, 0, 0, "utf-8"); - xmlOutputBufferFlush(buf); - buffer = buf->conv ? buf->conv->content : buf->buffer->content; - - ret = xmlSecBase64Encode(buffer, strlen((char*)buffer), 0); - -cleanup: - if (buf) - xmlOutputBufferClose(buf); - + buffer = lasso_xmlnode_to_string(node, 0, 0); + ret = xmlSecBase64Encode(BAD_CAST buffer, strlen((char*)buffer), 0); + lasso_release_string(buffer); return ret; } only in patch2: unchanged: --- lasso-2.3.6.orig/lasso/saml-2.0/ecp.c +++ lasso-2.3.6/lasso/saml-2.0/ecp.c @@ -128,8 +128,6 @@ xmlXPathContext *xpathCtx; xmlXPathObject *xpathObj; xmlNode *xmlnode; - xmlOutputBuffer *buf; - xmlCharEncodingHandler *handler; LassoProfile *profile; LassoProvider *remote_provider; @@ -170,13 +168,8 @@ xpathObj = NULL; xmlnode = xmlDocGetRootElement(doc); - handler = xmlFindCharEncodingHandler("utf-8"); - buf = xmlAllocOutputBuffer(handler); - xmlNodeDumpOutput(buf, NULL, xmlnode, 0, 0, "utf-8"); - xmlOutputBufferFlush(buf); - LASSO_PROFILE(ecp)->msg_body = g_strdup( - (char*)(buf->conv ? buf->conv->content : buf->buffer->content)); - xmlOutputBufferClose(buf); + lasso_assign_new_string(LASSO_PROFILE(ecp)->msg_body, + lasso_xmlnode_to_string(xmlnode, 0, 0)) lasso_release_doc(doc); profile->remote_providerID = lasso_server_get_first_providerID_by_role(profile->server, LASSO_PROVIDER_ROLE_IDP); @@ -206,8 +199,6 @@ xmlXPathObject *xpathObj; xmlNode *new_envelope, *header, *paos_response, *ecp_relay_state; xmlNode *body = NULL; - xmlOutputBuffer *buf; - xmlCharEncodingHandler *handler; xmlNs *soap_env_ns, *ecp_ns; g_return_val_if_fail(LASSO_IS_ECP(ecp), LASSO_PARAM_ERROR_BAD_TYPE_OR_NULL_OBJ); @@ -270,17 +261,9 @@ } xmlAddChild(new_envelope, body); - - handler = xmlFindCharEncodingHandler("utf-8"); - buf = xmlAllocOutputBuffer(handler); - xmlNodeDumpOutput(buf, NULL, new_envelope, 0, 0, "utf-8"); - xmlOutputBufferFlush(buf); - LASSO_PROFILE(ecp)->msg_body = g_strdup( - (char*)(buf->conv ? buf->conv->content : buf->buffer->content)); - xmlOutputBufferClose(buf); - + lasso_assign_new_string(LASSO_PROFILE(ecp)->msg_body, + lasso_xmlnode_to_string(new_envelope, 0, 0)) lasso_release_doc(doc); - return 0; } only in patch2: unchanged: --- lasso-2.3.6.orig/lasso/xml/tools.c +++ lasso-2.3.6/lasso/xml/tools.c @@ -36,6 +36,7 @@ #include <libxml/uri.h> #include <libxml/parser.h> #include <libxml/parserInternals.h> +#include <libxml/xmlIO.h> #include <openssl/pem.h> #include <openssl/sha.h> @@ -1043,38 +1044,30 @@ return 0; } -gchar* -lasso_node_build_deflated_query(LassoNode *node) +static gchar* +lasso_xmlnode_build_deflated_query(xmlNode *xmlnode) { - /* actually deflated and b64'ed and url-escaped */ - xmlNode *xmlnode; - xmlOutputBufferPtr buf; - xmlCharEncodingHandlerPtr handler = NULL; - xmlChar *buffer; + xmlOutputBuffer *output_buffer; + xmlBuffer *buffer; xmlChar *ret, *b64_ret; char *rret; unsigned long in_len; int rc = 0; z_stream stream; - xmlnode = lasso_node_get_xmlNode(node, FALSE); - - handler = xmlFindCharEncodingHandler("utf-8"); - buf = xmlAllocOutputBuffer(handler); - xmlNodeDumpOutput(buf, NULL, xmlnode, 0, 0, "utf-8"); - xmlOutputBufferFlush(buf); - buffer = buf->conv ? buf->conv->content : buf->buffer->content; - - xmlFreeNode(xmlnode); - xmlnode = NULL; - - in_len = strlen((char*)buffer); + buffer = xmlBufferCreate(); + output_buffer = xmlOutputBufferCreateBuffer(buffer, NULL); + xmlNodeDumpOutput(output_buffer, NULL, xmlnode, 0, 0, NULL); + xmlOutputBufferClose(output_buffer); + xmlBufferAdd(buffer, BAD_CAST "", 1); + lasso_release_xml_node(xmlnode); + in_len = strlen((char*)xmlBufferContent(buffer)); ret = g_malloc(in_len * 2); /* deflating should never increase the required size but we are * more conservative than that. Twice the size should be * enough. */ - stream.next_in = buffer; + stream.next_in = (xmlChar*)xmlBufferContent(buffer); stream.avail_in = in_len; stream.next_out = ret; stream.avail_out = in_len * 2; @@ -1097,6 +1090,7 @@ rc = deflateEnd(&stream); } } + xmlBufferFree(buffer); if (rc != Z_OK) { lasso_release(ret); message(G_LOG_LEVEL_CRITICAL, "Failed to deflate"); @@ -1104,7 +1098,6 @@ } b64_ret = xmlSecBase64Encode(ret, stream.total_out, 0); - xmlOutputBufferClose(buf); lasso_release(ret); ret = xmlURIEscapeStr(b64_ret, NULL); @@ -1115,6 +1108,20 @@ return rret; } +gchar* +lasso_node_build_deflated_query(LassoNode *node) +{ + /* actually deflated and b64'ed and url-escaped */ + xmlNode *xmlnode; + gchar *result; + + xmlnode = lasso_node_get_xmlNode(node, FALSE); + result = lasso_xmlnode_build_deflated_query(xmlnode); + xmlFreeNode(xmlnode); + return result; +} + + gboolean lasso_node_init_from_deflated_query_part(LassoNode *node, char *deflate_string) { @@ -2144,22 +2151,21 @@ char* lasso_xmlnode_to_string(xmlNode *node, gboolean format, int level) { - xmlOutputBufferPtr buf; - xmlCharEncodingHandlerPtr handler = NULL; - xmlChar *buffer; + xmlOutputBufferPtr output_buffer; + xmlBuffer *buffer; char *str; if (! node) return NULL; - handler = xmlFindCharEncodingHandler("utf-8"); - buf = xmlAllocOutputBuffer(handler); - xmlNodeDumpOutput(buf, NULL, node, level, format ? 1 : 0, "utf-8"); - xmlOutputBufferFlush(buf); - buffer = buf->conv ? buf->conv->content : buf->buffer->content; + buffer = xmlBufferCreate(); + output_buffer = xmlOutputBufferCreateBuffer(buffer, NULL); + xmlNodeDumpOutput(output_buffer, NULL, node, level, format ? 1 : 0, NULL); + xmlOutputBufferClose(output_buffer); + xmlBufferAdd(buffer, BAD_CAST "", 1); /* do not mix XML and GLib strings, so we must copy */ - str = g_strdup((char*)buffer); - xmlOutputBufferClose(buf); + str = g_strdup((char*)xmlBufferContent(buffer)); + xmlBufferFree(buffer); return str; }
signature.asc
Description: Digital signature