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

Bug#880430: lintian: check for invalid arguments to dpkg-maintscript-helper



Package: lintian
Version: 2.5.57
Severity: normal

I just came around this incorrect dpkg-maintscript-helper invocation in
libreoffice-sdbc-firebird (#880426):

# Automatically added by dh_installdeb/10.9
dpkg-maintscript-helper dir_to_symlink /usr/share/doc/libreoffice-sdbc-firebird /usr/share/doc/libreoffice-core 1:5.0.3\~rc1-2 \$DPKG_MAINTSCRIPT_PACKAGE -- "$@"
# End automatically added section

This is caused by dh_installdeb escaping shell metacaracters in compat
level 10, so the (superfluous) $DPKG_MAINTSCRIPT_PACKAGE argument that
worked in compat level 9 becomes an invalid package name now, and makes
d-m-h explode.

This error may not be recognized easily in standard testing since d-m-h
will skip the operation depending on the version argument.
And it is likely that a debian/*.maintscript file that worked in compat
level 9 will be a noop in most upgrade paths nowadays, creating a timebomb
for a case where the newer package gets installed over an even older one ...

src:libreoffice has two of these errors, but only one is triggered in piuparts
(I only found this because there is no libreoffice-sdbc-firebird in stretch
and an upgrade from jessie->stretch->buster is actually an upgrade
jessie->buster for this package and needs the d-m-h commands to run)

I'm not sure how to correctly detect this from lintian, but any package
name argument containing escaped shell meta characters is invalid.


Andreas


Reply to: