Package: phpmyadmin Version: 4:2.6.2-2 Severity: important The latest version of phpmyadmin uses the following code to undo a release-critical bug of editing another package's conffile:
@@ -146,6 +146,15 @@ ucf --purge /etc/phpmyadmin/apache.conf rm -f /etc/phpmyadmin/apache.conf.md5sum fi + # Trying to fix the mess. Sorry :( See #307275. + if [ "$1" = "upgrade" -a -n "$2" ] && \ + dpkg --compare-versions "$2" lt-nl "4:2.6.2-2"; then + if grep -qs "^# Include /etc/apache2/conf\.d/\[^\.#\]\*$" /etc/apache2/apache2.conf; then + cp -f /etc/apache2/apache2.conf /etc/apache2/apache2.conf.old.phpmyadmin + grep -v "^Include /etc/apache2/conf\.d/\*\.conf" /etc/apache2/apache2.conf.old.phpmyadmin | \ + sed "s%^# \(Include /etc/apache2/conf\.d/\[^\.#\]\*\)$%\1%" > /etc/apache2/apache2.conf + fi + fi . for webserver in apache apache-perl apache-ssl apache2; do if [ -f /etc/$webserver/conf.d/phpmyadmin.conf ]; then There are two problems with this code block: - The only version of phpmyadmin that contained this bug, according to the changelog, was 4:2.6.2-1. Therefore, the code should check for *exactly* that version, instead of making further, possibly inappropriate changes to apache2's conffile. - This code does not preserve permissions on apache2.conf, and introduces the possibility of breaking the config file if the grep/sed pipeline is interrupted mid-write. A more robust solution would be: if [ "$1" = "upgrade" -a "$2" = "4:2.6.2-1" ]; then if grep -qs "^# Include /etc/apache2/conf\.d/\[^\.#\]\*$" /etc/apache2/apache2.conf; then grep -v "^Include /etc/apache2/conf\.d/\*\.conf" /etc/apache2/apache2.conf | \ sed "s%^# \(Include /etc/apache2/conf\.d/\[^\.#\]\*\)$%\1%" > /etc/apache2/apache2.conf.old.phpmyadmin chmod --reference=/etc/apache2/apache2.conf /etc/apache2/apache2.conf.old.phpmyadmin chown --reference=/etc/apache2/apache2.conf /etc/apache2/apache2.conf.old.phpmyadmin mv /etc/apache2/apache2.conf.old.phpmyadmin /etc/apache2/apache2.conf fi fi Please address this problem so that 2.6.2-2 can be considered for sarge. In addition, the changelog mentions: * Doesn't load the PHP extensions automatically in config.inc.php script. ... which sounds like a regression to me... Thanks, -- Steve Langasek postmodern programmer
signature.asc
Description: Digital signature