From 9372a75075a37cc4b8811433f477f22c34b1c96c Mon Sep 17 00:00:00 2001 From: Jiri Popelka Date: Mon, 24 Oct 2011 13:18:04 +0200 Subject: [PATCH] _cups_serverbin macro + no BuildRoot defining/cleaning + bug #726384. --- foomatic-filters-debug-string.patch | 12 ++++++++++ foomatic.spec | 34 ++++++++++++++++------------- 2 files changed, 31 insertions(+), 15 deletions(-) create mode 100644 foomatic-filters-debug-string.patch 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 921dcec..58b81fc 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: 3%{?dist} +Release: 4%{?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 @@ -78,6 +78,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 @@ -90,9 +93,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} @@ -106,8 +109,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} \ @@ -124,8 +125,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 @@ -143,8 +144,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) @@ -162,8 +161,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* @@ -180,10 +179,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-4 +- 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-3 - Another fix for CVE-2011-2924 (bug #726426).