diff --git a/foomatic-filters-debug-string.patch b/foomatic-filters-debug-string.patch new file mode 100644 index 0000000..7743862 --- /dev/null +++ b/foomatic-filters-debug-string.patch @@ -0,0 +1,12 @@ +diff -up foomatic-filters-4.0.8/foomaticrip.c.debug-string foomatic-filters-4.0.8/foomaticrip.c +--- foomatic-filters-4.0.8/foomaticrip.c.debug-string 2011-10-24 13:01:42.000000000 +0200 ++++ foomatic-filters-4.0.8/foomaticrip.c 2011-10-24 13:05:55.737030758 +0200 +@@ -1651,7 +1651,7 @@ int main(int argc, char** argv) + if (dontparse == 2) { + /* Raw queue, simply pass the input into the postpipe (or to STDOUT + when there is no postpipe) */ +- _log("Raw printing, executing \"cat %s\"\n\n"); ++ _log("Raw printing, executing \"cat %s\"\n\n", postpipe->data); + snprintf(tmp, 1024, "cat %s", postpipe->data); + run_system_process("raw-printer", tmp); + continue; diff --git a/foomatic.spec b/foomatic.spec index 02b1f7c..d791d83 100644 --- a/foomatic.spec +++ b/foomatic.spec @@ -4,7 +4,7 @@ Summary: Tools for using the foomatic database of printers and printer drivers Name: foomatic Version: %{enginever} -Release: 4%{?dist} +Release: 5%{?dist} License: GPLv2+ Group: System Environment/Libraries @@ -16,6 +16,7 @@ Source1: http://www.openprinting.org/download/foomatic/foomatic-filters-%{filter ## PATCHES FOR FOOMATIC-FILTERS (PATCHES 1 TO 100) Patch1: foomatic-filters-CVE-2011-2924.patch +Patch2: foomatic-filters-debug-string.patch ## PATCHES FOR FOOMATIC-DB-ENGINE (PATCHES 101 TO 200) @@ -26,13 +27,12 @@ BuildRequires: perl >= 3:5.8.1 BuildRequires: perl(ExtUtils::MakeMaker) BuildRequires: libxml2-devel BuildRequires: autoconf, automake -BuildRequires: cups +BuildRequires: cups-devel BuildRequires: dbus-devel Requires: dbus Requires: %{name}-filters = %{version}-%{release} Requires: perl >= 3:5.8.1 Requires: %(eval `perl -V:version`; echo "perl(:MODULE_COMPAT_$version)") -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) # For 'rm' and '/sbin/service' in post Requires: fileutils initscripts @@ -79,6 +79,9 @@ pushd foomatic-filters-%{filtersver} # (CVE-2011-2924, bug #726426). %patch1 -p1 -b .CVE-2011-2924 +# Too few arguments for format in a debugging string (bug #726384) +%patch2 -p1 -b .debug-string + aclocal automake --add-missing autoconf @@ -91,9 +94,9 @@ autoconf popd %build -export LIB_CUPS=/usr/lib/cups # /usr/lib NOT libdir -export CUPS_BACKENDS=/usr/lib/cups/backend # /usr/lib NOT libdir -export CUPS_FILTERS=/usr/lib/cups/filter # /usr/lib NOT libdir +export LIB_CUPS=%{_cups_serverbin} +export CUPS_BACKENDS=%{_cups_serverbin}/backend +export CUPS_FILTERS=%{_cups_serverbin}/filter export CUPS_PPDS=%{_datadir}/cups/model pushd foomatic-filters-%{filtersver} @@ -107,8 +110,6 @@ make PREFIX=%{_prefix} CFLAGS="$RPM_OPT_FLAGS" popd %install -rm -rf $RPM_BUILD_ROOT - pushd foomatic-filters-%{filtersver} mkdir -p $RPM_BUILD_ROOT/%{perl_vendorlib} make DESTDIR=%buildroot PREFIX=%{_prefix} \ @@ -125,8 +126,8 @@ make DESTDIR=%buildroot PREFIX=%{_prefix} \ popd # Use relative, not absolute, symlink for CUPS filter and driver. -ln -sf ../../../bin/foomatic-rip %{buildroot}/usr/lib/cups/filter/foomatic-rip -ln -sf ../../../bin/foomatic-ppdfile %{buildroot}/usr/lib/cups/driver/foomatic +ln -sf ../../../bin/foomatic-rip %{buildroot}%{_cups_serverbin}/filter/foomatic-rip +ln -sf ../../../bin/foomatic-ppdfile %{buildroot}%{_cups_serverbin}/driver/foomatic mkdir -p $RPM_BUILD_ROOT%{_var}/cache/foomatic @@ -144,8 +145,6 @@ find $RPM_BUILD_ROOT -name .packlist | xargs rm -f /bin/rm -f /var/cache/foomatic/* exit 0 -%clean -rm -fr %buildroot $RPM_BUILD_DIR/%{name} %files %defattr(-,root,root) @@ -163,8 +162,8 @@ rm -fr %buildroot $RPM_BUILD_DIR/%{name} %{_bindir}/foomatic-searchprinter %{_sbindir}/* %{perl_vendorlib}/Foomatic -/usr/lib/cups/backend/beh -/usr/lib/cups/driver/* +%{_cups_serverbin}/backend/beh +%{_cups_serverbin}/driver/* %{_mandir}/man1/foomatic-combo-xml.1* %{_mandir}/man1/foomatic-compiledb.1* %{_mandir}/man1/foomatic-configure.1* @@ -181,10 +180,15 @@ rm -fr %buildroot $RPM_BUILD_DIR/%{name} %dir %{_sysconfdir}/foomatic %config(noreplace) %{_sysconfdir}/foomatic/filter.conf %{_bindir}/foomatic-rip -/usr/lib/cups/filter/foomatic-rip +%{_cups_serverbin}/filter/foomatic-rip %{_mandir}/man1/foomatic-rip.1* %changelog +* Mon Oct 24 2011 Jiri Popelka - 4.0.8-5 +- Use _cups_serverbin macro from cups-devel instead of hard-coded /usr/lib/cups. +- No need to define BuildRoot and clean it in clean and install section anymore. +- Add argument for format in a debugging string (bug #726384). + * Tue Aug 18 2011 Tim Waugh - 4.0.8-4 - Another fix for CVE-2011-2924 (bug #726426).