Projects
openEuler:24.03:SP1:Everything
cups
Sign Up
Log In
Username
Password
We truncated the diff of some files because they were too big. If you want to see the full diff for every file,
click here
.
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 5
View file
_service:tar_scm:cups.spec
Changed
@@ -3,7 +3,7 @@ Name: cups Epoch: 1 Version: 2.4.7 -Release: 5 +Release: 6 Summary: CUPS is the standards-based, open source printing system for linux operating systems. License: Apache-2.0 Url: https://openprinting.github.io/cups/ @@ -23,6 +23,7 @@ Patch8: cups-freebind.patch Patch9: cups-ipp-multifile.patch Patch10: cups-web-devices-timeout.patch +Patch11: cups-lspp.patch Patch6004: fix-httpAddrGetList-test-case-fail.patch Patch6005: backport-Fix-CVE-2024-35235.patch @@ -341,21 +342,6 @@ %dir %attr(1770,root,lp) %{_localstatedir}/spool/cups/tmp %dir %attr(0710,root,lp) %{_localstatedir}/spool/cups %dir %attr(0755,root,lp) %{_localstatedir}/log/cups -# client subpackage -%exclude %{_mandir}/man1/lp*.1.gz -%exclude %{_mandir}/man1/cancel-cups.1.gz -%exclude %{_mandir}/man8/lpc-cups.8.gz -# devel subpackage -%exclude %{_mandir}/man1/cups-config.1.gz -# ipptool subpackage -%exclude %{_mandir}/man1/ipptool.1.gz -%exclude %{_mandir}/man5/ipptoolfile.5.gz -# lpd subpackage -%exclude %{_mandir}/man8/cups-lpd.8.gz -# printerapp -%exclude %{_mandir}/man1/ippeveprinter.1.gz -%exclude %{_mandir}/man7/ippevepcl.7.gz -%exclude %{_mandir}/man7/ippeveps.7.gz %dir %attr(0755,root,lp) %{_rundir}/cups %dir %attr(0511,lp,sys) %{_rundir}/cups/certs %dir %attr(0755,root,lp) %{_sysconfdir}/cups @@ -384,9 +370,6 @@ %{_bindir}/cancel* %{_bindir}/lp* %{_sbindir}/lpc.cups -%{_mandir}/man1/cancel-cups.1.gz -%{_mandir}/man1/lp*.1.gz -%{_mandir}/man8/lpc-cups.8.gz %files libs %{license} LICENSE @@ -417,7 +400,6 @@ %files lpd %{cups_serverbin}/daemon/cups-lpd -%{_mandir}/man8/cups-lpd.8.gz %attr(0644, root, root)%{_unitdir}/cups-lpd.socket %attr(0644, root, root)%{_unitdir}/cups-lpd@.service @@ -426,21 +408,15 @@ %{_bindir}/ipptool %dir %{_datadir}/cups/ipptool %{_datadir}/cups/ipptool/* -%{_mandir}/man1/ipptool.1.gz -%{_mandir}/man5/ipptoolfile.5.gz %files printerapp %{_bindir}/ippeveprinter %dir %{cups_serverbin}/command %{cups_serverbin}/command/ippevepcl %{cups_serverbin}/command/ippeveps -%{_mandir}/man1/ippeveprinter.1.gz -%{_mandir}/man7/ippevepcl.7.gz -%{_mandir}/man7/ippeveps.7.gz %files help -%{_mandir}/man1578/* -%{_mandir}/man1/cups-config.1.gz +%{_mandir}/man?/* %doc README.md CREDITS.md CHANGES.md %doc %{_datadir}/%{name}/www/index.html %doc %{_datadir}/%{name}/www/help @@ -455,6 +431,10 @@ %doc %{_datadir}/%{name}/www/apple-touch-icon.png %changelog +* Sat Oct 12 2024 Funda Wang <fundawang@yeah.net> - 1:2.4.7-6 +- fix file conflicts regarding man pages +- add back lspp patch + * Tue Oct 8 2024 zhangpan <zhangpan103@h-partners.com> - 1:2.4.7-5 - fix CVE-2024-47175
View file
_service:tar_scm:cups-lspp.patch
Added
@@ -0,0 +1,2033 @@ +diff --git a/Makedefs.in b/Makedefs.in +index 9211338..8a1e0be 100644 +--- a/Makedefs.in ++++ b/Makedefs.in +@@ -162,7 +162,7 @@ ARFLAGS = @ARFLAGS@ + BACKLIBS = @BACKLIBS@ + BUILDDIRS = @BUILDDIRS@ + CFLAGS = @CPPFLAGS@ @CFLAGS@ +-COMMONLIBS = @LIBS@ ++COMMONLIBS = @LIBS@ @LIBAUDIT@ @LIBSELINUX@ + CXXFLAGS = @CPPFLAGS@ @CXXFLAGS@ + CXXLIBS = @CXXLIBS@ + DBUS_NOTIFIER = @DBUS_NOTIFIER@ +diff --git a/config-scripts/cups-lspp.m4 b/config-scripts/cups-lspp.m4 +new file mode 100644 +index 0000000..55bd1bb +--- /dev/null ++++ b/config-scripts/cups-lspp.m4 +@@ -0,0 +1,36 @@ ++dnl ++dnl LSPP code for the Common UNIX Printing System (CUPS). ++dnl ++dnl Copyright 2005-2006 by Hewlett-Packard Development Company, L.P. ++dnl ++dnl This program is free software; you can redistribute it and/or modify ++dnl it under the terms of the GNU General Public License as published by ++dnl the Free Software Foundation; version 2. ++dnl ++dnl This program is distributed in the hope that it will be useful, but ++dnl WITHOUT ANY WARRANTY; without even the implied warranty of ++dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++dnl General Public License for more details. ++dnl ++dnl You should have received a copy of the GNU General Public License ++dnl along with this program; if not, write to the Free Software Foundation, ++dnl Inc., 51 Franklin Street, Fifth Floor Boston, MA 02110-1301 USA ++dnl ++ ++dnl Are we trying to meet LSPP requirements ++AC_ARG_ENABLE(lspp, --enable-lspp turn on auditing and label support, default=no) ++ ++if test x"$enable_lspp" != xno; then ++ case "$(uname)" in ++ Linux) ++ AC_CHECK_LIB(audit,audit_log_user_message, LIBAUDIT="-laudit" AC_SUBST(LIBAUDIT)) ++ AC_CHECK_HEADER(libaudit.h) ++ AC_CHECK_LIB(selinux,getpeercon, LIBSELINUX="-lselinux" AC_SUBST(LIBSELINUX)) ++ AC_CHECK_HEADER(selinux/selinux.h) ++ AC_DEFINE(WITH_LSPP) ++ ;; ++ *) ++ # All others ++ ;; ++ esac ++fi +diff --git a/config.h.in b/config.h.in +index 6940b96..363780a 100644 +--- a/config.h.in ++++ b/config.h.in +@@ -684,6 +684,13 @@ static __inline int _cups_abs(int i) { return (i < 0 ? -i : i); } + #endif /* !HAVE_ABS && !abs */ + + ++/* ++ * Are we trying to meet LSPP requirements? ++ */ ++ ++#undef WITH_LSPP ++ ++ + /* + * Building as a snap (snapcraft.io)? + */ +diff --git a/configure.ac b/configure.ac +index 3b5dd73..0e61044 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -40,6 +40,8 @@ sinclude(config-scripts/cups-container.m4) + sinclude(config-scripts/cups-startup.m4) + sinclude(config-scripts/cups-defaults.m4) + ++sinclude(config-scripts/cups-lspp.m4) ++ + dnl See what languages are available and make sure we generate the localization + dnl files as needed... + INSTALL_LANGUAGES="" +diff --git a/filter/common.c b/filter/common.c +index 22217be..070662f 100644 +--- a/filter/common.c ++++ b/filter/common.c +@@ -12,6 +12,12 @@ + * Include necessary headers... + */ + ++#include "config.h" ++#ifdef WITH_LSPP ++#define _GNU_SOURCE ++#include <string.h> ++#endif /* WITH_LSPP */ ++ + #include "common.h" + #include <locale.h> + +@@ -294,6 +300,18 @@ WriteLabelProlog(const char *label, /* I - Page label */ + { + const char *classification; /* CLASSIFICATION environment variable */ + const char *ptr; /* Temporary string pointer */ ++#ifdef WITH_LSPP ++ int i, /* counter */ ++ n, /* counter */ ++ lines, /* number of lines needed */ ++ line_len, /* index into tmp_label */ ++ label_len, /* length of the label in characters */ ++ label_index, /* index into the label */ ++ longest, /* length of the longest line */ ++ longest_line, /* index to the longest line */ ++ max_width; /* maximum width in characters */ ++ char **wrapped_label; /* label with line breaks */ ++#endif /* WITH_LSPP */ + + + /* +@@ -316,6 +334,124 @@ WriteLabelProlog(const char *label, /* I - Page label */ + return; + } + ++#ifdef WITH_LSPP ++ if (strncmp(classification, "LSPP:", 5) == 0 && label == NULL) ++ { ++ /* ++ * Based on the 12pt fixed width font below determine the max_width ++ */ ++ max_width = width / 8; ++ longest_line = 0; ++ longest = 0; ++ classification += 5; // Skip the "LSPP:" ++ label_len = strlen(classification); ++ ++ if (label_len > max_width) ++ { ++ lines = 1 + (int)(label_len / max_width); ++ line_len = (int)(label_len / lines); ++ wrapped_label = malloc(sizeof(*wrapped_label) * lines); ++ label_index = i = n = 0; ++ while (classificationlabel_index) ++ { ++ if ((label_index + line_len) > label_len) ++ break; ++ switch (classificationlabel_index + line_len + i) ++ { ++ case ':': ++ case ',': ++ case '-': ++ i++; ++ wrapped_labeln++ = strndup(&classificationlabel_index, (line_len + i)); ++ label_index += line_len + i; ++ i = 0; ++ break; ++ default: ++ i++; ++ break; ++ } ++ if ((i + line_len) == max_width) ++ { ++ wrapped_labeln++ = strndup(&(classificationlabel_index), (line_len + i)); ++ label_index = label_index + line_len + i; ++ i = 0; ++ } ++ } ++ wrapped_labeln = strndup(&classificationlabel_index, label_len - label_index); ++ } ++ else ++ { ++ lines = 1; ++ wrapped_label = malloc(sizeof(*wrapped_label)); ++ wrapped_label0 = (char*)classification; ++ } ++ ++ for (n = 0; n < lines; n++ ) ++ { ++ printf("userdict/ESPp%c(", ('a' + n)); ++ for (ptr = wrapped_labeln, i = 0; *ptr; ptr ++, i++) ++ if (*ptr < 32 || *ptr > 126) ++ printf("\\%03o", *ptr); ++ else ++ { ++ if (*ptr == '(' || *ptr == ')' || *ptr == '\\') ++ putchar('\\'); ++ ++ printf("%c", *ptr); ++ } ++ if (i > longest) ++ { ++ longest = i; ++ longest_line = n; ++ } ++ printf(")put\n"); ++ } ++
View file
_service:tar_scm:cups.yaml
Changed
@@ -1,4 +1,4 @@ version_control: github src_repo: OpenPrinting/cups tag_prefix: ^v -seperator: . +separator: .
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.
浙ICP备2022010568号-2