This is an automated email from the git hooks/post-receive script. jamessan pushed a commit to branch master in repository devscripts.
commit f1d45e8716c8072049248b1d9a59f05c90f9e4d5 Author: James McCoy <[email protected]> Date: Fri Jul 31 20:12:08 2015 -0400 licensecheck: Accept all non-binary/unknown encoding files Rather than using a limited whitelist of mime types, accept and decode any file of a known encoding. Also attempt to parse through non-decoded data of unknown encoding. Closes: #794282 Signed-off-by: James McCoy <[email protected]> --- debian/changelog | 4 ++++ scripts/licensecheck.pl | 11 ++++++----- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/debian/changelog b/debian/changelog index 6536846..3cbbc1a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,6 +2,10 @@ devscripts (2.15.7) UNRELEASED; urgency=medium * licensecheck: + Use Dpkg::IPC to run file to avoid shell injection. (Closes: #794260) + + Change whitelist of mime types to greylist of encodings. Restores + ability to check files with mime types like text/x-c++ and + application/postscript. Thanks to Jonas Smedegaard for the patch. + (Closes: #794282) -- James McCoy <[email protected]> Fri, 31 Jul 2015 19:53:04 -0400 diff --git a/scripts/licensecheck.pl b/scripts/licensecheck.pl index e520a4a..047dc7f 100755 --- a/scripts/licensecheck.pl +++ b/scripts/licensecheck.pl @@ -329,22 +329,23 @@ while (@files) { nocheck => 1, wait_child => 1); my $charset ; - if ($mime =~ m!(?:text/[\w-]+|application/xml); charset=([\w-]+)!) { + if ($mime =~ m/; charset=((?!binary)(?!unknown)[\w-]+)/) { $charset = $1; } else { chomp $mime; warn "$0 warning: cannot parse file '$file' with mime type '$mime'\n"; - next; + $charset = 'maybe-binary'; } open (my $F, '<' ,$file) or die "Unable to access $file\n"; binmode $F, ':raw'; while ( <$F>) { - last if ($. > $OPT{'lines'}); - my $data = decode($charset,$_); - $content .= $data; + last if ($. > $OPT{'lines'}); + my $data = $_; + $data = decode($charset, $data) if $charset ne 'maybe-binary'; + $content .= $data; } close($F); -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/collab-maint/devscripts.git _______________________________________________ devscripts-devel mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/devscripts-devel
