Package: tomcat7
Version: 7.0.75-1
Similiar to Debian bug #597814, the sed statement in the postinst
assumes there is no '%' in a user's JAVA_OPTS. However, this is a valid
possiblity, for example:
-XX:ErrorFile=/var/log/tomcat7/java_error%p.log
This will cause the sed command to fail as it finds a % too early. The
delimiter was previous a '/' however, that can obviously be found in a
path. I would propose that this be changed to use the '|' symbol as it
should be even less common then the % symbol.
Another alternative to remove this situation entirely would be to escape
the strings matching the delimeter.
debian/tomcat7.postinst debian/tomcat7.postinst
index a8919dd..083c6a3 100644
--- debian/tomcat7.postinst
+++ debian/tomcat7.postinst
@@ -20,9 +20,9 @@ case "$1" in
tmpfile=`mktemp /tmp/tomcat7.XXXXXXXXXX`
chmod 644 $tmpfile
cat $TEMPLATE \
- | sed "s%^TOMCAT7_USER=.*$%TOMCAT7_USER=$TOMCAT7_USER%" \
- | sed "s%^TOMCAT7_GROUP=.*$%TOMCAT7_GROUP=$TOMCAT7_GROUP%" \
- | sed "s%^JAVA_OPTS=.*$%JAVA_OPTS=\"$JAVA_OPTS\"%" \
+ | sed "s|^TOMCAT7_USER=.*$|TOMCAT7_USER=$TOMCAT7_USER|" \
+ | sed "s|^TOMCAT7_GROUP=.*$|TOMCAT7_GROUP=$TOMCAT7_GROUP|" \
+ | sed "s|^JAVA_OPTS=.*$|JAVA_OPTS=\"$JAVA_OPTS\"|" \
>> $tmpfile
ucf --debconf-ok --sum-file /usr/share/tomcat7/defaults.md5sum $tmpfile
$CONFFILE
rm -f $tmpfile
--
Joshua Powers
Ubuntu Server
Canonical Ltd
__
This is the maintainer address of Debian's Java team
<http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-maintainers>.
Please use
[email protected] for discussions and questions.