Date: Monday, April 16, 2018 @ 21:49:26 Author: foutrelis Revision: 321919
archrelease: copy trunk to extra-x86_64 Added: cups/repos/extra-x86_64/PKGBUILD (from rev 321918, cups/trunk/PKGBUILD) cups/repos/extra-x86_64/auth-workaround-for-certain-web-browsers.patch (from rev 321918, cups/trunk/auth-workaround-for-certain-web-browsers.patch) cups/repos/extra-x86_64/cups-1.6.2-statedir.patch (from rev 321918, cups/trunk/cups-1.6.2-statedir.patch) cups/repos/extra-x86_64/cups-no-export-ssllibs.patch (from rev 321918, cups/trunk/cups-no-export-ssllibs.patch) cups/repos/extra-x86_64/cups-no-gzip-man.patch (from rev 321918, cups/trunk/cups-no-gzip-man.patch) cups/repos/extra-x86_64/cups-systemd-socket.patch (from rev 321918, cups/trunk/cups-systemd-socket.patch) cups/repos/extra-x86_64/cups.install (from rev 321918, cups/trunk/cups.install) cups/repos/extra-x86_64/cups.logrotate (from rev 321918, cups/trunk/cups.logrotate) cups/repos/extra-x86_64/cups.pam (from rev 321918, cups/trunk/cups.pam) cups/repos/extra-x86_64/cups.sysusers (from rev 321918, cups/trunk/cups.sysusers) cups/repos/extra-x86_64/guid.patch (from rev 321918, cups/trunk/guid.patch) Deleted: cups/repos/extra-x86_64/PKGBUILD cups/repos/extra-x86_64/cups-1.6.2-statedir.patch cups/repos/extra-x86_64/cups-no-export-ssllibs.patch cups/repos/extra-x86_64/cups-no-gzip-man.patch cups/repos/extra-x86_64/cups-systemd-socket.patch cups/repos/extra-x86_64/cups.install cups/repos/extra-x86_64/cups.logrotate cups/repos/extra-x86_64/cups.pam cups/repos/extra-x86_64/cups.sysusers cups/repos/extra-x86_64/guid.patch ------------------------------------------------+ PKGBUILD | 344 +++++++++++------------ auth-workaround-for-certain-web-browsers.patch | 59 +++ cups-1.6.2-statedir.patch | 24 - cups-no-export-ssllibs.patch | 24 - cups-no-gzip-man.patch | 36 +- cups-systemd-socket.patch | 98 +++--- cups.install | 40 +- cups.logrotate | 10 cups.pam | 6 cups.sysusers | 4 guid.patch | 84 ++--- 11 files changed, 396 insertions(+), 333 deletions(-) Deleted: PKGBUILD =================================================================== --- PKGBUILD 2018-04-16 21:49:11 UTC (rev 321918) +++ PKGBUILD 2018-04-16 21:49:26 UTC (rev 321919) @@ -1,170 +0,0 @@ -# $Id$ -# Maintainer: Andreas Radke <andy...@archlinux.org> - -pkgbase="cups" -pkgname=('libcups' 'cups') -pkgver=2.2.7 -pkgrel=1 -arch=('x86_64') -license=('GPL') -url="https://www.cups.org/" -makedepends=('libtiff' 'libpng' 'acl' 'pam' 'xdg-utils' 'krb5' 'gnutls' - 'cups-filters' 'bc' 'colord' 'xinetd' 'gzip' 'autoconf' 'libusb' 'dbus' - 'avahi' 'hicolor-icon-theme' 'systemd' 'inetutils' 'libpaper' 'valgrind') -source=(https://github.com/apple/cups/releases/download/v${pkgver}/cups-${pkgver}-source.tar.gz{,.sig} - cups.logrotate cups.pam - cups.sysusers guid.patch - # improve build and linking - cups-no-export-ssllibs.patch - cups-no-gzip-man.patch - cups-1.6.2-statedir.patch - # bugfixes - cups-systemd-socket.patch) -sha256sums=('3c4b637b737077565ccdfbd5f61785d03f49461ae736fcc2c0ffaf41d2c6ea6a' - 'SKIP' - 'd87fa0f0b5ec677aae34668f260333db17ce303aa1a752cba5f8e72623d9acf9' - '57dfd072fd7ef0018c6b0a798367aac1abb5979060ff3f9df22d1048bb71c0d5' - '06173dfaea37bdd9b39b3e09aba98c34ae7112a2f521db45a688907d8848caa2' - 'd4537526c1e075866ae22ad263da000fc2a592d36c26b79a459a1cfdade2bb2d' - 'ff3eb0782af0405f5dafe89e04b1b4ea7a49afc5496860d724343bd04f375832' - 'b8fc2e3bc603495f0278410350ea8f0161d9d83719feb64f573b63430cb4800b' - '23349c96f2f7aeb7d48e3bcd35a969f5d5ac8f55a032b0cfaa0a03d7e37ea9af' - 'c04627383d66f19b78e78f960d4d46577111ec9789b937ac4efba4cf369c921f') -validpgpkeys=('3737FD0D0E63B30172440D2DDBA3A7AB08D76223') # CUPS.org (CUPS.org PGP key) <secur...@cups.org> -validpgpkeys+=('45D083946E3035282B3CCA9AF434104235DA97EB') # "CUPS.org <secur...@cups.org>" - -prepare() { - - cd ${pkgbase}-${pkgver} - - # improve build and linking - # Do not export SSL libs in cups-config - patch -Np1 -i ${srcdir}/cups-no-export-ssllibs.patch - # don't zip man pages in make install, let makepkg do that / Fedora - patch -Np1 -i ${srcdir}/cups-no-gzip-man.patch - # move /var/run -> /run for pid file - patch -Np1 -i ${srcdir}/cups-1.6.2-statedir.patch - - # bug fixes - # make sure network is up when starting and notify systemd - FC - patch -Np1 -i ${srcdir}/cups-systemd-socket.patch - - # FS#56818 - https://github.com/apple/cups/issues/5236 - patch -Np1 -i ${srcdir}/guid.patch - - # set MaxLogSize to 0 to prevent using cups internal log rotation - sed -i -e '5i\ ' conf/cupsd.conf.in - sed -i -e '6i# Disable cups internal logging - use logrotate instead' conf/cupsd.conf.in - sed -i -e '7iMaxLogSize 0' conf/cupsd.conf.in - - # Rebuild configure script for not zipping man-pages. - aclocal -I config-scripts - autoconf -I config-scripts -} - -build() { - cd ${pkgbase}-${pkgver} - - # use fixed cups user (id 209) since systemd adds "lp" group without a fixed id - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --localstatedir=/var \ - --sbindir=/usr/bin \ - --libdir=/usr/lib \ - --with-logdir=/var/log/cups \ - --with-docdir=/usr/share/cups/doc \ - --with-exe-file-perm=0755 \ - --with-cups-user=209 \ - --with-cups-group=209 \ - --enable-pam=yes \ - --enable-raw-printing \ - --enable-dbus --with-dbusdir=/etc/dbus-1 \ - --enable-ssl=yes \ - --enable-threads \ - --enable-avahi\ - --enable-libpaper \ - --with-php=/usr/bin/php-cgi \ - --with-optim="$CFLAGS" #--help - make -} - -check() { - cd ${pkgbase}-${pkgver} - #make -k check || /bin/true -} - -package_libcups() { -pkgdesc="The CUPS Printing System - client libraries and headers" -depends=('gnutls' 'libtiff>=4.0.0' 'libpng>=1.5.7' 'krb5' 'avahi' 'libusb') - - cd ${pkgbase}-${pkgver} - make BUILDROOT=${pkgdir} install-headers install-libs - # put this into the libs pkg to make other software find the libs(no pkg-config file included) - mkdir -p ${pkgdir}/usr/bin - install -m755 ${srcdir}/${pkgbase}-${pkgver}/cups-config ${pkgdir}/usr/bin/cups-config -} - -package_cups() { -pkgdesc="The CUPS Printing System - daemon package" -install=cups.install -backup=(etc/cups/cupsd.conf - etc/cups/snmp.conf - etc/cups/printers.conf - etc/cups/classes.conf - etc/cups/cups-files.conf - etc/cups/subscriptions.conf - etc/dbus-1/system.d/cups.conf - etc/logrotate.d/cups - etc/pam.d/cups) -depends=('acl' 'pam' "libcups>=${pkgver}" 'cups-filters' 'bc' - 'dbus' 'systemd' 'libpaper' 'hicolor-icon-theme') -optdepends=('xdg-utils: xdg .desktop file support' - 'colord: for ICC color profile support') - - cd ${pkgbase}-${pkgver} - make BUILDROOT=${pkgdir} install-data install-exec - - # this one we ship in the libcups pkg - rm -f ${pkgdir}/usr/bin/cups-config - - # kill the sysv stuff - rm -rf ${pkgdir}/etc/rc*.d - rm -rf ${pkgdir}/etc/init.d - install -D -m644 ../cups.logrotate ${pkgdir}/etc/logrotate.d/cups - install -D -m644 ../cups.pam ${pkgdir}/etc/pam.d/cups - - # fix perms on /var/spool and /etc - chmod 755 ${pkgdir}/var/spool - chmod 755 ${pkgdir}/etc - - # use cups group FS#36769 - install -Dm644 "$srcdir"/cups.sysusers "${pkgdir}/usr/lib/sysusers.d/$pkgname.conf" - sed -i "s:#User 209:User 209:" ${pkgdir}/etc/cups/cups-files.conf{,.default} - sed -i "s:#Group 209:Group 209:" ${pkgdir}/etc/cups/cups-files.conf{,.default} - - # install ssl directory where to store the certs, solves some samba issues - install -dm700 -g 209 ${pkgdir}/etc/cups/ssl - # remove directory from package, it will be recreated at each server start - rm -rf ${pkgdir}/run - - # install some more configuration files that will get filled by cupsd - touch ${pkgdir}/etc/cups/printers.conf - touch ${pkgdir}/etc/cups/classes.conf - touch ${pkgdir}/etc/cups/subscriptions.conf - chgrp -R 209 ${pkgdir}/etc/cups - - # fix .desktop file - sed -i 's|^Exec=htmlview http://localhost:631/|Exec=xdg-open http://localhost:631/|g' ${pkgdir}/usr/share/applications/cups.desktop - - # compress some driver files, adopted from Fedora - find ${pkgdir}/usr/share/cups/model -name "*.ppd" | xargs gzip -n9f - - # remove client.conf man page - rm -f ${pkgdir}/usr/share/man/man5/client.conf.5 - - # comment out all conversion rules which use any of the removed filters that are now part of cups-filters - perl -p -i -e 's:^(.*\s+bannertops\s*)$:#\1:' $pkgdir/usr/share/cups/mime/mime.convs - - # comment out unnecessary PageLogFormat entry - sed -i -e 's:PageLogFormat:#PageLogFormat:' $pkgdir/etc/cups/cupsd.conf* -} Copied: cups/repos/extra-x86_64/PKGBUILD (from rev 321918, cups/trunk/PKGBUILD) =================================================================== --- PKGBUILD (rev 0) +++ PKGBUILD 2018-04-16 21:49:26 UTC (rev 321919) @@ -0,0 +1,174 @@ +# $Id$ +# Maintainer: Andreas Radke <andy...@archlinux.org> + +pkgbase="cups" +pkgname=('libcups' 'cups') +pkgver=2.2.7 +pkgrel=2 +arch=('x86_64') +license=('GPL') +url="https://www.cups.org/" +makedepends=('libtiff' 'libpng' 'acl' 'pam' 'xdg-utils' 'krb5' 'gnutls' + 'cups-filters' 'bc' 'colord' 'xinetd' 'gzip' 'autoconf' 'libusb' 'dbus' + 'avahi' 'hicolor-icon-theme' 'systemd' 'inetutils' 'libpaper' 'valgrind') +source=(https://github.com/apple/cups/releases/download/v${pkgver}/cups-${pkgver}-source.tar.gz{,.sig} + cups.logrotate cups.pam + cups.sysusers guid.patch + # improve build and linking + cups-no-export-ssllibs.patch + cups-no-gzip-man.patch + cups-1.6.2-statedir.patch + # bugfixes + auth-workaround-for-certain-web-browsers.patch + cups-systemd-socket.patch) +sha256sums=('3c4b637b737077565ccdfbd5f61785d03f49461ae736fcc2c0ffaf41d2c6ea6a' + 'SKIP' + 'd87fa0f0b5ec677aae34668f260333db17ce303aa1a752cba5f8e72623d9acf9' + '57dfd072fd7ef0018c6b0a798367aac1abb5979060ff3f9df22d1048bb71c0d5' + '06173dfaea37bdd9b39b3e09aba98c34ae7112a2f521db45a688907d8848caa2' + 'd4537526c1e075866ae22ad263da000fc2a592d36c26b79a459a1cfdade2bb2d' + 'ff3eb0782af0405f5dafe89e04b1b4ea7a49afc5496860d724343bd04f375832' + 'b8fc2e3bc603495f0278410350ea8f0161d9d83719feb64f573b63430cb4800b' + '23349c96f2f7aeb7d48e3bcd35a969f5d5ac8f55a032b0cfaa0a03d7e37ea9af' + 'e5ad0e967c2ae9a9780211acb41980e4aa203df1dacff49d14d75a6ab6c8b8ed' + 'c04627383d66f19b78e78f960d4d46577111ec9789b937ac4efba4cf369c921f') +validpgpkeys=('3737FD0D0E63B30172440D2DDBA3A7AB08D76223') # CUPS.org (CUPS.org PGP key) <secur...@cups.org> +validpgpkeys+=('45D083946E3035282B3CCA9AF434104235DA97EB') # "CUPS.org <secur...@cups.org>" + +prepare() { + + cd ${pkgbase}-${pkgver} + + # improve build and linking + # Do not export SSL libs in cups-config + patch -Np1 -i ${srcdir}/cups-no-export-ssllibs.patch + # don't zip man pages in make install, let makepkg do that / Fedora + patch -Np1 -i ${srcdir}/cups-no-gzip-man.patch + # move /var/run -> /run for pid file + patch -Np1 -i ${srcdir}/cups-1.6.2-statedir.patch + + # bug fixes + # https://github.com/apple/cups/issues/5289 + patch -Np1 -i ${srcdir}/auth-workaround-for-certain-web-browsers.patch + # make sure network is up when starting and notify systemd - FC + patch -Np1 -i ${srcdir}/cups-systemd-socket.patch + + # FS#56818 - https://github.com/apple/cups/issues/5236 + patch -Np1 -i ${srcdir}/guid.patch + + # set MaxLogSize to 0 to prevent using cups internal log rotation + sed -i -e '5i\ ' conf/cupsd.conf.in + sed -i -e '6i# Disable cups internal logging - use logrotate instead' conf/cupsd.conf.in + sed -i -e '7iMaxLogSize 0' conf/cupsd.conf.in + + # Rebuild configure script for not zipping man-pages. + aclocal -I config-scripts + autoconf -I config-scripts +} + +build() { + cd ${pkgbase}-${pkgver} + + # use fixed cups user (id 209) since systemd adds "lp" group without a fixed id + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --sbindir=/usr/bin \ + --libdir=/usr/lib \ + --with-logdir=/var/log/cups \ + --with-docdir=/usr/share/cups/doc \ + --with-exe-file-perm=0755 \ + --with-cups-user=209 \ + --with-cups-group=209 \ + --enable-pam=yes \ + --enable-raw-printing \ + --enable-dbus --with-dbusdir=/etc/dbus-1 \ + --enable-ssl=yes \ + --enable-threads \ + --enable-avahi\ + --enable-libpaper \ + --with-php=/usr/bin/php-cgi \ + --with-optim="$CFLAGS" #--help + make +} + +check() { + cd ${pkgbase}-${pkgver} + #make -k check || /bin/true +} + +package_libcups() { +pkgdesc="The CUPS Printing System - client libraries and headers" +depends=('gnutls' 'libtiff>=4.0.0' 'libpng>=1.5.7' 'krb5' 'avahi' 'libusb') + + cd ${pkgbase}-${pkgver} + make BUILDROOT=${pkgdir} install-headers install-libs + # put this into the libs pkg to make other software find the libs(no pkg-config file included) + mkdir -p ${pkgdir}/usr/bin + install -m755 ${srcdir}/${pkgbase}-${pkgver}/cups-config ${pkgdir}/usr/bin/cups-config +} + +package_cups() { +pkgdesc="The CUPS Printing System - daemon package" +install=cups.install +backup=(etc/cups/cupsd.conf + etc/cups/snmp.conf + etc/cups/printers.conf + etc/cups/classes.conf + etc/cups/cups-files.conf + etc/cups/subscriptions.conf + etc/dbus-1/system.d/cups.conf + etc/logrotate.d/cups + etc/pam.d/cups) +depends=('acl' 'pam' "libcups>=${pkgver}" 'cups-filters' 'bc' + 'dbus' 'systemd' 'libpaper' 'hicolor-icon-theme') +optdepends=('xdg-utils: xdg .desktop file support' + 'colord: for ICC color profile support') + + cd ${pkgbase}-${pkgver} + make BUILDROOT=${pkgdir} install-data install-exec + + # this one we ship in the libcups pkg + rm -f ${pkgdir}/usr/bin/cups-config + + # kill the sysv stuff + rm -rf ${pkgdir}/etc/rc*.d + rm -rf ${pkgdir}/etc/init.d + install -D -m644 ../cups.logrotate ${pkgdir}/etc/logrotate.d/cups + install -D -m644 ../cups.pam ${pkgdir}/etc/pam.d/cups + + # fix perms on /var/spool and /etc + chmod 755 ${pkgdir}/var/spool + chmod 755 ${pkgdir}/etc + + # use cups group FS#36769 + install -Dm644 "$srcdir"/cups.sysusers "${pkgdir}/usr/lib/sysusers.d/$pkgname.conf" + sed -i "s:#User 209:User 209:" ${pkgdir}/etc/cups/cups-files.conf{,.default} + sed -i "s:#Group 209:Group 209:" ${pkgdir}/etc/cups/cups-files.conf{,.default} + + # install ssl directory where to store the certs, solves some samba issues + install -dm700 -g 209 ${pkgdir}/etc/cups/ssl + # remove directory from package, it will be recreated at each server start + rm -rf ${pkgdir}/run + + # install some more configuration files that will get filled by cupsd + touch ${pkgdir}/etc/cups/printers.conf + touch ${pkgdir}/etc/cups/classes.conf + touch ${pkgdir}/etc/cups/subscriptions.conf + chgrp -R 209 ${pkgdir}/etc/cups + + # fix .desktop file + sed -i 's|^Exec=htmlview http://localhost:631/|Exec=xdg-open http://localhost:631/|g' ${pkgdir}/usr/share/applications/cups.desktop + + # compress some driver files, adopted from Fedora + find ${pkgdir}/usr/share/cups/model -name "*.ppd" | xargs gzip -n9f + + # remove client.conf man page + rm -f ${pkgdir}/usr/share/man/man5/client.conf.5 + + # comment out all conversion rules which use any of the removed filters that are now part of cups-filters + perl -p -i -e 's:^(.*\s+bannertops\s*)$:#\1:' $pkgdir/usr/share/cups/mime/mime.convs + + # comment out unnecessary PageLogFormat entry + sed -i -e 's:PageLogFormat:#PageLogFormat:' $pkgdir/etc/cups/cupsd.conf* +} Copied: cups/repos/extra-x86_64/auth-workaround-for-certain-web-browsers.patch (from rev 321918, cups/trunk/auth-workaround-for-certain-web-browsers.patch) =================================================================== --- auth-workaround-for-certain-web-browsers.patch (rev 0) +++ auth-workaround-for-certain-web-browsers.patch 2018-04-16 21:49:26 UTC (rev 321919) @@ -0,0 +1,59 @@ +From 4feb1fe2e5bb9f418f51f5f517f70b451159baa2 Mon Sep 17 00:00:00 2001 +From: Michael R Sweet <michael.r.sw...@gmail.com> +Date: Mon, 16 Apr 2018 17:16:31 -0400 +Subject: [PATCH] - Added a workaround for certain web browsers that do not + support multiple authentication schemes in a single response header (Issue + #5289) + +--- + scheduler/client.c | 22 +++++++++++++++++----- + scheduler/client.h | 8 +++++--- + 2 files changed, 22 insertions(+), 8 deletions(-) + +diff --git a/scheduler/client.c b/scheduler/client.c +index f388499dc..95c34877d 100644 +--- a/scheduler/client.c ++++ b/scheduler/client.c +@@ -813,6 +814,18 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */ + + if (status == HTTP_STATUS_OK) + { ++ /* ++ * Record whether the client is a web browser. "Mozilla" was the original ++ * and it seems that every web browser in existence now uses that as the ++ * prefix with additional information identifying *which* browser. ++ * ++ * Chrome (at least) has problems with multiple WWW-Authenticate values in ++ * a single header, so we only report Basic or Negotiate to web browsers and ++ * leave the multiple choices to the native CUPS client... ++ */ ++ ++ con->is_browser = !strncmp(httpGetField(con->http, HTTP_FIELD_USER_AGENT), "Mozilla/", 8); ++ + if (httpGetField(con->http, HTTP_FIELD_ACCEPT_LANGUAGE)[0]) + { + /* +@@ -2103,8 +2116,7 @@ cupsdSendHeader( + strlcpy(auth_str, "Negotiate", sizeof(auth_str)); + } + +- if (con->best && auth_type != CUPSD_AUTH_NEGOTIATE && +- !_cups_strcasecmp(httpGetHostname(con->http, NULL, 0), "localhost")) ++ if (con->best && auth_type != CUPSD_AUTH_NEGOTIATE && !con->is_browser && !_cups_strcasecmp(httpGetHostname(con->http, NULL, 0), "localhost")) + { + /* + * Add a "trc" (try root certification) parameter for local non-Kerberos +diff --git a/scheduler/client.h b/scheduler/client.h +index aaca8279a..fc7af5400 100644 +--- a/scheduler/client.h ++++ b/scheduler/client.h +@@ -26,6 +27,7 @@ struct cupsd_client_s + struct timeval start; /* Request start time */ + http_state_t operation; /* Request operation */ + off_t bytes; /* Bytes transferred for this request */ ++ int is_browser; /* Is the client a web browser? */ + int type; /* AuthType for username */ + char username[HTTP_MAX_VALUE], + /* Username from Authorization: line */ +-- +2.17.0 Deleted: cups-1.6.2-statedir.patch =================================================================== --- cups-1.6.2-statedir.patch 2018-04-16 21:49:11 UTC (rev 321918) +++ cups-1.6.2-statedir.patch 2018-04-16 21:49:26 UTC (rev 321919) @@ -1,12 +0,0 @@ -diff -ruN cups-1.6.2.orig/config-scripts/cups-directories.m4 cups-1.6.2/config-scripts/cups-directories.m4 ---- cups-1.6.2.orig/config-scripts/cups-directories.m4 2012-10-01 03:55:23.000000000 +0200 -+++ cups-1.6.2/config-scripts/cups-directories.m4 2013-04-02 00:11:41.000000000 +0200 -@@ -420,7 +420,7 @@ - ;; - *) - # All others -- CUPS_STATEDIR="$localstatedir/run/cups" -+ CUPS_STATEDIR="/run/cups" - ;; - esac]) - AC_DEFINE_UNQUOTED(CUPS_STATEDIR, "$CUPS_STATEDIR") Copied: cups/repos/extra-x86_64/cups-1.6.2-statedir.patch (from rev 321918, cups/trunk/cups-1.6.2-statedir.patch) =================================================================== --- cups-1.6.2-statedir.patch (rev 0) +++ cups-1.6.2-statedir.patch 2018-04-16 21:49:26 UTC (rev 321919) @@ -0,0 +1,12 @@ +diff -ruN cups-1.6.2.orig/config-scripts/cups-directories.m4 cups-1.6.2/config-scripts/cups-directories.m4 +--- cups-1.6.2.orig/config-scripts/cups-directories.m4 2012-10-01 03:55:23.000000000 +0200 ++++ cups-1.6.2/config-scripts/cups-directories.m4 2013-04-02 00:11:41.000000000 +0200 +@@ -420,7 +420,7 @@ + ;; + *) + # All others +- CUPS_STATEDIR="$localstatedir/run/cups" ++ CUPS_STATEDIR="/run/cups" + ;; + esac]) + AC_DEFINE_UNQUOTED(CUPS_STATEDIR, "$CUPS_STATEDIR") Deleted: cups-no-export-ssllibs.patch =================================================================== --- cups-no-export-ssllibs.patch 2018-04-16 21:49:11 UTC (rev 321918) +++ cups-no-export-ssllibs.patch 2018-04-16 21:49:26 UTC (rev 321919) @@ -1,12 +0,0 @@ -diff -up cups-1.5b1/config-scripts/cups-ssl.m4.no-export-ssllibs cups-1.5b1/config-scripts/cups-ssl.m4 ---- cups-1.6.2/config-scripts/cups-ssl.m4.no-export-ssllibs 2011-05-11 02:52:08.000000000 +0200 -+++ cups-1.6.2/config-scripts/cups-ssl.m4 2011-05-23 17:47:27.000000000 +0200 -@@ -180,7 +180,7 @@ - AC_SUBST(SSLFLAGS) - AC_SUBST(SSLLIBS) - --EXPORT_SSLLIBS="$SSLLIBS" -+EXPORT_SSLLIBS="" - AC_SUBST(EXPORT_SSLLIBS) - - dnl Copied: cups/repos/extra-x86_64/cups-no-export-ssllibs.patch (from rev 321918, cups/trunk/cups-no-export-ssllibs.patch) =================================================================== --- cups-no-export-ssllibs.patch (rev 0) +++ cups-no-export-ssllibs.patch 2018-04-16 21:49:26 UTC (rev 321919) @@ -0,0 +1,12 @@ +diff -up cups-1.5b1/config-scripts/cups-ssl.m4.no-export-ssllibs cups-1.5b1/config-scripts/cups-ssl.m4 +--- cups-1.6.2/config-scripts/cups-ssl.m4.no-export-ssllibs 2011-05-11 02:52:08.000000000 +0200 ++++ cups-1.6.2/config-scripts/cups-ssl.m4 2011-05-23 17:47:27.000000000 +0200 +@@ -180,7 +180,7 @@ + AC_SUBST(SSLFLAGS) + AC_SUBST(SSLLIBS) + +-EXPORT_SSLLIBS="$SSLLIBS" ++EXPORT_SSLLIBS="" + AC_SUBST(EXPORT_SSLLIBS) + + dnl Deleted: cups-no-gzip-man.patch =================================================================== --- cups-no-gzip-man.patch 2018-04-16 21:49:11 UTC (rev 321918) +++ cups-no-gzip-man.patch 2018-04-16 21:49:26 UTC (rev 321919) @@ -1,18 +0,0 @@ -diff -up cups-1.5b1/config-scripts/cups-manpages.m4.no-gzip-man cups-1.5b1/config-scripts/cups-manpages.m4 ---- cups-1.5b1/config-scripts/cups-manpages.m4.no-gzip-man 2011-05-12 07:21:56.000000000 +0200 -+++ cups-1.5b1/config-scripts/cups-manpages.m4 2011-05-23 17:25:50.000000000 +0200 -@@ -69,10 +69,10 @@ case "$uname" in - ;; - Linux* | GNU* | Darwin*) - # Linux, GNU Hurd, and macOS -- MAN1EXT=1.gz -- MAN5EXT=5.gz -- MAN7EXT=7.gz -- MAN8EXT=8.gz -+ MAN1EXT=1 -+ MAN5EXT=5 -+ MAN7EXT=7 -+ MAN8EXT=8 - MAN8DIR=8 - ;; - *) Copied: cups/repos/extra-x86_64/cups-no-gzip-man.patch (from rev 321918, cups/trunk/cups-no-gzip-man.patch) =================================================================== --- cups-no-gzip-man.patch (rev 0) +++ cups-no-gzip-man.patch 2018-04-16 21:49:26 UTC (rev 321919) @@ -0,0 +1,18 @@ +diff -up cups-1.5b1/config-scripts/cups-manpages.m4.no-gzip-man cups-1.5b1/config-scripts/cups-manpages.m4 +--- cups-1.5b1/config-scripts/cups-manpages.m4.no-gzip-man 2011-05-12 07:21:56.000000000 +0200 ++++ cups-1.5b1/config-scripts/cups-manpages.m4 2011-05-23 17:25:50.000000000 +0200 +@@ -69,10 +69,10 @@ case "$uname" in + ;; + Linux* | GNU* | Darwin*) + # Linux, GNU Hurd, and macOS +- MAN1EXT=1.gz +- MAN5EXT=5.gz +- MAN7EXT=7.gz +- MAN8EXT=8.gz ++ MAN1EXT=1 ++ MAN5EXT=5 ++ MAN7EXT=7 ++ MAN8EXT=8 + MAN8DIR=8 + ;; + *) Deleted: cups-systemd-socket.patch =================================================================== --- cups-systemd-socket.patch 2018-04-16 21:49:11 UTC (rev 321918) +++ cups-systemd-socket.patch 2018-04-16 21:49:26 UTC (rev 321919) @@ -1,49 +0,0 @@ -diff -up cups-2.0.2/scheduler/main.c.ustTJg cups-2.0.2/scheduler/main.c ---- cups-2.0.2/scheduler/main.c.ustTJg 2015-02-10 13:40:24.121547526 +0100 -+++ cups-2.0.2/scheduler/main.c 2015-02-10 13:40:24.295545063 +0100 -@@ -690,8 +690,15 @@ main(int argc, /* I - Number of comm - - #if defined(HAVE_ONDEMAND) - if (OnDemand) -+ { - cupsdAddEvent(CUPSD_EVENT_SERVER_STARTED, NULL, NULL, "Scheduler started on demand."); -- else -+# ifdef HAVE_SYSTEMD -+ sd_notifyf(0, "READY=1\n" -+ "STATUS=Scheduler is running...\n" -+ "MAINPID=%lu", -+ (unsigned long) getpid()); -+# endif /* HAVE_SYSTEMD */ -+ } else - #endif /* HAVE_ONDEMAND */ - if (fg) - cupsdAddEvent(CUPSD_EVENT_SERVER_STARTED, NULL, NULL, "Scheduler started in foreground."); -diff -up cups-2.0.2/scheduler/org.cups.cupsd.path.in.ustTJg cups-2.0.2/scheduler/org.cups.cupsd.path.in ---- cups-2.0.2/scheduler/org.cups.cupsd.path.in.ustTJg 2014-03-21 15:50:24.000000000 +0100 -+++ cups-2.0.2/scheduler/org.cups.cupsd.path.in 2015-02-10 13:40:24.295545063 +0100 -@@ -2,7 +2,7 @@ - Description=CUPS Scheduler - - [Path] --PathExists=@CUPS_CACHEDIR@/org.cups.cupsd -+PathExistsGlob=@CUPS_REQUESTS@/d* - - [Install] - WantedBy=multi-user.target -diff -up cups-2.0.2/scheduler/org.cups.cupsd.service.in.ustTJg cups-2.0.2/scheduler/org.cups.cupsd.service.in ---- cups-2.0.2/scheduler/org.cups.cupsd.service.in.ustTJg 2014-10-21 13:55:01.000000000 +0200 -+++ cups-2.0.2/scheduler/org.cups.cupsd.service.in 2015-02-10 13:40:24.296545049 +0100 -@@ -1,10 +1,11 @@ - [Unit] - Description=CUPS Scheduler - Documentation=man:cupsd(8) -+After=network.target - - [Service] - ExecStart=@sbindir@/cupsd -l --Type=simple -+Type=notify - Restart=always - - [Install] - Copied: cups/repos/extra-x86_64/cups-systemd-socket.patch (from rev 321918, cups/trunk/cups-systemd-socket.patch) =================================================================== --- cups-systemd-socket.patch (rev 0) +++ cups-systemd-socket.patch 2018-04-16 21:49:26 UTC (rev 321919) @@ -0,0 +1,49 @@ +diff -up cups-2.0.2/scheduler/main.c.ustTJg cups-2.0.2/scheduler/main.c +--- cups-2.0.2/scheduler/main.c.ustTJg 2015-02-10 13:40:24.121547526 +0100 ++++ cups-2.0.2/scheduler/main.c 2015-02-10 13:40:24.295545063 +0100 +@@ -690,8 +690,15 @@ main(int argc, /* I - Number of comm + + #if defined(HAVE_ONDEMAND) + if (OnDemand) ++ { + cupsdAddEvent(CUPSD_EVENT_SERVER_STARTED, NULL, NULL, "Scheduler started on demand."); +- else ++# ifdef HAVE_SYSTEMD ++ sd_notifyf(0, "READY=1\n" ++ "STATUS=Scheduler is running...\n" ++ "MAINPID=%lu", ++ (unsigned long) getpid()); ++# endif /* HAVE_SYSTEMD */ ++ } else + #endif /* HAVE_ONDEMAND */ + if (fg) + cupsdAddEvent(CUPSD_EVENT_SERVER_STARTED, NULL, NULL, "Scheduler started in foreground."); +diff -up cups-2.0.2/scheduler/org.cups.cupsd.path.in.ustTJg cups-2.0.2/scheduler/org.cups.cupsd.path.in +--- cups-2.0.2/scheduler/org.cups.cupsd.path.in.ustTJg 2014-03-21 15:50:24.000000000 +0100 ++++ cups-2.0.2/scheduler/org.cups.cupsd.path.in 2015-02-10 13:40:24.295545063 +0100 +@@ -2,7 +2,7 @@ + Description=CUPS Scheduler + + [Path] +-PathExists=@CUPS_CACHEDIR@/org.cups.cupsd ++PathExistsGlob=@CUPS_REQUESTS@/d* + + [Install] + WantedBy=multi-user.target +diff -up cups-2.0.2/scheduler/org.cups.cupsd.service.in.ustTJg cups-2.0.2/scheduler/org.cups.cupsd.service.in +--- cups-2.0.2/scheduler/org.cups.cupsd.service.in.ustTJg 2014-10-21 13:55:01.000000000 +0200 ++++ cups-2.0.2/scheduler/org.cups.cupsd.service.in 2015-02-10 13:40:24.296545049 +0100 +@@ -1,10 +1,11 @@ + [Unit] + Description=CUPS Scheduler + Documentation=man:cupsd(8) ++After=network.target + + [Service] + ExecStart=@sbindir@/cupsd -l +-Type=simple ++Type=notify + Restart=always + + [Install] + Deleted: cups.install =================================================================== --- cups.install 2018-04-16 21:49:11 UTC (rev 321918) +++ cups.install 2018-04-16 21:49:26 UTC (rev 321919) @@ -1,20 +0,0 @@ -post_install() { - echo ">> If you use an HTTPS connection to CUPS, the first time you access" - echo ">> the interface it may take a very long time before the site comes up." - echo ">> This is because the first request triggers the generation of the CUPS" - echo ">> SSL certificates which can be a very time-consuming job." -} - -post_upgrade() { - # FS#56818 - make sure we change the ownership to the new cups group - if [[ $(vercmp 2.2.6-3 $2) = 1 ]]; then - chgrp -R 209 /etc/cups - echo "Cups daemon is now running under \"cups\" user+group." - echo "Please make sure to enable the new user+group change in" - echo "/etc/cups/cups-files.conf or merge changes from" - echo "/etc/cups/cups-files.conf.default. After a service restart" - echo "make sure /etc/cups and all files within are owned by" - echo "cups group - run \"chgrp -R cups /etc/cups\"." - fi -} - Copied: cups/repos/extra-x86_64/cups.install (from rev 321918, cups/trunk/cups.install) =================================================================== --- cups.install (rev 0) +++ cups.install 2018-04-16 21:49:26 UTC (rev 321919) @@ -0,0 +1,20 @@ +post_install() { + echo ">> If you use an HTTPS connection to CUPS, the first time you access" + echo ">> the interface it may take a very long time before the site comes up." + echo ">> This is because the first request triggers the generation of the CUPS" + echo ">> SSL certificates which can be a very time-consuming job." +} + +post_upgrade() { + # FS#56818 - make sure we change the ownership to the new cups group + if [[ $(vercmp 2.2.6-3 $2) = 1 ]]; then + chgrp -R 209 /etc/cups + echo "Cups daemon is now running under \"cups\" user+group." + echo "Please make sure to enable the new user+group change in" + echo "/etc/cups/cups-files.conf or merge changes from" + echo "/etc/cups/cups-files.conf.default. After a service restart" + echo "make sure /etc/cups and all files within are owned by" + echo "cups group - run \"chgrp -R cups /etc/cups\"." + fi +} + Deleted: cups.logrotate =================================================================== --- cups.logrotate 2018-04-16 21:49:11 UTC (rev 321918) +++ cups.logrotate 2018-04-16 21:49:26 UTC (rev 321919) @@ -1,5 +0,0 @@ -/var/log/cups/*_log { - missingok - notifempty - sharedscripts -} Copied: cups/repos/extra-x86_64/cups.logrotate (from rev 321918, cups/trunk/cups.logrotate) =================================================================== --- cups.logrotate (rev 0) +++ cups.logrotate 2018-04-16 21:49:26 UTC (rev 321919) @@ -0,0 +1,5 @@ +/var/log/cups/*_log { + missingok + notifempty + sharedscripts +} Deleted: cups.pam =================================================================== --- cups.pam 2018-04-16 21:49:11 UTC (rev 321918) +++ cups.pam 2018-04-16 21:49:26 UTC (rev 321919) @@ -1,3 +0,0 @@ -auth required pam_unix.so -account required pam_unix.so -session required pam_unix.so Copied: cups/repos/extra-x86_64/cups.pam (from rev 321918, cups/trunk/cups.pam) =================================================================== --- cups.pam (rev 0) +++ cups.pam 2018-04-16 21:49:26 UTC (rev 321919) @@ -0,0 +1,3 @@ +auth required pam_unix.so +account required pam_unix.so +session required pam_unix.so Deleted: cups.sysusers =================================================================== --- cups.sysusers 2018-04-16 21:49:11 UTC (rev 321918) +++ cups.sysusers 2018-04-16 21:49:26 UTC (rev 321919) @@ -1,2 +0,0 @@ -u cups 209 "cups helper user" -m cups lp Copied: cups/repos/extra-x86_64/cups.sysusers (from rev 321918, cups/trunk/cups.sysusers) =================================================================== --- cups.sysusers (rev 0) +++ cups.sysusers 2018-04-16 21:49:26 UTC (rev 321919) @@ -0,0 +1,2 @@ +u cups 209 "cups helper user" +m cups lp Deleted: guid.patch =================================================================== --- guid.patch 2018-04-16 21:49:11 UTC (rev 321918) +++ guid.patch 2018-04-16 21:49:26 UTC (rev 321919) @@ -1,42 +0,0 @@ -diff --git a/scheduler/cups-exec.c b/scheduler/cups-exec.c -index aab43a797..46c549075 100644 ---- a/scheduler/cups-exec.c -+++ b/scheduler/cups-exec.c -@@ -133,8 +133,13 @@ main(int argc, /* I - Number of command-line args */ - if (setgid(gid)) - exit(errno + 100); - -- if (setgroups(1, &gid)) -+#include <pwd.h> -+ struct passwd * pwd = getpwuid(uid); -+ if(initgroups(pwd->pw_name,pwd->pw_gid)) -+ { -+ fprintf(stderr, "DEBUG: initgroups failed\n"); - exit(errno + 100); -+ } - - if (uid && setuid(uid)) - exit(errno + 100); -diff --git a/scheduler/util.c b/scheduler/util.c -index 19ebf069b..4638562bd 100644 ---- a/scheduler/util.c -+++ b/scheduler/util.c -@@ -300,7 +300,16 @@ cupsdPipeCommand(int *pid, /* O - Process ID or 0 on error */ - */ - - if (!getuid() && user) -- setuid(user); /* Run as restricted user */ -+ { -+#include <pwd.h> -+ struct passwd * pwd = getpwuid(user); -+ if(initgroups(pwd->pw_name,pwd->pw_gid)) -+ { -+ fprintf(stderr, "DEBUG: initgroups failed\n"); -+ exit(errno + 100); -+ } -+ setuid(user); /* Run as restricted user */ -+ } - - if ((fd = open("/dev/null", O_RDONLY)) > 0) - { - Copied: cups/repos/extra-x86_64/guid.patch (from rev 321918, cups/trunk/guid.patch) =================================================================== --- guid.patch (rev 0) +++ guid.patch 2018-04-16 21:49:26 UTC (rev 321919) @@ -0,0 +1,42 @@ +diff --git a/scheduler/cups-exec.c b/scheduler/cups-exec.c +index aab43a797..46c549075 100644 +--- a/scheduler/cups-exec.c ++++ b/scheduler/cups-exec.c +@@ -133,8 +133,13 @@ main(int argc, /* I - Number of command-line args */ + if (setgid(gid)) + exit(errno + 100); + +- if (setgroups(1, &gid)) ++#include <pwd.h> ++ struct passwd * pwd = getpwuid(uid); ++ if(initgroups(pwd->pw_name,pwd->pw_gid)) ++ { ++ fprintf(stderr, "DEBUG: initgroups failed\n"); + exit(errno + 100); ++ } + + if (uid && setuid(uid)) + exit(errno + 100); +diff --git a/scheduler/util.c b/scheduler/util.c +index 19ebf069b..4638562bd 100644 +--- a/scheduler/util.c ++++ b/scheduler/util.c +@@ -300,7 +300,16 @@ cupsdPipeCommand(int *pid, /* O - Process ID or 0 on error */ + */ + + if (!getuid() && user) +- setuid(user); /* Run as restricted user */ ++ { ++#include <pwd.h> ++ struct passwd * pwd = getpwuid(user); ++ if(initgroups(pwd->pw_name,pwd->pw_gid)) ++ { ++ fprintf(stderr, "DEBUG: initgroups failed\n"); ++ exit(errno + 100); ++ } ++ setuid(user); /* Run as restricted user */ ++ } + + if ((fd = open("/dev/null", O_RDONLY)) > 0) + { +