Re: Make deplibs check fallback work for 64-bit Windows and Windows CE
On Sun, 28 Feb 2010 05:49:00 +0100 Ralf Wildenhues wrote: > > I've tweaked the test a bit more to skip on systems without shared > libraries at all (or when --disable-shared was used), to ensure > library_names is always initialized and to source only files from the > current directory, added a NEWS entry, and committed the patch as below. > Fantastic. Now I just need to get the other patch sorted out and look forward to a release. ;) Rgds -- Pierre OssmanOpenSource-based Thin Client Technology System Developer Telephone: +46-13-21 46 00 Cendio ABWeb: http://www.cendio.com signature.asc Description: PGP signature
Re: Make deplibs check fallback work for 64-bit Windows and Windows CE
* Pierre Ossman wrote on Thu, Feb 25, 2010 at 11:21:54AM CET: > On Wed, 24 Feb 2010 22:31:07 +0100 > Ralf Wildenhues wrote: > > > I managed to send out a broken version of the patch. Please forget that > > one, this one has a testcase that should work better. Can you retry > > with it? You can use something like > > > > make all check-local TESTSUITEFLAGS='-v -d -x -k "deplibs without file > > command"' > > > > and it should pass if your libtool.m4 change is included and fail > > without. With a cross compiler and wine, it skips, native it should > > fail, but I can't test that ATM. > > I'm afraid I don't understand the principle of your test, as it seems > to me that it should succeed in every case (it'll just link against a > static libb instead of a dynamic one). Ah, yes, I knew I was missing something there, but wasn't sure what. > I've changed the test to instead try to determine if it was able to > create a dynamic libb or not. It does this by looking at the > library_names field in libb.la. > > I've confirmed that this test catches the bug here. Great! I've tweaked the test a bit more to skip on systems without shared libraries at all (or when --disable-shared was used), to ensure library_names is always initialized and to source only files from the current directory, added a NEWS entry, and committed the patch as below. Thanks again, Ralf 2010-02-28 Pierre Ossman(tiny change) Ralf Wildenhues Fix deplibs check fallback for 64-bit Windows and Windows CE. * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Accept file formats 'pe-arm-wince' and 'pe-x86-64'. Add note about consistency with ... * libltdl/config/ltmain.m4sh (func_win32_libid): ... the respective pattern here; sync pattern from the former. * tests/deplibs-mingw.at (deplibs without file command): New file, new test. * Makefile.am (TESTSUITE_AT): Update. * NEWS: Update. diff --git a/Makefile.am b/Makefile.am index 29a639a..a7de46d 100644 --- a/Makefile.am +++ b/Makefile.am @@ -504,7 +504,8 @@ TESTSUITE_AT= tests/testsuite.at \ tests/configure-iface.at \ tests/stresstest.at \ tests/cmdline_wrap.at \ - tests/darwin.at + tests/darwin.at \ + tests/deplibs-mingw.at EXTRA_DIST += $(srcdir)/$(TESTSUITE) $(TESTSUITE_AT) $(srcdir)/tests/package.m4 diff --git a/NEWS b/NEWS index 61638fd..00ab5c1 100644 --- a/NEWS +++ b/NEWS @@ -64,6 +64,7 @@ New in 2.2.8 2010-??-??: git version 2.2.7a, Libtool team: when using the compiler driver to link programs. Now "-Wc," is stripped just as it is when linking libraries through the compiler driver. - Symbol versioning works with the GNU gold linker now. + - Fixes for detection of shared library dependencies on MinGW systems. * Miscellaneous changes: diff --git a/libltdl/config/ltmain.m4sh b/libltdl/config/ltmain.m4sh index 56b7497..8fcedc9 100644 --- a/libltdl/config/ltmain.m4sh +++ b/libltdl/config/ltmain.m4sh @@ -2189,8 +2189,9 @@ func_win32_libid () win32_libid_type="x86 archive import" ;; *ar\ archive*) # could be an import, or static +# Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD. if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | - $EGREP 'file format (pe-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then + $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then win32_nmres=`eval $NM -f posix -A $1 | $SED -n -e ' 1,100{ diff --git a/libltdl/m4/libtool.m4 b/libltdl/m4/libtool.m4 index b538fa6..f99e618 100644 --- a/libltdl/m4/libtool.m4 +++ b/libltdl/m4/libtool.m4 @@ -3009,7 +3009,8 @@ mingw* | pw32*) lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' else -lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' +# Keep this pattern in sync with the one in func_win32_libid. +lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' lt_cv_file_magic_cmd='$OBJDUMP -f' fi ;; diff --git a/tests/deplibs-mingw.at b/tests/deplibs-mingw.at new file mode 100644 index 000..68e8386 --- /dev/null +++ b/tests/deplibs-mingw.at @@ -0,0 +1,93 @@ +# deplibs-mingw.at -- -*- Autotest -*- + +# Copyright (C) 2010 Free Software Foundation, Inc. +# +# This file is part of GNU Libtool. +# +# GNU Libtool 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 (at your option) any later version. +# +# GNU Libtool is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without
Re: Make deplibs check fallback work for 64-bit Windows and Windows CE
On Wed, 24 Feb 2010 22:31:07 +0100 Ralf Wildenhues wrote: > I managed to send out a broken version of the patch. Please forget that > one, this one has a testcase that should work better. Can you retry > with it? You can use something like > > make all check-local TESTSUITEFLAGS='-v -d -x -k "deplibs without file > command"' > > and it should pass if your libtool.m4 change is included and fail > without. With a cross compiler and wine, it skips, native it should > fail, but I can't test that ATM. > I'm afraid I don't understand the principle of your test, as it seems to me that it should succeed in every case (it'll just link against a static libb instead of a dynamic one). I've changed the test to instead try to determine if it was able to create a dynamic libb or not. It does this by looking at the library_names field in libb.la. I've confirmed that this test catches the bug here. diff --git a/Makefile.am b/Makefile.am index 29a639a..a7de46d 100644 --- a/Makefile.am +++ b/Makefile.am @@ -504,7 +504,8 @@ TESTSUITE_AT= tests/testsuite.at \ tests/configure-iface.at \ tests/stresstest.at \ tests/cmdline_wrap.at \ - tests/darwin.at + tests/darwin.at \ + tests/deplibs-mingw.at EXTRA_DIST += $(srcdir)/$(TESTSUITE) $(TESTSUITE_AT) $(srcdir)/tests/package.m4 diff --git a/tests/deplibs-mingw.at b/tests/deplibs-mingw.at new file mode 100644 index 000..55a88fc --- /dev/null +++ b/tests/deplibs-mingw.at @@ -0,0 +1,91 @@ +# deplibs-mingw.at -- -*- Autotest -*- + +# Copyright (C) 2010 Free Software Foundation, Inc. +# +# This file is part of GNU Libtool. +# +# GNU Libtool 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 (at your option) any later version. +# +# GNU Libtool 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 GNU Libtool; see the file COPYING. If not, a copy +# can be downloaded from http://www.gnu.org/licenses/gpl.html, +# or obtained by writing to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + + +# Check that deplibs are detected correctly even if there is no `file' +# command installed. + +AT_SETUP([deplibs without file command]) +AT_KEYWORDS([libtool]) + +cwd=`pwd` +instdir=$cwd/inst +libdir=$instdir/lib +bindir=$instdir/bin +LDFLAGS="$LDFLAGS -no-undefined" + +mkdir inst inst/bin inst/lib + +AT_DATA([a.c], +[[int a () { return 0; } +]]) +AT_DATA([b.c], +[[extern int a (); +int b () { return a (); } +]]) + +for file in a.c b.c; do + $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c $file +done +AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la a.lo -rpath $libdir], +[], [ignore], [ignore]) +AT_CHECK([$LIBTOOL --mode=install cp liba.la $libdir], [], [ignore], [ignore]) +AT_CHECK([$LIBTOOL --mode=clean rm -f liba.la], [], [ignore], [ignore]) +rm -f $libdir/liba.la + +# check once with `file' (if present) and once without, if on MinGW. +for try in with-file without-file; do + AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o libb.la b.lo -rpath $libdir ]dnl + [-L$libdir -la], + [], [ignore], [ignore]) + AT_CHECK([. libb.la && if test -z "$library_names"; then exit 99; fi ], + [], [ignore], [ignore]) + + case $host_os in + mingw*) +if file /; then + mkdir bin new-libtool + + cat >bin/file <<\EOF +#! /bin/sh +exit 1 +EOF + chmod +x bin/file + PATH=`pwd`/bin${PATH_SEPARATOR-:}$PATH + cd new-libtool + AT_CHECK(["$abs_top_srcdir"/configure $configure_options || exit 77], + [], [ignore], [ignore]) + cd .. + LIBTOOL=new-libtool/libtool + export LIBTOOL + # Check whether the generated script is usable; otherwise, skip. + AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o libunrelated.la a.lo -rpath $libdir] dnl + [|| exit 77], [], [ignore], [ignore]) +else + break; +fi;; + *) +break;; + esac +done + +AT_CLEANUP -- Pierre OssmanOpenSource-based Thin Client Technology System Developer Telephone: +46-13-21 46 00 Cendio ABWeb: http://www.cendio.com signature.asc Description: PGP signature
Re: Make deplibs check fallback work for 64-bit Windows and Windows CE
I managed to send out a broken version of the patch. Please forget that one, this one has a testcase that should work better. Can you retry with it? You can use something like make all check-local TESTSUITEFLAGS='-v -d -x -k "deplibs without file command"' and it should pass if your libtool.m4 change is included and fail without. With a cross compiler and wine, it skips, native it should fail, but I can't test that ATM. Thanks, Ralf 2010-02-24 Pierre Ossman(tiny change) Ralf Wildenhues Fix deplibs check fallback for 64-bit Windows and Windows CE. * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Accept file formats 'pe-arm-wince' and 'pe-x86-64'. Add note about consistency with ... * libltdl/config/ltmain.m4sh (func_win32_libid): ... the respective pattern here; sync pattern from the former. * tests/deplibs-mingw.at (deplibs without file command): New file, new test. * Makefile.am (TESTSUITE_AT): Update. diff --git a/Makefile.am b/Makefile.am index 29a639a..a7de46d 100644 --- a/Makefile.am +++ b/Makefile.am @@ -504,7 +504,8 @@ TESTSUITE_AT= tests/testsuite.at \ tests/configure-iface.at \ tests/stresstest.at \ tests/cmdline_wrap.at \ - tests/darwin.at + tests/darwin.at \ + tests/deplibs-mingw.at EXTRA_DIST += $(srcdir)/$(TESTSUITE) $(TESTSUITE_AT) $(srcdir)/tests/package.m4 diff --git a/libltdl/config/ltmain.m4sh b/libltdl/config/ltmain.m4sh index 56b7497..8fcedc9 100644 --- a/libltdl/config/ltmain.m4sh +++ b/libltdl/config/ltmain.m4sh @@ -2189,8 +2189,9 @@ func_win32_libid () win32_libid_type="x86 archive import" ;; *ar\ archive*) # could be an import, or static +# Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD. if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | - $EGREP 'file format (pe-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then + $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then win32_nmres=`eval $NM -f posix -A $1 | $SED -n -e ' 1,100{ diff --git a/libltdl/m4/libtool.m4 b/libltdl/m4/libtool.m4 index 29f1222..fa8edc7 100644 --- a/libltdl/m4/libtool.m4 +++ b/libltdl/m4/libtool.m4 @@ -3009,7 +3009,8 @@ mingw* | pw32*) lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' else -lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' +# Keep this pattern in sync with the one in func_win32_libid. +lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' lt_cv_file_magic_cmd='$OBJDUMP -f' fi ;; diff --git a/tests/deplibs-mingw.at b/tests/deplibs-mingw.at new file mode 100644 index 000..8324ef8 --- /dev/null +++ b/tests/deplibs-mingw.at @@ -0,0 +1,98 @@ +# deplibs-mingw.at -- -*- Autotest -*- + +# Copyright (C) 2010 Free Software Foundation, Inc. +# +# This file is part of GNU Libtool. +# +# GNU Libtool 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 (at your option) any later version. +# +# GNU Libtool 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 GNU Libtool; see the file COPYING. If not, a copy +# can be downloaded from http://www.gnu.org/licenses/gpl.html, +# or obtained by writing to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + + +# Check that deplibs are detected correctly even if there is no `file' +# command installed. + +AT_SETUP([deplibs without file command]) +AT_KEYWORDS([libtool]) + +cwd=`pwd` +instdir=$cwd/inst +libdir=$instdir/lib +bindir=$instdir/bin +LDFLAGS="$LDFLAGS -no-undefined" + +mkdir inst inst/bin inst/lib + +AT_DATA([a.c], +[[int a () { return 0; } +]]) +AT_DATA([b.c], +[[extern int a (); +int b () { return a (); } +]]) +AT_DATA([m.c], +[[extern int b (); +int main () { return b (); } +]]) + +for file in a.c b.c; do + $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c $file +done +$CC $CPPFLAGS $CFLAGS -c m.c +AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la a.lo -rpath $libdir], +[], [ignore], [ignore]) +AT_CHECK([$LIBTOOL --mode=install cp liba.la $libdir], [], [ignore], [ignore]) +AT_CHECK([$LIBTOOL --mode=clean rm -f liba.la], [], [ignore], [ignore]) +rm -f $libdir/liba.la + +# check once with `file' (if present
Re: Make deplibs check fallback work for 64-bit Windows and Windows CE
* Pierre Ossman wrote on Mon, Feb 22, 2010 at 11:13:41AM CET: > On Sat, 20 Feb 2010 10:32:27 +0100 Ralf Wildenhues wrote: > > * Pierre Ossman wrote on Mon, Feb 15, 2010 at 11:01:40AM CET: > > > The "normal" check was fixed some time ago, but the fallback code was > > > overlooked. This patch fixes that as well. > > > > So that means you've encountered it with some code, on some system. > > Does your patch fix a testcase there, and if not, care to add (or > > describe) one? > My build system simply lacked the "file" command, so the fallback was > used. I've since added "file", but I figured I could be a good citizen > and fix the fallback in case anyone else stumbles upon it. Great! So we'd need a test that removes the 'file' command. Can you please try the patch below and see that it works for you and that it exposes the bug without your fix? Thanks. The test doesn't include a negative example yet (where linking ought to fail); I'm not sure about this, or its desirability. > > Then, I'm seeing a small inconsistency between func_win32_libid and the > > libtool.m4 text (taken post-patch, but the inconsistency was there > > before): > > > > (pe-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64) > > (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64) > > > > Which one's right? > I have no idea why the latter looks the way it does. The latest > binutils gives an output matching the first line. Let's use the latter, it's more forgiving. > (also, the "architecture" part is on a separate line in current > binutils and not relevant for this expression) > > I didn't dare change it in case it broke some old binutils people were > relying on. Yeah, likely. > > AFAICS copyright papers are not in place for you yet; more about this > > off-list (but please don't send more patch text until this is sorted > > out). > > Correct. I've started the process and I'll get back to you once it is > done. Thanks. Cheers, Ralf 2010-02-22 Pierre Ossman(tiny change) Ralf Wildenhues Fix deplibs check fallback for 64-bit Windows and Windows CE. * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Accept file formats 'pe-arm-wince' and 'pe-x86-64'. Add note about consistency with ... * libltdl/config/ltmain.m4sh (func_win32_libid): ... the respective pattern here; sync pattern from the former. * tests/deplibs-mingw.at (deplibs without file command): New file, new test. * Makefile.am (TESTSUITE_AT): Update. diff --git a/Makefile.am b/Makefile.am index 29a639a..a7de46d 100644 --- a/Makefile.am +++ b/Makefile.am @@ -504,7 +504,8 @@ TESTSUITE_AT= tests/testsuite.at \ tests/configure-iface.at \ tests/stresstest.at \ tests/cmdline_wrap.at \ - tests/darwin.at + tests/darwin.at \ + tests/deplibs-mingw.at EXTRA_DIST += $(srcdir)/$(TESTSUITE) $(TESTSUITE_AT) $(srcdir)/tests/package.m4 diff --git a/libltdl/config/ltmain.m4sh b/libltdl/config/ltmain.m4sh index 56b7497..8fcedc9 100644 --- a/libltdl/config/ltmain.m4sh +++ b/libltdl/config/ltmain.m4sh @@ -2189,8 +2189,9 @@ func_win32_libid () win32_libid_type="x86 archive import" ;; *ar\ archive*) # could be an import, or static +# Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD. if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | - $EGREP 'file format (pe-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then + $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then win32_nmres=`eval $NM -f posix -A $1 | $SED -n -e ' 1,100{ diff --git a/libltdl/m4/libtool.m4 b/libltdl/m4/libtool.m4 index 29f1222..fa8edc7 100644 --- a/libltdl/m4/libtool.m4 +++ b/libltdl/m4/libtool.m4 @@ -3009,7 +3009,8 @@ mingw* | pw32*) lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' else -lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' +# Keep this pattern in sync with the one in func_win32_libid. +lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' lt_cv_file_magic_cmd='$OBJDUMP -f' fi ;; diff --git a/tests/deplibs-mingw.at b/tests/deplibs-mingw.at new file mode 100644 index 000..74ad57b --- /dev/null +++ b/tests/deplibs-mingw.at @@ -0,0 +1,97 @@ +# deplibs-mingw.at -- -*- Autotest -*- + +# Copyright (C) 2010 Free Software Foundation, Inc. +# +# This file is part of GNU Libtool. +# +# GNU Libtool 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 (at your option) any later version. +# +# GNU Libtool is
Re: Make deplibs check fallback work for 64-bit Windows and Windows CE
On Sat, 20 Feb 2010 10:32:27 +0100 Ralf Wildenhues wrote: > [ dropping libtool@ ] > > Hi Pierre, > > thanks for the report and patch! > > * Pierre Ossman wrote on Mon, Feb 15, 2010 at 11:01:40AM CET: > > The "normal" check was fixed some time ago, but the fallback code was > > overlooked. This patch fixes that as well. > > So that means you've encountered it with some code, on some system. > Does your patch fix a testcase there, and if not, care to add (or > describe) one? > My build system simply lacked the "file" command, so the fallback was used. I've since added "file", but I figured I could be a good citizen and fix the fallback in case anyone else stumbles upon it. > Then, I'm seeing a small inconsistency between func_win32_libid and the > libtool.m4 text (taken post-patch, but the inconsistency was there > before): > > (pe-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64) > (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64) > > Which one's right? > I have no idea why the latter looks the way it does. The latest binutils gives an output matching the first line. (also, the "architecture" part is on a separate line in current binutils and not relevant for this expression) I didn't dare change it in case it broke some old binutils people were relying on. > > Btw, why isn't the original fix (b5282894) in the 2.2.6b release? > > 2.2.6b was a pure security fix release and has only a couple of changes > over 2.2.6a. > > > The fix is over one year old and still isn't in any released version. > > Yeah, that's because we've not been getting the current branch in > release shape. Sorry for the inconvenience. > We run a custom libtool here, so I could apply the relevant fixes to it. But it would be nice if we could point any other contributors to an upstream version. Hopefully you'll be able to do a release in an not to far off future. :) > AFAICS copyright papers are not in place for you yet; more about this > off-list (but please don't send more patch text until this is sorted > out). Correct. I've started the process and I'll get back to you once it is done. Rgds -- Pierre OssmanOpenSource-based Thin Client Technology System Developer Telephone: +46-13-21 46 00 Cendio ABWeb: http://www.cendio.com signature.asc Description: PGP signature
Re: Make deplibs check fallback work for 64-bit Windows and Windows CE
[ dropping libtool@ ] Hi Pierre, thanks for the report and patch! * Pierre Ossman wrote on Mon, Feb 15, 2010 at 11:01:40AM CET: > The "normal" check was fixed some time ago, but the fallback code was > overlooked. This patch fixes that as well. So that means you've encountered it with some code, on some system. Does your patch fix a testcase there, and if not, care to add (or describe) one? Then, I'm seeing a small inconsistency between func_win32_libid and the libtool.m4 text (taken post-patch, but the inconsistency was there before): (pe-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64) (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64) Which one's right? > Btw, why isn't the original fix (b5282894) in the 2.2.6b release? 2.2.6b was a pure security fix release and has only a couple of changes over 2.2.6a. > The fix is over one year old and still isn't in any released version. Yeah, that's because we've not been getting the current branch in release shape. Sorry for the inconvenience. AFAICS copyright papers are not in place for you yet; more about this off-list (but please don't send more patch text until this is sorted out). Thanks, Ralf