public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Pacho Ramos" <pacho@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: net-print/cups/files/, net-print/cups/
Date: Sun, 22 May 2022 12:34:27 +0000 (UTC)	[thread overview]
Message-ID: <1653222856.223305bc13eb0aad4824fb632d288f621a835616.pacho@gentoo> (raw)

commit:     223305bc13eb0aad4824fb632d288f621a835616
Author:     Pacho Ramos <pacho <AT> gentoo <DOT> org>
AuthorDate: Sun May 22 12:33:00 2022 +0000
Commit:     Pacho Ramos <pacho <AT> gentoo <DOT> org>
CommitDate: Sun May 22 12:34:16 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=223305bc

net-print/cups: add 2.4.1

Closes: https://bugs.gentoo.org/829920
Closes: https://bugs.gentoo.org/833577
Signed-off-by: Pacho Ramos <pacho <AT> gentoo.org>

 net-print/cups/Manifest                            |   1 +
 net-print/cups/cups-2.4.1.ebuild                   | 320 ++++++++++
 .../files/0001-Fix-some-web-interface-issues.patch | 667 +++++++++++++++++++++
 .../cups/files/0001-Footer-message-corrected.patch |  89 +++
 .../files/0001-cups-fix-uninit-value-jump.patch    |  18 +
 ...ps-tls-gnutls.c-Use-always-GNUTLS_SHUT_WR.patch |  55 ++
 net-print/cups/files/cups-2.4.1-nostrip.patch      |  11 +
 net-print/cups/files/cups-2.4.1-resolve-uri.patch  |  31 +
 net-print/cups/files/cups-2.4.1-user-AR.patch      |  21 +
 9 files changed, 1213 insertions(+)

diff --git a/net-print/cups/Manifest b/net-print/cups/Manifest
index f26affcecc5f..27494be3c394 100644
--- a/net-print/cups/Manifest
+++ b/net-print/cups/Manifest
@@ -1,2 +1,3 @@
 DIST cups-2.3.3-source.tar.gz 8140741 BLAKE2B 427e6ee3602aec33ac336d9b2c6c8eb270f2996371f0edd3d69e411b94b2e93fc58a0032ba9f6d048f2c58a1c6b48f742671b4011cd725b882adfcc06ed7fd8a SHA512 7d6f4a01794c5599cc71525778ea785fd17271c31ac146a56e8fc374a88f99e4035d018dae48e37e541455e9cc93b302e892b2e93ec558c1b4bfc46dad68c92d
 DIST cups-2.3.3op2-source.tar.gz 7993205 BLAKE2B 8c115b91ec185a4820578561aaf681238280b22b5c68b68c484ffbd0fa3c4ec1beb4d426e3f0e33192e32bce78aa8b7f50ed6799732a467fa9e75c34787057ee SHA512 db27dd6fb616bd7ad895b2bdf4ea7b010501358a50dc8f2e7e29558d1cfc088a572b1b35ac512654d3ed410c84df87dc34ca636533a4499117253915d4763117
+DIST cups-2.4.1-source.tar.gz 8113914 BLAKE2B 690d9d92f9bc84c2bb360699191cd67e1489ffc3ab219376dfc1a8795379950c95bf58c2033a0dbd2918262c5d104e21e31c4585cb35d229b0fac6cf4967bfd7 SHA512 74e83728fcc3baf709176442b26711250fd4d4ede1e81e35b02a5607711067e28cd5a05d5bc3337953f6b2236c5a429b13f3a7f1218a08a2d3c30a8c9b0d96fd

diff --git a/net-print/cups/cups-2.4.1.ebuild b/net-print/cups/cups-2.4.1.ebuild
new file mode 100644
index 000000000000..be3e3b15e512
--- /dev/null
+++ b/net-print/cups/cups-2.4.1.ebuild
@@ -0,0 +1,320 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit autotools linux-info xdg multilib-minimal optfeature pam toolchain-funcs
+
+MY_PV="${PV/_beta/b}"
+MY_PV="${MY_PV/_rc/rc}"
+MY_PV="${MY_PV/_p/op}"
+MY_P="${PN}-${MY_PV}"
+
+if [[ ${PV} == *9999 ]]; then
+	inherit git-r3
+#	EGIT_REPO_URI="https://github.com/apple/cups.git"
+	EGIT_REPO_URI="https://github.com/OpenPrinting/cups.git"
+	[[ ${PV} != 9999 ]] && EGIT_BRANCH=branch-${PV/.9999}
+else
+#	SRC_URI="https://github.com/apple/cups/releases/download/v${MY_PV}/${MY_P}-source.tar.gz"
+	SRC_URI="https://github.com/OpenPrinting/cups/releases/download/v${MY_PV}/cups-${MY_PV}-source.tar.gz"
+	if [[ "${PV}" != *_beta* ]] && [[ "${PV}" != *_rc* ]] ; then
+		KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+	fi
+fi
+
+DESCRIPTION="The Common Unix Printing System"
+HOMEPAGE="https://www.cups.org/ https://github.com/OpenPrinting/cups"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="acl dbus debug kerberos pam selinux +ssl static-libs systemd usb X xinetd zeroconf"
+
+# upstream includes an interactive test which is a nono for gentoo
+RESTRICT="test"
+
+BDEPEND="
+	acct-group/lp
+	acct-group/lpadmin
+	virtual/pkgconfig
+"
+DEPEND="
+	app-text/libpaper
+	sys-libs/zlib
+	acl? (
+		kernel_linux? (
+			sys-apps/acl
+			sys-apps/attr
+		)
+	)
+	dbus? ( >=sys-apps/dbus-1.6.18-r1[${MULTILIB_USEDEP}] )
+	kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
+	pam? ( sys-libs/pam )
+	!pam? ( virtual/libcrypt:= )
+	ssl? ( >=net-libs/gnutls-2.12.23-r6:0=[${MULTILIB_USEDEP}] )
+	systemd? ( sys-apps/systemd )
+	usb? ( virtual/libusb:1 )
+	X? ( x11-misc/xdg-utils )
+	xinetd? ( sys-apps/xinetd )
+	zeroconf? ( >=net-dns/avahi-0.6.31-r2[dbus,${MULTILIB_USEDEP}] )
+"
+RDEPEND="${DEPEND}
+	acct-group/lp
+	acct-group/lpadmin
+	selinux? ( sec-policy/selinux-cups )
+"
+PDEPEND=">=net-print/cups-filters-1.0.43"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-2.4.1-nostrip.patch"
+	"${FILESDIR}/${PN}-2.4.1-user-AR.patch"
+
+	# Upstream patches applied by Fedora
+	# https://github.com/OpenPrinting/cups/pull/329
+	"${FILESDIR}"/0001-cups-fix-uninit-value-jump.patch
+	# https://github.com/OpenPrinting/cups/issues/340
+	"${FILESDIR}"/${PN}-2.4.1-resolve-uri.patch
+	# https://src.fedoraproject.org/rpms/cups/blob/rawhide/f/cups.spec#_79
+	"${FILESDIR}"/0001-Footer-message-corrected.patch
+	"${FILESDIR}"/0001-Fix-some-web-interface-issues.patch
+	# https://bugzilla.redhat.com/show_bug.cgi?id=2073268
+	"${FILESDIR}"/0001-cups-tls-gnutls.c-Use-always-GNUTLS_SHUT_WR.patch
+)
+
+MULTILIB_CHOST_TOOLS=(
+	/usr/bin/cups-config
+)
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_setup() {
+	if use kernel_linux; then
+		linux-info_pkg_setup
+		if  ! linux_config_exists; then
+			ewarn "Can't check the linux kernel configuration."
+			ewarn "You might have some incompatible options enabled."
+		else
+			# recheck that we don't have usblp to collide with libusb; this should now work in most cases (bug 501122)
+			if use usb; then
+				if linux_chkconfig_present USB_PRINTER; then
+					elog "Your USB printers will be managed via libusb. In case you run into problems, "
+					elog "please try disabling USB_PRINTER support in your kernel or blacklisting the"
+					elog "usblp kernel module."
+					elog "Alternatively, just disable the usb useflag for cups (your printer will still work)."
+				fi
+			else
+				#here we should warn user that he should enable it so he can print
+				if ! linux_chkconfig_present USB_PRINTER; then
+					ewarn "If you plan to use USB printers you should enable the USB_PRINTER"
+					ewarn "support in your kernel."
+					ewarn "Please enable it:"
+					ewarn "    CONFIG_USB_PRINTER=y"
+					ewarn "in /usr/src/linux/.config or"
+					ewarn "    Device Drivers --->"
+					ewarn "        USB support  --->"
+					ewarn "            [*] USB Printer support"
+					ewarn "Alternatively, enable the usb useflag for cups and use the libusb code."
+				fi
+			fi
+		fi
+	fi
+}
+
+src_prepare() {
+	default
+
+	# Remove ".SILENT" rule for verbose output (bug 524338).
+	sed 's#^.SILENT:##g' -i Makedefs.in || die
+
+	# Fix install-sh, posix sh does not have 'function'.
+	sed 's#function gzipcp#gzipcp()#g' -i install-sh || die
+
+	# Do not add -Werror even for live ebuilds
+	sed '/WARNING_OPTIONS/s@-Werror@@' \
+		-i config-scripts/cups-compiler.m4 || die
+
+	AT_M4DIR=config-scripts eaclocal
+	eautoconf
+
+	# custom Makefiles
+	multilib_copy_sources
+}
+
+multilib_src_configure() {
+	export DSOFLAGS="${LDFLAGS}"
+
+	# explicitly specify compiler wrt bug 524340
+	#
+	# need to override KRB5CONFIG for proper flags
+	# https://github.com/apple/cups/issues/4423
+	local myeconfargs=(
+		CC="$(tc-getCC)"
+		CXX="$(tc-getCXX)"
+		KRB5CONFIG="${EPREFIX}"/usr/bin/${CHOST}-krb5-config
+		--libdir="${EPREFIX}"/usr/$(get_libdir)
+		--localstatedir="${EPREFIX}"/var
+		# Follow Fedora permission setting
+		--with-cupsd-file-perm=0755
+		--with-exe-file-perm=755
+		--with-log-file-perm=0640
+		# Used by Debian, also prevents printers from getting
+		# disabled and users not knowing how to re-enable them
+		--with-error-policy=retry-job
+		# Used in Debian and Fedora
+		--enable-sync-on-close
+		#
+		--with-rundir="${EPREFIX}"/run/cups
+		--with-cups-user=lp
+		--with-cups-group=lp
+		--with-docdir="${EPREFIX}"/usr/share/cups/html
+		--with-system-groups=lpadmin
+		--with-xinetd="${EPREFIX}"/etc/xinetd.d
+		$(multilib_native_use_enable acl)
+		$(use_enable dbus)
+		$(use_enable debug)
+		$(use_enable debug debug-guards)
+		$(use_enable debug debug-printfs)
+		$(use_enable kerberos gssapi)
+		$(multilib_native_use_enable pam)
+		$(use_enable static-libs static)
+		$(use_with ssl tls gnutls)
+		$(use_with systemd ondemand systemd)
+		$(multilib_native_use_enable usb libusb)
+		$(use_with zeroconf dnssd avahi)
+		$(multilib_is_native_abi && echo --enable-libpaper || echo --disable-libpaper)
+	)
+
+	# Handle empty LINGUAS properly, bug #771162
+	if [ -n "${LINGUAS+x}" ] ; then
+		myeconfargs+=(
+			--with-languages="${LINGUAS}"
+		)
+	fi
+
+	if tc-is-static-only; then
+		myeconfargs+=(
+			--disable-shared
+		)
+	fi
+
+	# install in /usr/libexec always, instead of using /usr/lib/cups, as that
+	# makes more sense when facing multilib support.
+	sed -i -e 's:CUPS_SERVERBIN="$exec_prefix/lib/cups":CUPS_SERVERBIN="$exec_prefix/libexec/cups":g' configure ||die
+
+	econf "${myeconfargs[@]}"
+
+	sed -i -e "s:SERVERBIN.*:SERVERBIN = \"\$\(BUILDROOT\)${EPREFIX}/usr/libexec/cups\":" Makedefs || die
+	sed -i -e "s:#define CUPS_SERVERBIN.*:#define CUPS_SERVERBIN \"${EPREFIX}/usr/libexec/cups\":" config.h || die
+	sed -i -e "s:cups_serverbin=.*:cups_serverbin=\"${EPREFIX}/usr/libexec/cups\":" cups-config || die
+
+	# additional path corrections needed for prefix, see bug 597728
+	sed \
+		-e "s:ICONDIR.*:ICONDIR = ${EPREFIX}/usr/share/icons:" \
+		-e "s:INITDIR.*:INITDIR = ${EPREFIX}/etc:" \
+		-e "s:DBUSDIR.*:DBUSDIR = ${EPREFIX}/etc/dbus-1:" \
+		-e "s:MENUDIR.*:MENUDIR = ${EPREFIX}/usr/share/applications:" \
+		-i Makedefs || die
+}
+
+multilib_src_compile() {
+	if multilib_is_native_abi; then
+		default
+	else
+		emake libs
+	fi
+}
+
+multilib_src_test() {
+	multilib_is_native_abi && default
+}
+
+multilib_src_install() {
+	if multilib_is_native_abi; then
+		emake BUILDROOT="${D}" install
+	else
+		emake BUILDROOT="${D}" install-libs install-headers
+		dobin cups-config
+	fi
+}
+
+multilib_src_install_all() {
+	dodoc {CHANGES,CREDITS,README}.md
+
+	# move the default config file to docs
+	dodoc "${ED}"/etc/cups/cupsd.conf.default
+	rm "${ED}"/etc/cups/cupsd.conf.default || die
+
+	# clean out cups init scripts
+	rm -r "${ED}"/etc/{init.d/cups,rc*} || die
+
+	# install our init script
+	local neededservices=(
+		$(usex zeroconf avahi-daemon '')
+		$(usex dbus dbus '')
+	)
+	[[ -n ${neededservices[@]} ]] && neededservices="need ${neededservices[@]}"
+	cp "${FILESDIR}"/cupsd.init.d-r4 "${T}"/cupsd || die
+	sed -i -e "s/@neededservices@/${neededservices}/" "${T}"/cupsd || die
+	doinitd "${T}"/cupsd
+
+	if use pam ; then
+		rm "${ED}"/etc/pam.d/${PN} || die
+		pamd_mimic_system cups auth account
+	fi
+
+	if use xinetd ; then
+		# correct path
+		sed -i -e "s:server = .*:server = /usr/libexec/cups/daemon/cups-lpd:" \
+			"${ED}"/etc/xinetd.d/cups-lpd || die
+		# it is safer to disable this by default, bug #137130
+		grep -w 'disable' "${ED}"/etc/xinetd.d/cups-lpd || \
+			{ sed -i -e "s:}:\tdisable = yes\n}:" "${ED}"/etc/xinetd.d/cups-lpd || die ; }
+		# write permission for file owner (root), bug #296221
+		fperms u+w /etc/xinetd.d/cups-lpd
+	else
+		# always configure with --with-xinetd= and clean up later,
+		# bug #525604
+		rm -r "${ED}"/etc/xinetd.d || die
+	fi
+
+	keepdir /etc/cups/{interfaces,ppd,ssl}
+
+	if ! use X ; then
+		rm -r "${ED}"/usr/share/applications || die
+	fi
+
+	# create /etc/cups/client.conf, bug #196967 and #266678
+	echo "ServerName ${EPREFIX}/run/cups/cups.sock" >> "${ED}"/etc/cups/client.conf
+
+	# the following file is now provided by cups-filters:
+	rm -r "${ED}"/usr/share/cups/banners || die
+
+	# the following are created by the init script
+	rm -r "${ED}"/var/cache || die
+	rm -r "${ED}"/run || die
+
+	keepdir /usr/libexec/cups/driver /usr/share/cups/{model,profiles} /var/log/cups /var/spool/cups/tmp
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+	local v
+
+	for v in ${REPLACING_VERSIONS}; do
+		if ! ver_test ${v} -ge 2.2.2-r2 ; then
+			ewarn "The cupsd init script switched to using pidfiles. Shutting down"
+			ewarn "cupsd will fail the next time. To fix this, please run once as root"
+			ewarn "   killall cupsd ; /etc/init.d/cupsd zap ; /etc/init.d/cupsd start"
+			break
+		fi
+	done
+
+	for v in ${REPLACING_VERSIONS}; do
+		elog
+		elog "For information about installing a printer and general cups setup"
+		elog "take a look at: https://wiki.gentoo.org/wiki/Printing"
+		break
+	done
+
+	optfeature_header "CUPS may need installing the following for certain features to work:"
+	use zeroconf && optfeature "local hostname resolution using a hostname.local naming scheme" sys-auth/nss-mdns
+}

diff --git a/net-print/cups/files/0001-Fix-some-web-interface-issues.patch b/net-print/cups/files/0001-Fix-some-web-interface-issues.patch
new file mode 100644
index 000000000000..d2a8ec19429d
--- /dev/null
+++ b/net-print/cups/files/0001-Fix-some-web-interface-issues.patch
@@ -0,0 +1,667 @@
+diff -up cups-2.4.1/doc/cups.css.css-issues cups-2.4.1/doc/cups.css
+--- cups-2.4.1/doc/cups.css.css-issues	2022-01-27 12:11:42.000000000 +0100
++++ cups-2.4.1/doc/cups.css	2022-03-08 13:55:16.075624812 +0100
+@@ -1,5 +1,5 @@
+ /* Layout CSS */
+-.header {
++.cups-header {
+   background: rgba(46,46,46,.9);
+   box-shadow: 0 2px 5px rgba(0,0,0,0.25);
+   color: white;
+@@ -11,7 +11,7 @@
+   top: 0;
+   width: 100%;
+ }
+-.header ul {
++.cups-header ul {
+   list-style: none;
+   margin: 0;
+   -webkit-margin-before: 0;
+@@ -20,37 +20,37 @@
+   -webkit-margin-end: 5px;
+   -webkit-padding-start: 0;
+ }
+-.header ul li {
++.cups-header ul li {
+   float: left;
+ }
+-.header a {
++.cups-header a {
+   display: block;
+   padding: 5px 10px !important;
+ }
+-.header a:link, .header a:visited {
++.cups-header a:link, .cups-header a:visited {
+   color: white !important;
+   text-decoration: none !important;
+ }
+-.header a:hover {
++.cups-header a:hover {
+   background: #cccccc !important;
+   color: #333333 !important;
+   text-decoration: none !important;
+ }
+-.header a.active {
++.cups-header a.active {
+   background: white !important;
+   box-shadow: rgba(0,0,0,0.1) 0 0 10px 0 inset;
+   color: black !important;
+   text-decoration: none !important;
+ }
+ 
+-.body {
++.cups-body {
+   padding: 40px 20px;
+ }
+-.row .body {
++.row .cups-body {
+   padding: 0;
+ }
+ 
+-.footer {
++.cups-footer {
+   background: rgba(46,46,46,.9);
+   bottom: 0;
+   box-shadow: 0 -2px 5px rgba(0,0,0,0.25);
+@@ -62,7 +62,7 @@
+   position: fixed;
+   width: 100%;
+ }
+-.footer a:link, footer a:hover, .footer a:visited {
++.cups-footer a:link, footer a:hover, .cups-footer a:visited {
+   color: white !important;
+   text-decoration: none !important;
+ }
+@@ -131,6 +131,7 @@ pre {
+ }
+ 
+ blockquote {
++  background: rgba(191,191,191,0.1);
+   border-left: solid 2px #777;
+   margin: 1em 0;
+   padding: 10px;
+@@ -207,7 +208,7 @@ table.page {
+   width: 100%;
+ }
+ 
+-td.body {
++td.cups-body {
+   height: 100%;
+   vertical-align: top;
+ }
+@@ -365,7 +366,7 @@ h1.title {
+   display: none;
+ }
+ 
+-h2.title, h3.title, .row .body h2, .row .body h3 {
++h2.title, h3.title, .row .cups-body h2, .row .cups-body h3 {
+   border-bottom: solid 2pt black;
+ }
+ 
+@@ -451,8 +452,8 @@ div.sidebar p.l2 {
+ }
+ 
+ table.inset {
+-  background: rgba(191,191,191,0.15);
+-  border: thin solid rgba(191,191,191,0.3);
++  background: #f4f4f4;
++  border: thin solid rgba(191,191,191,0.5);
+   margin-top: 1em;
+   padding: 0;
+   width: 100%;
+@@ -471,7 +472,7 @@ table.inset caption {
+ }
+ 
+ table.inset td {
+-  padding: 2px;
++  padding: 2px 5px;
+ }
+ 
+ dt {
+@@ -525,15 +526,15 @@ div.tab {
+ }
+ 
+ /* API documentation styles... */
+-div.body h1 {
++div.cups-body h1 {
+ }
+-div.body h2 {
++div.cups-body h2 {
+ }
+-div.body h3 {
++div.cups-body h3 {
+ }
+-div.body h4 {
++div.cups-body h4 {
+ }
+-div.body h5 {
++div.cups-body h5 {
+ }
+ div.contents {
+ }
+@@ -589,9 +590,14 @@ h1, h2, h3, h4, h5, h6 {
+ blockquote {
+   page-break-inside: avoid;
+ }
+-p code, li code, p.code, pre, ul.code li {
+-  background: rgba(127,127,127,0.1);
++p.code, pre, ul.code li {
+   border-left: thin dotted gray;
++  background: rgba(191,191,191,0.1);
++}
++p code, li code {
++  background: rgba(191,191,191,0.3);
++}
++p code, li code, p.code, pre, ul.code li {
+   font-family: monospace;
+   hyphens: manual;
+   margin: 18pt 0;
+@@ -644,19 +650,19 @@ ul.contents li ul.code, ul.contents li u
+     display: none;
+   }
+ 
+-  .header {
++  .cups-header {
+     margin: 0;
+     position: relative;
+   }
+-  .header ul li {
++  .cups-header ul li {
+     float: none;
+   }
+ 
+-  .body {
++  .cups-body {
+     padding: 0;
+   }
+ 
+-  .footer {
++  .cups-footer {
+     font-size: 10px;
+     height: auto;
+     position: relative;
+@@ -715,6 +721,12 @@ ul.contents li ul.code, ul.contents li u
+   hr {
+     color: #666;
+   }
++  table.inset {
++    background: #1d1d1d;
++  }
++  h2.title, h3.title, .row .cups-body h2, .row .cups-body h3 {
++    border-bottom: solid 2pt #ccc;
++  }
+   div.table table td, table.list th {
+     background: black;
+   }
+diff -up cups-2.4.1/doc/da/index.html.in.css-issues cups-2.4.1/doc/da/index.html.in
+--- cups-2.4.1/doc/da/index.html.in.css-issues	2022-01-27 12:11:42.000000000 +0100
++++ cups-2.4.1/doc/da/index.html.in	2022-03-08 13:55:16.075624812 +0100
+@@ -10,7 +10,7 @@
+     <title>Hjem - CUPS @CUPS_VERSION@</title>
+   </head>
+   <body>
+-    <div class="header">
++    <div class="cups-header">
+       <ul>
+ 	<li><a href="https://openprinting.github.io/cups/" target="_blank">OpenPrinting CUPS</a></li>
+ 	<li><a class="active" href="/">Hjem</a></li>
+@@ -21,7 +21,7 @@
+ 	<li><a href="/printers/">Printere</a></li>
+       </ul>
+     </div>
+-    <div class="body">
++    <div class="cups-body">
+       <div class="row">
+ 	<h1>CUPS @CUPS_VERSION@</h1>
+ 	<p>CUPS er det standardbaseret, open source-udskrivningssystem som er udviklet af <a class="jumbolink" href="https://openprinting.github.io/" target="_blank">OpenPrinting</a> til Linux® og andre UNIX<sup>&reg;</sup>-lignende styresystemer. CUPS uses <a href="https://www.pwg.org/ipp/everywhere.html" target="_blank">IPP Everywhere™</a> to support printing to local and network printers</p>
+@@ -47,6 +47,6 @@
+ 	</div>
+       </div>
+     </div>
+-    <div class="footer">Ophavsret &copy; 2021-2022 OpenPrinting. Alle rettigheder forbeholdt.</div>
++    <div class="cups-footer">Ophavsret &copy; 2021-2022 OpenPrinting. Alle rettigheder forbeholdt.</div>
+   </body>
+ </html>
+diff -up cups-2.4.1/doc/de/index.html.in.css-issues cups-2.4.1/doc/de/index.html.in
+--- cups-2.4.1/doc/de/index.html.in.css-issues	2022-01-27 12:11:42.000000000 +0100
++++ cups-2.4.1/doc/de/index.html.in	2022-03-08 13:55:16.075624812 +0100
+@@ -10,7 +10,7 @@
+     <title>Startseite - CUPS @CUPS_VERSION@</title>
+   </head>
+   <body>
+-    <div class="header">
++    <div class="cups-header">
+       <ul>
+ 	<li><a href="https://openprinting.github.io/cups/" target="_blank">OpenPrinting CUPS</a></li>
+ 	<li><a class="active" href="/">Startseite</a></li>
+@@ -21,7 +21,7 @@
+ 	<li><a href="/printers/">Drucker</a></li>
+       </ul>
+     </div>
+-    <div class="body">
++    <div class="cups-body">
+       <div class="row">
+ 	<h1>OpenPrinting CUPS @CUPS_VERSION@</h1>
+ 	<p>CUPS basiert auf Standards, Open Source Drucksystem entwickelt durch <a class="jumbolink" href="https://openprinting.github.io/" target="_blank">OpenPrinting</a> für Linux® und andere UNIX®-artige Betriebssysteme. CUPS benutzt <a href="https://www.pwg.org/ipp/everywhere.html" target="_blank">IPP Everywhere™</a> zur Unterstützung lokaler und Netzwerkdrucker.</p>
+@@ -47,6 +47,6 @@
+ 	</div>
+       </div>
+     </div>
+-    <div class="footer">Copyright &copy; 2021-2022 OpenPrinting. Alle Rechte vorbehalten.</div>
++    <div class="cups-footer">Copyright &copy; 2021-2022 OpenPrinting. Alle Rechte vorbehalten.</div>
+   </body>
+ </html>
+diff -up cups-2.4.1/doc/es/index.html.in.css-issues cups-2.4.1/doc/es/index.html.in
+--- cups-2.4.1/doc/es/index.html.in.css-issues	2022-01-27 12:11:42.000000000 +0100
++++ cups-2.4.1/doc/es/index.html.in	2022-03-08 13:55:16.075624812 +0100
+@@ -10,7 +10,7 @@
+     <title>Inicio - CUPS @CUPS_VERSION@</title>
+   </head>
+   <body>
+-    <div class="header">
++    <div class="cups-header">
+       <ul>
+ 	<li><a href="https://openprinting.github.io/cups/" target="_blank">OpenPrinting CUPS</a></li>
+ 	<li><a class="active" href="/">Inicio</a></li>
+@@ -21,7 +21,7 @@
+ 	<li><a href="/printers/">Impresoras</a></li>
+       </ul>
+     </div>
+-    <div class="body">
++    <div class="cups-body">
+       <div class="row">
+ 	<h1>CUPS @CUPS_VERSION@</h1>
+ 	<p>CUPS es el sistema de impresi&oacute;n de c&oacute;digo abierto basado en est&aacute;ndares desarrollado por <a class="jumbolink" href="https://openprinting.github.io/" target="_blank">OpenPrinting</a> para macOS<sup>&reg;</sup> y otros sistemas operativos tipo UNIX<sup>&reg;</sup>. CUPS uses <a href="https://www.pwg.org/ipp/everywhere.html" target="_blank">IPP Everywhere™</a> to support printing to local and network printers.</p>
+@@ -47,6 +47,6 @@
+ 	</div>
+       </div>
+     </div>
+-    <div class="footer">Derechos de autor &copy; 2021-2022 OpenPrinting. Todos los derechos reservados.</div>
++    <div class="cups-footer">Derechos de autor &copy; 2021-2022 OpenPrinting. Todos los derechos reservados.</div>
+   </body>
+ </html>
+diff -up cups-2.4.1/doc/fr/index.html.in.css-issues cups-2.4.1/doc/fr/index.html.in
+--- cups-2.4.1/doc/fr/index.html.in.css-issues	2022-01-27 12:11:42.000000000 +0100
++++ cups-2.4.1/doc/fr/index.html.in	2022-03-08 13:55:16.075624812 +0100
+@@ -10,7 +10,7 @@
+     <title>Home - CUPS @CUPS_VERSION@</title>
+   </head>
+   <body>
+-    <div class="header">
++    <div class="cups-header">
+       <ul>
+ 	<li><a href="https://openprinting.github.io/cups/" target="_blank">OpenPrinting CUPS</a></li>
+ 	<li><a class="active" href="/">Home</a></li>
+@@ -21,7 +21,7 @@
+ 	<li><a href="/printers/">Imprimantes</a></li>
+       </ul>
+     </div>
+-    <div class="body">
++    <div class="cups-body">
+       <div class="row">
+ 	<h1>OpenPrinting CUPS @CUPS_VERSION@</h1>
+ 	<p>Le système d'impression open source basé sur des normes, développé par <a class="jumbolink" href="https://openprinting.github.io/" target="_blank">OpenPrinting</a> for Linux® and other Unix®-like operating systems. CUPS uses <a href="https://www.pwg.org/ipp/everywhere.html" target="_blank">IPP Everywhere™</a> pour prendre en charge l'impression vers des imprimantes locales et de réseau.</p>
+@@ -47,6 +47,6 @@
+ 	</div>
+       </div>
+     </div>
+-    <div class="footer">Copyright &copy; 2021-2022 OpenPrinting. All rights reserved.</div>
++    <div class="cups-footer">Copyright &copy; 2021-2022 OpenPrinting. All rights reserved.</div>
+   </body>
+ </html>
+diff -up cups-2.4.1/doc/index.html.in.css-issues cups-2.4.1/doc/index.html.in
+--- cups-2.4.1/doc/index.html.in.css-issues	2022-01-27 12:11:42.000000000 +0100
++++ cups-2.4.1/doc/index.html.in	2022-03-08 13:55:16.075624812 +0100
+@@ -10,7 +10,7 @@
+     <title>Home - CUPS @CUPS_VERSION@</title>
+   </head>
+   <body>
+-    <div class="header">
++    <div class="cups-header">
+       <ul>
+ 	<li><a href="https://openprinting.github.io/cups/" target="_blank">OpenPrinting CUPS</a></li>
+ 	<li><a class="active" href="/">Home</a></li>
+@@ -21,7 +21,7 @@
+ 	<li><a href="/printers/">Printers</a></li>
+       </ul>
+     </div>
+-    <div class="body">
++    <div class="cups-body">
+       <div class="row">
+ 	<h1>OpenPrinting CUPS @CUPS_VERSION@</h1>
+ 	<p>The standards-based, open source printing system developed by <a class="jumbolink" href="https://openprinting.github.io/" target="_blank">OpenPrinting</a> for Linux® and other Unix®-like operating systems. CUPS uses <a href="https://www.pwg.org/ipp/everywhere.html" target="_blank">IPP Everywhere™</a> to support printing to local and network printers.</p>
+@@ -47,6 +47,6 @@
+ 	</div>
+       </div>
+     </div>
+-    <div class="footer">Copyright &copy; 2021-2022 OpenPrinting. All rights reserved.</div>
++    <div class="cups-footer">Copyright &copy; 2021-2022 OpenPrinting. All rights reserved.</div>
+   </body>
+ </html>
+diff -up cups-2.4.1/doc/ja/index.html.in.css-issues cups-2.4.1/doc/ja/index.html.in
+--- cups-2.4.1/doc/ja/index.html.in.css-issues	2022-01-27 12:11:42.000000000 +0100
++++ cups-2.4.1/doc/ja/index.html.in	2022-03-08 13:55:16.075624812 +0100
+@@ -10,7 +10,7 @@
+     <title>ホーム - CUPS @CUPS_VERSION@</title>
+   </head>
+   <body>
+-    <div class="header">
++    <div class="cups-header">
+       <ul>
+ 	<li><a href="https://openprinting.github.io/cups/" target="_blank">OpenPrinting CUPS</a></li>
+ 	<li><a class="active" href="/">ホーム</a></li>
+@@ -21,7 +21,7 @@
+ 	<li><a href="/printers/">プリンター</a></li>
+       </ul>
+     </div>
+-    <div class="body">
++    <div class="cups-body">
+       <div class="row">
+ 	<h1>CUPS @CUPS_VERSION@</h1>
+ 	<p>CUPS は、macOS<sup>&reg;</sup> およびその他の UNIX <SUP>&reg;</sup> 系 OS のために、<a href="http://www.apple.com/">Apple Inc.</a> によって開発された標準ベースのオープンソース印刷システムです。</p>
+@@ -47,6 +47,6 @@
+ 	</div>
+       </div>
+     </div>
+-    <div class="footer">Copyright &copy; 2021-2022 OpenPrinting. All rights reserved.</div>
++    <div class="cups-footer">Copyright &copy; 2021-2022 OpenPrinting. All rights reserved.</div>
+   </body>
+ </html>
+diff -up cups-2.4.1/doc/pt_BR/index.html.in.css-issues cups-2.4.1/doc/pt_BR/index.html.in
+--- cups-2.4.1/doc/pt_BR/index.html.in.css-issues	2022-01-27 12:11:42.000000000 +0100
++++ cups-2.4.1/doc/pt_BR/index.html.in	2022-03-08 13:55:16.075624812 +0100
+@@ -10,7 +10,7 @@
+     <title>In&iacute;cio - CUPS @CUPS_VERSION@</title>
+   </head>
+   <body>
+-    <div class="header">
++    <div class="cups-header">
+       <ul>
+ 	<li><a href="https://openprinting.github.io/cups/" target="_blank">OpenPrinting CUPS</a></li>
+ 	<li><a class="active" href="/">In&iacute;cio</a></li>
+@@ -21,7 +21,7 @@
+ 	<li><a href="/printers/">Impressoras</a></li>
+       </ul>
+     </div>
+-    <div class="body">
++    <div class="cups-body">
+       <div class="row">
+ 	<h1>CUPS @CUPS_VERSION@</h1>
+ 	<p>CUPS &eacute; o sistema de impress&atilde;o baseado em padr&otilde;es e de c&oacute;digo aberto desenvolvido pela <a class="jumbolink" href="https://openprinting.github.io/" target="_blank">OpenPrinting</a> para Linux® e outros sistemas operacionais similares ao UNIX<sup>&reg;</sup>. CUPS uses <a href="https://www.pwg.org/ipp/everywhere.html" target="_blank">IPP Everywhere™</a> to support printing to local and network printers.</p>
+@@ -47,6 +47,6 @@
+ 	</div>
+       </div>
+     </div>
+-    <div class="footer">Copyright &copy; 2021-2022 OpenPrinting. Todos os direitos reservados.</div>
++    <div class="cups-footer">Copyright &copy; 2021-2022 OpenPrinting. Todos os direitos reservados.</div>
+   </body>
+ </html>
+diff -up cups-2.4.1/doc/ru/index.html.in.css-issues cups-2.4.1/doc/ru/index.html.in
+--- cups-2.4.1/doc/ru/index.html.in.css-issues	2022-01-27 12:11:42.000000000 +0100
++++ cups-2.4.1/doc/ru/index.html.in	2022-03-08 13:55:16.075624812 +0100
+@@ -10,7 +10,7 @@
+ 	<title>Home - CUPS @CUPS_VERSION@</title>
+   </head>
+   <body>
+-    <div class="header">
++    <div class="cups-header">
+       <ul>
+ 	<li><a href="https://openprinting.github.io/cups/" target="_blank">OpenPrinting CUPS</a></li>
+ 	<li><a class="active" href="/">Начало</a></li>
+@@ -21,7 +21,7 @@
+ 	<li><a href="/printers/">Принтеры</a></li>
+       </ul>
+     </div>
+-    <div class="body">
++    <div class="cups-body">
+       <div class="row">
+ 	<h1>OpenPrinting CUPS @CUPS_VERSION@</h1>
+ 	<P>CUPS — поддерживающая большинство стандартов, свободная подсистема печати, разрабатываемая компанией <a class="jumbolink" href="https://openprinting.github.io/" target="_blank">OpenPrinting</a> для операционной системы Linux® и других UNIX<SUP>&reg;</SUP>-подобных операционных систем. CUPS uses <a href="https://www.pwg.org/ipp/everywhere.html" target="_blank">IPP Everywhere™</a> to support printing to local and network printers</P>
+@@ -47,6 +47,6 @@
+ </div>
+       </div>
+     </div>
+-    <div class="footer"> Авторские права на CUPS принадлежат (2021) компании OpenPrinting Все права защищены.</div>
++    <div class="cups-footer">Copyright &copy; 2021-2022 OpenPrinting. All Rights Reserved.</div>
+   </body>
+ </html>
+diff -up cups-2.4.1/templates/da/header.tmpl.in.css-issues cups-2.4.1/templates/da/header.tmpl.in
+--- cups-2.4.1/templates/da/header.tmpl.in.css-issues	2022-01-27 12:11:42.000000000 +0100
++++ cups-2.4.1/templates/da/header.tmpl.in	2022-03-08 13:55:16.075624812 +0100
+@@ -27,7 +27,7 @@
+     <title>{title} - CUPS @CUPS_VERSION@</title>
+   </head>
+   <body onload="check_cookies();">
+-    <div class="header">
++    <div class="cups-header">
+       <ul>
+ 	<li><a href="https://openprinting.github.io/cups/" target="_blank">OpenPrinting CUPS</a></li>
+ 	<li><a href="/">Hjem</a></li>
+@@ -38,6 +38,6 @@
+ 	<li><a {SECTION=printers?class="active" :}href="/printers/">Printere</a></li>
+       </ul>
+     </div>
+-    <div class="body">
++    <div class="cups-body">
+       <div class="row">
+ 	<h1>{title}</h1>
+diff -up cups-2.4.1/templates/da/trailer.tmpl.css-issues cups-2.4.1/templates/da/trailer.tmpl
+--- cups-2.4.1/templates/da/trailer.tmpl.css-issues	2022-03-08 13:55:16.076624818 +0100
++++ cups-2.4.1/templates/da/trailer.tmpl	2022-03-08 13:56:03.419892000 +0100
+@@ -1,5 +1,5 @@
+       </div>
+     </div>
+-    <div class="footer">Ophavsret &copy; 2021-2022 OpenPrinting. Alle rettigheder forbeholdt.</div>
++    <div class="cups-footer">Ophavsret &copy; 2021-2022 OpenPrinting. Alle rettigheder forbeholdt.</div>
+   </body>
+ </html>
+diff -up cups-2.4.1/templates/de/header.tmpl.in.css-issues cups-2.4.1/templates/de/header.tmpl.in
+--- cups-2.4.1/templates/de/header.tmpl.in.css-issues	2022-01-27 12:11:42.000000000 +0100
++++ cups-2.4.1/templates/de/header.tmpl.in	2022-03-08 13:55:16.076624818 +0100
+@@ -27,7 +27,7 @@
+     <title>{title} - CUPS @CUPS_VERSION@</title>
+   </head>
+   <body onload="check_cookies();">
+-    <div class="header">
++    <div class="cups-header">
+       <ul>
+ 	<li><a href="https://openprinting.github.io/cups/" target="_blank">OpenPrinting CUPS</a></li>
+ 	<li><a href="/">Startseite</a></li>
+@@ -38,6 +38,6 @@
+ 	<li><a {SECTION=printers?class="active" :}href="/printers/">Drucker</a></li>
+       </ul>
+     </div>
+-    <div class="body">
++    <div class="cups-body">
+       <div class="row">
+ 	<h1>{title}</h1>
+diff -up cups-2.4.1/templates/de/trailer.tmpl.css-issues cups-2.4.1/templates/de/trailer.tmpl
+--- cups-2.4.1/templates/de/trailer.tmpl.css-issues	2022-03-08 13:55:16.076624818 +0100
++++ cups-2.4.1/templates/de/trailer.tmpl	2022-03-08 13:56:14.892956747 +0100
+@@ -1,5 +1,5 @@
+       </div>
+     </div>
+-    <div class="footer">Copyright &copy; 2021-2022 OpenPrinting. Alle Rechte vorbehalten.</div>
++    <div class="cups-footer">Copyright &copy; 2021-2022 OpenPrinting. Alle Rechte vorbehalten.</div>
+   </body>
+ </html>
+diff -up cups-2.4.1/templates/es/header.tmpl.in.css-issues cups-2.4.1/templates/es/header.tmpl.in
+--- cups-2.4.1/templates/es/header.tmpl.in.css-issues	2022-01-27 12:11:42.000000000 +0100
++++ cups-2.4.1/templates/es/header.tmpl.in	2022-03-08 13:55:16.076624818 +0100
+@@ -27,7 +27,7 @@
+     <title>{title} - CUPS @CUPS_VERSION@</title>
+   </head>
+   <body onload="check_cookies();">
+-    <div class="header">
++    <div class="cups-header">
+       <ul>
+ 	<li><a href="https://openprinting.github.io/cups/" target="_blank">OpenPrinting CUPS</a></li>
+ 	<li><a href="/">Inicio</a></li>
+@@ -38,6 +38,6 @@
+ 	<li><a {SECTION=printers?class="active" :}href="/printers/">Impresoras</a></li>
+       </ul>
+     </div>
+-    <div class="body">
++    <div class="cups-body">
+       <div class="row">
+ 	<h1>{title}</h1>
+diff -up cups-2.4.1/templates/es/trailer.tmpl.css-issues cups-2.4.1/templates/es/trailer.tmpl
+--- cups-2.4.1/templates/es/trailer.tmpl.css-issues	2022-03-08 13:55:16.076624818 +0100
++++ cups-2.4.1/templates/es/trailer.tmpl	2022-03-08 13:56:29.420038731 +0100
+@@ -1,5 +1,5 @@
+       </div>
+     </div>
+-    <div class="footer">Derechos de autor &copy; 2021-2022 OpenPrinting. Todos los derechos reservados.</div>
++    <div class="cups-footer">Derechos de autor &copy; 2021-2022 OpenPrinting. Todos los derechos reservados.</div>
+   </body>
+ </html>
+diff -up cups-2.4.1/templates/fr/header.tmpl.in.css-issues cups-2.4.1/templates/fr/header.tmpl.in
+--- cups-2.4.1/templates/fr/header.tmpl.in.css-issues	2022-01-27 12:11:42.000000000 +0100
++++ cups-2.4.1/templates/fr/header.tmpl.in	2022-03-08 13:55:16.076624818 +0100
+@@ -27,7 +27,7 @@
+     <title>{title} - CUPS @CUPS_VERSION@</title>
+   </head>
+   <body onload="check_cookies();">
+-    <div class="header">
++    <div class="cups-header">
+       <ul>
+ 	<li><a href="https://openprinting.github.io/cups/" target="_blank">OpenPrinting CUPS</a></li>
+ 	<li><a href="/">Home</a></li>
+@@ -38,6 +38,6 @@
+ 	<li><a {SECTION=printers?class="active" :}href="/printers/">Imprimantes</a></li>
+       </ul>
+     </div>
+-    <div class="body">
++    <div class="cups-body">
+       <div class="row">
+ 	<h1>{title}</h1>
+diff -up cups-2.4.1/templates/fr/trailer.tmpl.css-issues cups-2.4.1/templates/fr/trailer.tmpl
+--- cups-2.4.1/templates/fr/trailer.tmpl.css-issues	2022-03-08 13:55:16.076624818 +0100
++++ cups-2.4.1/templates/fr/trailer.tmpl	2022-03-08 13:56:40.341100363 +0100
+@@ -1,5 +1,5 @@
+       </div>
+     </div>
+-    <div class="footer">Copyright &copy; 2021-2022 OpenPrinting. Tous droits r&eacute;serv&eacute;s.</div>
++    <div class="cups-footer">Copyright &copy; 2021-2022 OpenPrinting. Tous droits r&eacute;serv&eacute;s.</div>
+   </body>
+ </html>
+diff -up cups-2.4.1/templates/header.tmpl.in.css-issues cups-2.4.1/templates/header.tmpl.in
+--- cups-2.4.1/templates/header.tmpl.in.css-issues	2022-01-27 12:11:42.000000000 +0100
++++ cups-2.4.1/templates/header.tmpl.in	2022-03-08 13:55:16.076624818 +0100
+@@ -27,7 +27,7 @@
+     <title>{title} - CUPS @CUPS_VERSION@</title>
+   </head>
+   <body onload="check_cookies();">
+-    <div class="header">
++    <div class="cups-header">
+       <ul>
+ 	<li><a href="https://openprinting.github.io/cups/" target="_blank">OpenPrinting CUPS</a></li>
+ 	<li><a href="/">Home</a></li>
+@@ -38,6 +38,6 @@
+ 	<li><a {SECTION=printers?class="active" :}href="/printers/">Printers</a></li>
+       </ul>
+     </div>
+-    <div class="body">
++    <div class="cups-body">
+       <div class="row">
+ 	<h1>{title}</h1>
+diff -up cups-2.4.1/templates/ja/header.tmpl.in.css-issues cups-2.4.1/templates/ja/header.tmpl.in
+--- cups-2.4.1/templates/ja/header.tmpl.in.css-issues	2022-01-27 12:11:42.000000000 +0100
++++ cups-2.4.1/templates/ja/header.tmpl.in	2022-03-08 13:55:16.076624818 +0100
+@@ -19,7 +19,7 @@
+     <title>{title} - CUPS @CUPS_VERSION@</title>
+   </head>
+   <body onload="check_cookies();">
+-    <div class="header">
++    <div class="cups-header">
+       <ul>
+ 	<li><a href="https://openprinting.github.io/cups/" target="_blank">OpenPrinting CUPS</a></li>
+ 	<li><a href="/">ホーム</a></li>
+@@ -30,6 +30,6 @@
+ 	<li><a {SECTION=printers?class="active" :}href="/printers/">プリンター</a></li>
+       </ul>
+     </div>
+-    <div class="body">
++    <div class="cups-body">
+       <div class="row">
+ 	<h1>{title}</h1>
+diff -up cups-2.4.1/templates/ja/trailer.tmpl.css-issues cups-2.4.1/templates/ja/trailer.tmpl
+--- cups-2.4.1/templates/ja/trailer.tmpl.css-issues	2022-03-08 13:55:16.077624823 +0100
++++ cups-2.4.1/templates/ja/trailer.tmpl	2022-03-08 13:56:55.101183659 +0100
+@@ -1,5 +1,5 @@
+       </div>
+     </div>
+-    <div class="footer">Copyright &copy; 2021-2022 OpenPrinting. All rights reserved.</div>
++    <div class="cups-footer">Copyright &copy; 2021-2022 OpenPrinting. All rights reserved.</div>
+   </body>
+ </html>
+diff -up cups-2.4.1/templates/pt_BR/header.tmpl.in.css-issues cups-2.4.1/templates/pt_BR/header.tmpl.in
+--- cups-2.4.1/templates/pt_BR/header.tmpl.in.css-issues	2022-01-27 12:11:42.000000000 +0100
++++ cups-2.4.1/templates/pt_BR/header.tmpl.in	2022-03-08 13:55:16.077624823 +0100
+@@ -27,7 +27,7 @@
+     <title>{title} - CUPS @CUPS_VERSION@</title>
+   </head>
+   <body onload="check_cookies();">
+-    <div class="header">
++    <div class="cups-header">
+       <ul>
+ 	<li><a href="https://openprinting.github.io/cups/" target="_blank">OpenPrinting CUPS</a></li>
+ 	<li><a href="/">In&iacute;cio</a></li>
+@@ -38,6 +38,6 @@
+ 	<li><a {SECTION=printers?class="active" :}href="/printers/">Impressoras</a></li>
+       </ul>
+     </div>
+-    <div class="body">
++    <div class="cups-body">
+       <div class="row">
+ 	<h1>{title}</h1>
+diff -up cups-2.4.1/templates/pt_BR/trailer.tmpl.css-issues cups-2.4.1/templates/pt_BR/trailer.tmpl
+--- cups-2.4.1/templates/pt_BR/trailer.tmpl.css-issues	2022-03-08 13:55:16.077624823 +0100
++++ cups-2.4.1/templates/pt_BR/trailer.tmpl	2022-03-08 13:57:11.349275354 +0100
+@@ -1,5 +1,5 @@
+       </div>
+     </div>
+-    <div class="footer">Copyright &copy; 2021-2022 OpenPrinting. Todos os direitos reservados.</div>
++    <div class="cups-footer">Copyright &copy; 2021-2022 OpenPrinting. Todos os direitos reservados.</div>
+   </body>
+ </html>
+diff -up cups-2.4.1/templates/ru/header.tmpl.in.css-issues cups-2.4.1/templates/ru/header.tmpl.in
+--- cups-2.4.1/templates/ru/header.tmpl.in.css-issues	2022-01-27 12:11:42.000000000 +0100
++++ cups-2.4.1/templates/ru/header.tmpl.in	2022-03-08 13:55:16.077624823 +0100
+@@ -27,7 +27,7 @@
+     <title>{title} - CUPS @CUPS_VERSION@</title>
+   </head>
+   <body onload="check_cookies();">
+-    <div class="header">
++    <div class="cups-header">
+       <ul>
+ 	<li><a href="https://openprinting.github.io/cups/" target="_blank">OpenPrinting CUPS</a></li>
+ 	<li><a href="/">Начало</a></li>
+@@ -38,6 +38,6 @@
+ 	<li><a {SECTION=printers?class="active" :}href="/printers/">Принтеры</a></li>
+       </ul>
+     </div>
+-    <div class="body">
++    <div class="cups-body">
+       <div class="row">
+ 	<h1>{title}</h1>
+diff -up cups-2.4.1/templates/ru/trailer.tmpl.css-issues cups-2.4.1/templates/ru/trailer.tmpl
+--- cups-2.4.1/templates/ru/trailer.tmpl.css-issues	2022-03-08 13:55:16.077624823 +0100
++++ cups-2.4.1/templates/ru/trailer.tmpl	2022-03-08 13:57:25.262353870 +0100
+@@ -1,5 +1,5 @@
+       </div>
+     </div>
+-    <div class="footer">Copyright &copy; 2021-2022 OpenPrinting. Все права защищены.</div>
++    <div class="cups-footer">Copyright &copy; 2021-2022 OpenPrinting. Все права защищены.</div>
+   </body>
+ </html>
+diff -up cups-2.4.1/templates/trailer.tmpl.css-issues cups-2.4.1/templates/trailer.tmpl
+--- cups-2.4.1/templates/trailer.tmpl.css-issues	2022-03-08 13:55:16.073624801 +0100
++++ cups-2.4.1/templates/trailer.tmpl	2022-03-08 13:55:16.077624823 +0100
+@@ -1,5 +1,5 @@
+       </div>
+     </div>
+-    <div class="footer">Copyright &copy; 2021-2022 OpenPrinting. All rights reserved.</div>
++    <div class="cups-footer">Copyright &copy; 2021-2022 OpenPrinting. All rights reserved.</div>
+   </body>
+ </html>

diff --git a/net-print/cups/files/0001-Footer-message-corrected.patch b/net-print/cups/files/0001-Footer-message-corrected.patch
new file mode 100644
index 000000000000..b2a2074c70d1
--- /dev/null
+++ b/net-print/cups/files/0001-Footer-message-corrected.patch
@@ -0,0 +1,89 @@
+diff --git a/templates/da/trailer.tmpl b/templates/da/trailer.tmpl
+index aede375..d448d7e 100644
+--- a/templates/da/trailer.tmpl
++++ b/templates/da/trailer.tmpl
+@@ -1,5 +1,5 @@
+       </div>
+     </div>
+-    <div class="footer">CUPS og CUPS-logoet er varemærker som tilhører <a href="http://www.apple.com">Apple Inc.</a> Ophavsret &copy; 2007-2019 Apple Inc. Alle rettigheder forbeholdt.</div>
++    <div class="footer">Ophavsret &copy; 2021-2022 OpenPrinting. Alle rettigheder forbeholdt.</div>
+   </body>
+ </html>
+diff --git a/templates/de/trailer.tmpl b/templates/de/trailer.tmpl
+index c1f5d38..cf3caca 100644
+--- a/templates/de/trailer.tmpl
++++ b/templates/de/trailer.tmpl
+@@ -1,5 +1,5 @@
+       </div>
+     </div>
+-    <div class="footer">CUPS und das CUPS-Logo sind Warenzeichen der <a href="https://www.apple.com/">Apple Inc.</a> Copyright &copy; 2007-2019 Apple Inc. Alle Rechte vorbehalten.</div>
++    <div class="footer">Copyright &copy; 2021-2022 OpenPrinting. Alle Rechte vorbehalten.</div>
+   </body>
+ </html>
+diff --git a/templates/es/trailer.tmpl b/templates/es/trailer.tmpl
+index c1cb58f..9b9047e 100644
+--- a/templates/es/trailer.tmpl
++++ b/templates/es/trailer.tmpl
+@@ -1,5 +1,5 @@
+       </div>
+     </div>
+-    <div class="footer">CUPS y el logo de CUPS son marcas registradas de <a href="http://www.apple.com">Apple Inc.</a> Derechos de autor &copy; 2007-2019 Apple Inc. Todos los derechos reservados.</div>
++    <div class="footer">Derechos de autor &copy; 2021-2022 OpenPrinting. Todos los derechos reservados.</div>
+   </body>
+ </html>
+diff --git a/templates/fr/trailer.tmpl b/templates/fr/trailer.tmpl
+index 6e9b8b1..9628176 100644
+--- a/templates/fr/trailer.tmpl
++++ b/templates/fr/trailer.tmpl
+@@ -1,5 +1,5 @@
+       </div>
+     </div>
+-    <div class="footer">CUPS et le logo CUPS sont des marques d&eacute;pos&eacute;es de <a href="http://www.apple.com">Apple Inc.</a> CUPS est sous copyright 2007-2019 Apple Inc. Tous droits r&eacute;serv&eacute;s.</div>
++    <div class="footer">Copyright &copy; 2021-2022 OpenPrinting. Tous droits r&eacute;serv&eacute;s.</div>
+   </body>
+ </html>
+diff --git a/templates/ja/trailer.tmpl b/templates/ja/trailer.tmpl
+index a4f86b1..240c56b 100644
+--- a/templates/ja/trailer.tmpl
++++ b/templates/ja/trailer.tmpl
+@@ -1,5 +1,5 @@
+       </div>
+     </div>
+-    <div class="footer">CUPS and the CUPS logo are trademarks of <a href="http://www.apple.com">Apple Inc.</a> Copyright &copy; 2007-2019 Apple Inc. All rights reserved.</div>
++    <div class="footer">Copyright &copy; 2021-2022 OpenPrinting. All rights reserved.</div>
+   </body>
+ </html>
+diff --git a/templates/pt_BR/trailer.tmpl b/templates/pt_BR/trailer.tmpl
+index 673a555..774bc1d 100644
+--- a/templates/pt_BR/trailer.tmpl
++++ b/templates/pt_BR/trailer.tmpl
+@@ -1,5 +1,5 @@
+       </div>
+     </div>
+-    <div class="footer">CUPS e sua logo s&atilde;o marcas registradas da <a href="http://www.apple.com">Apple Inc.</a> Copyright &copy; 2007-2019 Apple Inc. Todos os direitos reservados.</div>
++    <div class="footer">Copyright &copy; 2021-2022 OpenPrinting. Todos os direitos reservados.</div>
+   </body>
+ </html>
+diff --git a/templates/ru/trailer.tmpl b/templates/ru/trailer.tmpl
+index 260d0e9..c6ec6e4 100644
+--- a/templates/ru/trailer.tmpl
++++ b/templates/ru/trailer.tmpl
+@@ -1,6 +1,5 @@
+       </div>
+     </div>
+-    <div class="footer">CUPS, а так же логотип CUPS являются зарегистрированными торговыми марками
+-<A HREF="http://www.apple.com">Apple Inc.</A> Авторские права на CUPS принадлежат (2007-2019) компании Apple Inc. Все права защищены.</div>
++    <div class="footer">Copyright &copy; 2021-2022 OpenPrinting. Все права защищены.</div>
+   </body>
+ </html>
+diff --git a/templates/trailer.tmpl b/templates/trailer.tmpl
+index a4f86b1..240c56b 100644
+--- a/templates/trailer.tmpl
++++ b/templates/trailer.tmpl
+@@ -1,5 +1,5 @@
+       </div>
+     </div>
+-    <div class="footer">CUPS and the CUPS logo are trademarks of <a href="http://www.apple.com">Apple Inc.</a> Copyright &copy; 2007-2019 Apple Inc. All rights reserved.</div>
++    <div class="footer">Copyright &copy; 2021-2022 OpenPrinting. All rights reserved.</div>
+   </body>
+ </html>

diff --git a/net-print/cups/files/0001-cups-fix-uninit-value-jump.patch b/net-print/cups/files/0001-cups-fix-uninit-value-jump.patch
new file mode 100644
index 000000000000..79e462e1547d
--- /dev/null
+++ b/net-print/cups/files/0001-cups-fix-uninit-value-jump.patch
@@ -0,0 +1,18 @@
+diff --git a/cups/ppd.c b/cups/ppd.c
+index 525df3592..54368ac4c 100644
+--- a/cups/ppd.c
++++ b/cups/ppd.c
+@@ -3430,12 +3430,12 @@ ppd_update_filters(ppd_file_t     *ppd,	/* I - PPD file */
+ 		srctype[256],
+ 		dstsuper[16],		/* Destination MIME media type */
+ 		dsttype[256],
+-		program[1024],		/* Command to run */
+ 		*ptr,			/* Pointer into command to run */
+ 		buffer[1024],		/* Re-written cupsFilter value */
+ 		**filter;		/* Current filter */
+   int		cost;			/* Cost of filter */
+ 
++  char		program[1024] = { 0 };	/* Command to run */
+ 
+   DEBUG_printf(("4ppd_update_filters(ppd=%p, cg=%p)", ppd, pg));
+ 

diff --git a/net-print/cups/files/0001-cups-tls-gnutls.c-Use-always-GNUTLS_SHUT_WR.patch b/net-print/cups/files/0001-cups-tls-gnutls.c-Use-always-GNUTLS_SHUT_WR.patch
new file mode 100644
index 000000000000..67e2edcfed67
--- /dev/null
+++ b/net-print/cups/files/0001-cups-tls-gnutls.c-Use-always-GNUTLS_SHUT_WR.patch
@@ -0,0 +1,55 @@
+From bdb1ca45454d90410031c4c2054005a995f76180 Mon Sep 17 00:00:00 2001
+From: Zdenek Dohnal <zdohnal@redhat.com>
+Date: Wed, 6 Apr 2022 15:04:45 +0200
+Subject: [PATCH] cups/tls-gnutls.c: Use always GNUTLS_SHUT_WR
+
+The current mode for `gnutls_bye()` in client use cases strictly
+follows TLS v1.2 standard, which in this particular part says:
+
+```
+Unless some other fatal alert has been transmitted, each party is
+required to send a close_notify alert before closing the write
+side of the connection.  The other party MUST respond with a
+close_notify alert of its own and close down the connection immediately,
+discarding any pending writes.  It is not required for the initiator
+of the close to wait for the responding close_notify alert before
+closing the read side of the connection.
+```
+
+and waits for the other side of TLS connection to confirm the close.
+
+Unfortunately it can undesired for reasons:
+- we support switching of TLS versions in CUPS, and this mode strictly
+  follows TLS v1.2 - so for older version this behavior is not expected
+  and can cause delays
+- even some TLS v1.2 implementations (like Windows Server 2016) don't
+  comply TLS v1.2 behavior even if it says it does - in that case,
+  encrypted printing takes 30s till HTTP timeout is reached, because the
+  other side didn't send confirmation
+- AFAIU openssl's SSL_shutdown() doesn't make this TLS v1.2 difference,
+  so we could end up with two TLS implementations in CUPS which will
+  behave differently
+
+Since the standard defines that waiting for confirmation is not required
+and due the problems above, I would propose using GNUTLS_SHUT_WR mode
+regardless of HTTP mode.
+---
+ cups/tls-gnutls.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cups/tls-gnutls.c b/cups/tls-gnutls.c
+index c55995b2b..f87b4f4df 100644
+--- a/cups/tls-gnutls.c
++++ b/cups/tls-gnutls.c
+@@ -1667,7 +1667,7 @@ _httpTLSStop(http_t *http)		/* I - Connection to server */
+   int	error;				/* Error code */
+ 
+ 
+-  error = gnutls_bye(http->tls, http->mode == _HTTP_MODE_CLIENT ? GNUTLS_SHUT_RDWR : GNUTLS_SHUT_WR);
++  error = gnutls_bye(http->tls, GNUTLS_SHUT_WR);
+   if (error != GNUTLS_E_SUCCESS)
+     _cupsSetError(IPP_STATUS_ERROR_INTERNAL, gnutls_strerror(errno), 0);
+ 
+-- 
+2.35.1
+

diff --git a/net-print/cups/files/cups-2.4.1-nostrip.patch b/net-print/cups/files/cups-2.4.1-nostrip.patch
new file mode 100644
index 000000000000..5862ce178255
--- /dev/null
+++ b/net-print/cups/files/cups-2.4.1-nostrip.patch
@@ -0,0 +1,11 @@
+--- a/config-scripts/cups-compiler.m4	2022-01-27 12:11:42.000000000 +0100
++++ b/config-scripts/cups-compiler.m4	2022-05-01 11:24:58.855033882 +0200
+@@ -30,8 +30,6 @@
+ dnl For debugging, keep symbols, otherwise strip them...
+ AS_IF([test x$enable_debug = xyes -a "x$OPTIM" = x], [
+     OPTIM="-g"
+-], [
+-    INSTALL_STRIP="-s"
+ ])
+ 
+ dnl Debug printfs can slow things down, so provide a separate option for that

diff --git a/net-print/cups/files/cups-2.4.1-resolve-uri.patch b/net-print/cups/files/cups-2.4.1-resolve-uri.patch
new file mode 100644
index 000000000000..e138e20dec14
--- /dev/null
+++ b/net-print/cups/files/cups-2.4.1-resolve-uri.patch
@@ -0,0 +1,31 @@
+diff -up cups-2.4.1/scheduler/ipp.c.resolve-uri cups-2.4.1/scheduler/ipp.c
+--- cups-2.4.1/scheduler/ipp.c.resolve-uri	2022-03-04 08:13:13.712346134 +0100
++++ cups-2.4.1/scheduler/ipp.c	2022-03-04 08:17:17.486819820 +0100
+@@ -5271,6 +5271,7 @@ create_local_bg_thread(
+ 		userpass[256],		/* User:pass */
+ 		host[256],		/* Hostname */
+ 		resource[1024],		/* Resource path */
++		uri[1024],		/* Resolved URI, if needed */
+ 		line[1024];		/* Line from PPD */
+   int		port;			/* Port number */
+   http_encryption_t encryption;		/* Type of encryption to use */
+@@ -5292,6 +5293,19 @@ create_local_bg_thread(
+ 
+   cupsdLogMessage(CUPSD_LOG_DEBUG, "%s: Generating PPD file from \"%s\"...", printer->name, printer->device_uri);
+ 
++  if (strstr(printer->device_uri, "._tcp"))
++  {
++    cupsdLogMessage(CUPSD_LOG_DEBUG2, "%s: Resolving mDNS URI \"%s\".", printer->name, printer->device_uri);
++
++    if (!_httpResolveURI(printer->device_uri, uri, sizeof(uri), _HTTP_RESOLVE_DEFAULT, NULL, NULL))
++    {
++      cupsdLogMessage(CUPSD_LOG_ERROR, "%s: Couldn't resolve mDNS URI \"%s\".", printer->name, printer->device_uri);
++      return (NULL);
++    }
++
++    printer->device_uri = uri;
++  }
++
+   if (httpSeparateURI(HTTP_URI_CODING_ALL, printer->device_uri, scheme, sizeof(scheme), userpass, sizeof(userpass), host, sizeof(host), &port, resource, sizeof(resource)) < HTTP_URI_STATUS_OK)
+   {
+     cupsdLogMessage(CUPSD_LOG_ERROR, "%s: Bad device URI \"%s\".", printer->name, printer->device_uri);

diff --git a/net-print/cups/files/cups-2.4.1-user-AR.patch b/net-print/cups/files/cups-2.4.1-user-AR.patch
new file mode 100644
index 000000000000..edbecd6ed9fa
--- /dev/null
+++ b/net-print/cups/files/cups-2.4.1-user-AR.patch
@@ -0,0 +1,21 @@
+--- a/config-scripts/cups-common.m4
++++ b/config-scripts/cups-common.m4
+@@ -39,15 +39,15 @@
+ AC_PROG_CPP
+ AC_PROG_CXX
+ AC_PROG_RANLIB
+-AC_PATH_PROG([AR], [ar])
++AC_CHECK_TOOL([AR], [ar])
+ AC_PATH_PROG([CHMOD], [chmod])
+ AC_PATH_PROG([GZIPPROG], [gzip])
+ AC_MSG_CHECKING([for install-sh script])
+ INSTALL="`pwd`/install-sh"
+ AC_SUBST([INSTALL])
+ AC_MSG_RESULT([using $INSTALL])
+-AC_PATH_PROG([LD], [ld])
+-AC_PATH_PROG([LN], [ln])
++AC_CHECK_TOOL([LD], [ld])
++AC_CHECK_TOOL([LN], [ln])
+ AC_PATH_PROG([MKDIR], [mkdir])
+ AC_PATH_PROG([MV], [mv])
+ AC_PATH_PROG([RM], [rm])


             reply	other threads:[~2022-05-22 12:34 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-22 12:34 Pacho Ramos [this message]
  -- strict thread matches above, loose matches on Subject: below --
2023-09-27  4:20 [gentoo-commits] repo/gentoo:master commit in: net-print/cups/files/, net-print/cups/ Sam James
2022-09-06  5:23 Sam James
2022-05-28  4:26 Sam James
2021-10-28  9:49 Pacho Ramos
2019-09-03  7:56 Lars Wendler
2019-03-23 21:37 Lars Wendler
2019-03-23 21:37 Lars Wendler
2018-06-12  8:17 Lars Wendler
2018-06-06 10:51 Lars Wendler
2017-11-10  9:07 Lars Wendler
2017-06-30 21:49 Lars Wendler
2017-02-15  0:42 Andreas Hüttel
2016-12-29 18:52 Lars Wendler
2016-06-15  7:37 Lars Wendler

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1653222856.223305bc13eb0aad4824fb632d288f621a835616.pacho@gentoo \
    --to=pacho@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox