[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#953212: lintian check portable-executable-missing-security-features disagrees with genpeimg about SafeSEH



Package: lintian
Version: 2.55.0
Control: affects -1 src:win-iconv

It seems like the check in checks/pe.pm for what it calls "SafeSEH" is
not aligned with the "Optional Characteristics" flag provided by
"genpeimg -x" as "no-SEH".  After a build of win-iconv which follows the
instructions given in "lintian-info --tags
portable-executable-missing-security-features" exactly, you can see that
the "no-SEH" flag is present, but lintian still complains:


```
make[1]: Entering directory '/home/dkg/src/win-iconv/win-iconv'
for arch in x86_64-w64-mingw32 i686-w64-mingw32; do \
  cd build-$arch && \
  /usr/bin/make CC=$arch-gcc AR=$arch-ar RANLIB=$arch-ranlib DLLTOOL=$arch-dlltool prefix=/usr/$arch install DESTDIR=/home/dkg/src/win-iconv/win-iconv/debian/tmp \
  && genpeimg -d +d -d +n -d +s /home/dkg/src/win-iconv/win-iconv/debian/tmp/usr/$arch/bin/win_iconv.exe \
  && genpeimg -d +d -d +n -d +s /home/dkg/src/win-iconv/win-iconv/debian/tmp/usr/$arch/bin/iconv.dll \
  || exit 1 ; \
  cd .. ; \
done
[…]
Now running lintian win-iconv_0.0.8-4_amd64.changes ...
E: win-iconv-mingw-w64-dev: portable-executable-missing-security-features usr/i686-w64-mingw32/bin/iconv.dll SafeSEH
E: win-iconv-mingw-w64-dev: portable-executable-missing-security-features usr/i686-w64-mingw32/bin/win_iconv.exe SafeSEH
E: win-iconv-mingw-w64-dev: portable-executable-missing-security-features usr/x86_64-w64-mingw32/bin/iconv.dll SafeSEH
E: win-iconv-mingw-w64-dev: portable-executable-missing-security-features usr/x86_64-w64-mingw32/bin/win_iconv.exe SafeSEH
I: win-iconv source: testsuite-autopkgtest-missing
N: 18 tags overridden (4 errors, 14 warnings)
Finished running lintian.
0 dkg@alice:~/src/win-iconv/win-iconv$ 0 dkg@alice:~/src/win-iconv/win-iconv$ find . '(' -iname  iconv.dll -o -iname 'win_iconv.exe' ')' -print0 | xargs -0 -n1 genpeimg -x | awk '/^PE image/{ print $3 }; { if (found) { print $0; found=0; } }; /^  Optional Characteristics:/{ found=1; };'
"./build-x86_64-w64-mingw32/win_iconv.exe"
"./build-x86_64-w64-mingw32/iconv.dll"
"./build-i686-w64-mingw32/win_iconv.exe"
"./build-i686-w64-mingw32/iconv.dll"
"./debian/win-iconv-mingw-w64-dev/usr/i686-w64-mingw32/bin/win_iconv.exe"
    dynamic-base nx-compatible no-SEH
"./debian/win-iconv-mingw-w64-dev/usr/i686-w64-mingw32/bin/iconv.dll"
    dynamic-base nx-compatible no-SEH
"./debian/win-iconv-mingw-w64-dev/usr/x86_64-w64-mingw32/bin/win_iconv.exe"
    dynamic-base nx-compatible no-SEH
"./debian/win-iconv-mingw-w64-dev/usr/x86_64-w64-mingw32/bin/iconv.dll"
    dynamic-base nx-compatible no-SEH
"./debian/tmp/usr/i686-w64-mingw32/bin/win_iconv.exe"
    dynamic-base nx-compatible no-SEH
"./debian/tmp/usr/i686-w64-mingw32/bin/iconv.dll"
    dynamic-base nx-compatible no-SEH
"./debian/tmp/usr/x86_64-w64-mingw32/bin/win_iconv.exe"
    dynamic-base nx-compatible no-SEH
"./debian/tmp/usr/x86_64-w64-mingw32/bin/iconv.dll"
    dynamic-base nx-compatible no-SEH
0 dkg@alice:~/src/win-iconv/win-iconv$
```


Regards,

        --dkg

Attachment: signature.asc
Description: PGP signature


Reply to: