diff options
author | Heinrich Wendel <lanius@gentoo.org> | 2005-01-03 16:35:52 +0000 |
---|---|---|
committer | Heinrich Wendel <lanius@gentoo.org> | 2005-01-03 16:35:52 +0000 |
commit | 917b1d5a888a0bdf10541dd8d7de0f187f0d3893 (patch) | |
tree | c545d77e76a29f3beb03689be55ec87615b51b99 /net-print | |
parent | New ebuild thanks to Martin von Gagern <Martin.vGagern@gmx.net>, n0ne <baal.k... (diff) | |
download | gentoo-2-917b1d5a888a0bdf10541dd8d7de0f187f0d3893.tar.gz gentoo-2-917b1d5a888a0bdf10541dd8d7de0f187f0d3893.tar.bz2 gentoo-2-917b1d5a888a0bdf10541dd8d7de0f187f0d3893.zip |
cleanups; replace hotplug with coldplug"
Diffstat (limited to 'net-print')
-rw-r--r-- | net-print/cups/ChangeLog | 14 | ||||
-rw-r--r-- | net-print/cups/Manifest | 31 | ||||
-rw-r--r-- | net-print/cups/cups-1.1.20-r5.ebuild | 124 | ||||
-rw-r--r-- | net-print/cups/cups-1.1.22.ebuild | 129 | ||||
-rw-r--r-- | net-print/cups/cups-1.1.23_rc1.ebuild | 14 | ||||
-rw-r--r-- | net-print/cups/files/cups-1.1.20-str633.patch | 11 | ||||
-rw-r--r-- | net-print/cups/files/cups-1.1.20-xpdf-CESA-2004-007.patch.bz2 | bin | 968 -> 0 bytes | |||
-rw-r--r-- | net-print/cups/files/cups-1.1.20-xpdf2-underflow.patch | 81 | ||||
-rw-r--r-- | net-print/cups/files/cups-1.1.20-zero-len-udp-dos.patch | 22 | ||||
-rw-r--r-- | net-print/cups/files/cups-1.1.21-xpdf-CESA-2004-007.patch.bz2 | bin | 966 -> 0 bytes | |||
-rw-r--r-- | net-print/cups/files/cupsd.conf-1.1.18 | 788 | ||||
-rw-r--r-- | net-print/cups/files/digest-cups-1.1.20-r5 | 1 | ||||
-rw-r--r-- | net-print/cups/files/digest-cups-1.1.22 | 1 | ||||
-rw-r--r-- | net-print/cups/files/str920.patch | 181 |
14 files changed, 21 insertions, 1376 deletions
diff --git a/net-print/cups/ChangeLog b/net-print/cups/ChangeLog index b78e980ac380..21b1f7edee10 100644 --- a/net-print/cups/ChangeLog +++ b/net-print/cups/ChangeLog @@ -1,6 +1,16 @@ # ChangeLog for net-print/cups -# Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-print/cups/ChangeLog,v 1.108 2004/12/31 20:30:20 hardave Exp $ +# Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/net-print/cups/ChangeLog,v 1.109 2005/01/03 16:35:52 lanius Exp $ + + 03 Jan 2005; Heinrich Wendel <lanius@gentoo.org> + -files/cups-1.1.20-str633.patch, + -files/cups-1.1.20-xpdf-CESA-2004-007.patch.bz2, + -files/cups-1.1.20-xpdf2-underflow.patch, + -files/cups-1.1.20-zero-len-udp-dos.patch, + -files/cups-1.1.21-xpdf-CESA-2004-007.patch.bz2, -files/cupsd.conf-1.1.18, + -files/str920.patch, -cups-1.1.20-r5.ebuild, -cups-1.1.22.ebuild, + cups-1.1.23_rc1.ebuild: + cleanups; replace hotplug with coldplug 31 Dec 2004; Hardave Riar <hardave@gentoo.org> cups-1.1.23_rc1.ebuild: Stable on mips, bug #74479 diff --git a/net-print/cups/Manifest b/net-print/cups/Manifest index a6fb0a14f07e..b1444deb6094 100644 --- a/net-print/cups/Manifest +++ b/net-print/cups/Manifest @@ -1,31 +1,10 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - +MD5 d0548fed2ec7ee2dd250d424788abfdb cups-1.1.23_rc1.ebuild 3908 MD5 9feedb7e9cb839e69599bb234da24996 ChangeLog 14128 MD5 26b4b081d538c195dc39bcb2ec8e6f3a metadata.xml 161 -MD5 9e3e1fb857caeb045a32e996e9238da3 cups-1.1.23_rc1.ebuild 4107 -MD5 7d527fbd218552edf324a082dfe75bdd cups-1.1.22.ebuild 3895 -MD5 44312919fe8a6c361fd4d36adc37ac61 cups-1.1.20-r5.ebuild 3648 -MD5 7242b8a2000fe4c5a2b398e6602f7f1c files/cups.pam 234 -MD5 b041836e6ee51876ca7ec86869643018 files/cups.xinetd 368 -MD5 e8608b3605ae84d0f10dbc635d65292a files/cupsd.conf-1.1.18 20538 +MD5 85bc20d893f097ef0f13947179c3838c files/cups-1.1.22-xpdf2-underflow.patch 2301 +MD5 a072271745e21050d873cc0cd2d7b6aa files/digest-cups-1.1.23_rc1 75 MD5 d7e6454c7e8062203b324c5f6a1a2c65 files/cupsd.rc6 515 +MD5 7242b8a2000fe4c5a2b398e6602f7f1c files/cups.pam 234 MD5 7bce495a238ee9dbebb61496f3b3ae51 files/disable-strip.patch 422 -MD5 152f70bcd644a5da56756b8b82193d10 files/cups-1.1.20-str633.patch 268 -MD5 a072271745e21050d873cc0cd2d7b6aa files/digest-cups-1.1.23_rc1 75 -MD5 1219d8139b95119054d7744f6dea85a6 files/str920.patch 5795 -MD5 fbd28fb7593c247a7151704df5a253ea files/cups-1.1.20-zero-len-udp-dos.patch 965 -MD5 bef8c5e9724acac435ca092c232685f8 files/digest-cups-1.1.22 72 MD5 2fce5bedd61300fad1566a41f991a782 files/xpdf-goo-sizet.patch 1424 -MD5 baaa1e0bc63f959779998f5e57de6f9d files/digest-cups-1.1.20-r5 72 -MD5 04f90143ff0dc0329b242a1f955af20e files/cups-1.1.20-xpdf-CESA-2004-007.patch.bz2 968 -MD5 ff2fde0af36236ae1813438275525fa2 files/cups-1.1.21-xpdf-CESA-2004-007.patch.bz2 966 -MD5 ef32d65c7ec41690574a92d2436366df files/cups-1.1.20-xpdf2-underflow.patch 2295 -MD5 85bc20d893f097ef0f13947179c3838c files/cups-1.1.22-xpdf2-underflow.patch 2301 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.9.10 (GNU/Linux) - -iD8DBQFB184NroRuSHgZdywRAmkjAJ4pcQkX3WMebMED4F3urcwQKQJB2QCfS83e -2EfbAqxBn936BxbDoApVDIM= -=vqBy ------END PGP SIGNATURE----- +MD5 b041836e6ee51876ca7ec86869643018 files/cups.xinetd 368 diff --git a/net-print/cups/cups-1.1.20-r5.ebuild b/net-print/cups/cups-1.1.20-r5.ebuild deleted file mode 100644 index c3933725a709..000000000000 --- a/net-print/cups/cups-1.1.20-r5.ebuild +++ /dev/null @@ -1,124 +0,0 @@ -# Copyright 1999-2004 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-print/cups/cups-1.1.20-r5.ebuild,v 1.8 2004/11/07 23:56:25 kumba Exp $ - -inherit eutils flag-o-matic - -DESCRIPTION="The Common Unix Printing System" -HOMEPAGE="http://www.cups.org/" -SRC_URI="ftp://ftp.easysw.com/pub/cups/${PV}/${P}-source.tar.bz2" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="x86 ppc sparc mips alpha arm hppa amd64 ia64 s390 ppc64" -IUSE="ssl slp pam" - -DEP="virtual/libc - pam? ( >=sys-libs/pam-0.75 ) - ssl? ( >=dev-libs/openssl-0.9.6b ) - slp? ( >=net-libs/openslp-1.0.4 ) - >=media-libs/libpng-1.2.1 - >=media-libs/tiff-3.5.5 - >=media-libs/jpeg-6b" -DEPEND="${DEP} - >=sys-devel/autoconf-2.58" -RDEPEND="${DEP} - !virtual/lpr" -PROVIDE="virtual/lpr" - -src_unpack() { - unpack ${A} - cd ${S} - epatch ${FILESDIR}/disable-strip.patch - epatch ${FILESDIR}/${P}-str633.patch - epatch ${FILESDIR}/${P}-zero-len-udp-dos.patch - epatch ${FILESDIR}/str920.patch - ( cd pdftops; epatch ${FILESDIR}/${P}-xpdf-CESA-2004-007.patch.bz2 ) - ( cd pdftops; epatch ${FILESDIR}/xpdf-goo-sizet.patch ) - ( cd pdftops; epatch ${FILESDIR}/${P}-xpdf2-underflow.patch ) - WANT_AUTOCONF=2.5 autoconf || die -} - -src_compile() { - filter-flags -fomit-frame-pointer - - local myconf - use amd64 && replace-flags -Os -O2 - use pam || myconf="${myconf} --disable-pam" - use ssl || myconf="${myconf} --disable-ssl" - use slp || myconf="${myconf} --disable-slp" - - ./configure \ - --with-cups-user=lp \ - --with-cups-group=lp \ - --host=${CHOST} ${myconf} || die "bad ./configure" - - make || die "compile problem" -} - -src_install() { - dodir /var/spool /var/log/cups /etc/cups - - make \ - LOCALEDIR=${D}/usr/share/locale \ - DOCDIR=${D}/usr/share/cups/docs \ - REQUESTS=${D}/var/spool/cups \ - SERVERBIN=${D}/usr/$(get_libdir)/cups \ - DATADIR=${D}/usr/share/cups \ - INCLUDEDIR=${D}/usr/include \ - AMANDIR=${D}/usr/share/man \ - PMANDIR=${D}/usr/share/man \ - MANDIR=${D}/usr/share/man \ - SERVERROOT=${D}/etc/cups \ - LOGDIR=${D}/var/log/cups \ - SBINDIR=${D}/usr/sbin \ - PAMDIR=${D}/etc/pam.d \ - EXEC_PREFIX=${D}/usr \ - LIBDIR=${D}/usr/$(get_libdir) \ - BINDIR=${D}/usr/bin \ - bindir=${D}/usr/bin \ - INITDIR=${D}/etc \ - PREFIX=${D} \ - install || die "install problem" - - dodoc {CHANGES,CREDITS,ENCRYPTION,LICENSE,README}.txt - dosym /usr/share/cups/docs /usr/share/doc/${PF}/html - - #seems nobody installs it like this anymore.. security risk? - #fowners lp.root /usr/bin/lppasswd - #fperms 4755 /usr/bin/lppasswd - - # cleanups - rm -rf ${D}/etc/init.d - rm -rf ${D}/etc/pam.d - rm -rf ${D}/etc/rc* - rm -rf ${D}/usr/share/man/cat* - rm -rf ${D}/etc/cups/{certs,interfaces,ppd} - rm -rf ${D}/var - - sed -i -e "s:^#\(DocumentRoot\).*:\1 /usr/share/cups/docs:" \ - -e "s:^#\(SystemGroup\).*:\1 lp:" \ - -e "s:^#\(User\).*:\1 lp:" \ - -e "s:^#\(Group\).*:\1 lp:" \ - ${D}/etc/cups/cupsd.conf - - insinto /etc/pam.d ; newins ${FILESDIR}/cups.pam cups - exeinto /etc/init.d ; newexe ${FILESDIR}/cupsd.rc6 cupsd - insinto /etc/xinetd.d ; newins ${FILESDIR}/cups.xinetd cups-lpd - - #insinto /etc/cups; newins ${FILESDIR}/cupsd.conf-1.1.18 cupsd.conf -} - -pkg_postinst() { - install -d -m0755 ${ROOT}/var/log/cups - install -d -m0755 ${ROOT}/var/spool - install -m0700 -o lp -d ${ROOT}/var/spool/cups - install -m1700 -o lp -d ${ROOT}/var/spool/cups/tmp - install -m0711 -o lp -d ${ROOT}/etc/cups/certs - install -d -m0755 ${ROOT}/etc/cups/{interfaces,ppd} - - einfo "If you're using a USB printer, \"emerge hotplug; rc-update add" - einfo "hotplug default\" is something you should probably do. This" - einfo "will allow any USB kernel modules (if present) to be loaded" - einfo "automatically at boot." -} diff --git a/net-print/cups/cups-1.1.22.ebuild b/net-print/cups/cups-1.1.22.ebuild deleted file mode 100644 index 4e411800f8d5..000000000000 --- a/net-print/cups/cups-1.1.22.ebuild +++ /dev/null @@ -1,129 +0,0 @@ -# Copyright 1999-2004 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-print/cups/cups-1.1.22.ebuild,v 1.2 2004/11/12 12:01:12 lanius Exp $ - -inherit eutils flag-o-matic - -MY_P=${P/_/} - -DESCRIPTION="The Common Unix Printing System" -HOMEPAGE="http://www.cups.org/" -SRC_URI="ftp://ftp2.easysw.com/pub/cups/${PV}/${MY_P}-source.tar.bz2 ftp://ftp.easysw.com/pub/cups/${PV}/${MY_P}-source.tar.bz2 ftp://ftp.funet.fi/pub/mirrors/ftp.easysw.com/pub/cups/${PV}/${MY_P}-source.tar.bz2" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~x86 ~ppc ~sparc ~mips ~alpha ~arm ~hppa ~amd64 ~ia64 ~s390 ~ppc64" -IUSE="ssl slp pam samba" - -DEP="virtual/libc - pam? ( >=sys-libs/pam-0.75 ) - ssl? ( >=dev-libs/openssl-0.9.6b ) - slp? ( >=net-libs/openslp-1.0.4 ) - >=media-libs/libpng-1.2.1 - >=media-libs/tiff-3.5.5 - >=media-libs/jpeg-6b" -DEPEND="${DEP} - >=sys-devel/autoconf-2.58" -RDEPEND="${DEP} - !virtual/lpr" -PDEPEND="samba? ( net-fs/samba )" -PROVIDE="virtual/lpr" - -S=${WORKDIR}/${MY_P} - -src_unpack() { - unpack ${A} - cd ${S} - epatch ${FILESDIR}/disable-strip.patch - ( cd pdftops; epatch ${FILESDIR}/xpdf-goo-sizet.patch ) - ( cd pdftops; epatch ${FILESDIR}/${P}-xpdf2-underflow.patch ) - WANT_AUTOCONF=2.5 autoconf || die -} - -src_compile() { - filter-flags -fomit-frame-pointer - - local myconf - use amd64 && replace-flags -Os -O2 - use pam || myconf="${myconf} --disable-pam" - use ssl || myconf="${myconf} --disable-ssl" - use slp || myconf="${myconf} --disable-slp" - - ./configure \ - --with-cups-user=lp \ - --with-cups-group=lp \ - --host=${CHOST} ${myconf} || die "bad ./configure" - - make || die "compile problem" -} - -src_install() { - dodir /var/spool /var/log/cups /etc/cups - - make \ - LOCALEDIR=${D}/usr/share/locale \ - DOCDIR=${D}/usr/share/cups/docs \ - REQUESTS=${D}/var/spool/cups \ - SERVERBIN=${D}/usr/$(get_libdir)/cups \ - DATADIR=${D}/usr/share/cups \ - INCLUDEDIR=${D}/usr/include \ - AMANDIR=${D}/usr/share/man \ - PMANDIR=${D}/usr/share/man \ - MANDIR=${D}/usr/share/man \ - SERVERROOT=${D}/etc/cups \ - LOGDIR=${D}/var/log/cups \ - SBINDIR=${D}/usr/sbin \ - PAMDIR=${D}/etc/pam.d \ - EXEC_PREFIX=${D}/usr \ - LIBDIR=${D}/usr/$(get_libdir) \ - BINDIR=${D}/usr/bin \ - bindir=${D}/usr/bin \ - INITDIR=${D}/etc \ - PREFIX=${D} \ - install || die "install problem" - - dodoc {CHANGES,CREDITS,ENCRYPTION,LICENSE,README}.txt - dosym /usr/share/cups/docs /usr/share/doc/${PF}/html - - #seems nobody installs it like this anymore.. security risk? - #fowners lp.root /usr/bin/lppasswd - #fperms 4755 /usr/bin/lppasswd - - # cleanups - rm -rf ${D}/etc/init.d - rm -rf ${D}/etc/pam.d - rm -rf ${D}/etc/rc* - rm -rf ${D}/usr/share/man/cat* - rm -rf ${D}/etc/cups/{certs,interfaces,ppd} - rm -rf ${D}/var - - sed -i -e "s:^#\(DocumentRoot\).*:\1 /usr/share/cups/docs:" \ - -e "s:^#\(SystemGroup\).*:\1 lp:" \ - -e "s:^#\(User\).*:\1 lp:" \ - -e "s:^#\(Group\).*:\1 lp:" \ - ${D}/etc/cups/cupsd.conf - - insinto /etc/pam.d ; newins ${FILESDIR}/cups.pam cups - exeinto /etc/init.d ; newexe ${FILESDIR}/cupsd.rc6 cupsd - insinto /etc/xinetd.d ; newins ${FILESDIR}/cups.xinetd cups-lpd - - #insinto /etc/cups; newins ${FILESDIR}/cupsd.conf-1.1.18 cupsd.conf - - # allow raw printing - sed -i -e "s:#application/octet-stream:application/octet-stream" ${D}/etc/cups/mime.types - sed -i -e "s:#application/octet-stream:application/octet-stream" ${D}/etc/cups/mime.conv -} - -pkg_postinst() { - install -d -m0755 ${ROOT}/var/log/cups - install -d -m0755 ${ROOT}/var/spool - install -m0700 -o lp -d ${ROOT}/var/spool/cups - install -m1700 -o lp -d ${ROOT}/var/spool/cups/tmp - install -m0711 -o lp -d ${ROOT}/etc/cups/certs - install -d -m0755 ${ROOT}/etc/cups/{interfaces,ppd} - - einfo "If you're using a USB printer, \"emerge hotplug; rc-update add" - einfo "hotplug default\" is something you should probably do. This" - einfo "will allow any USB kernel modules (if present) to be loaded" - einfo "automatically at boot." -} diff --git a/net-print/cups/cups-1.1.23_rc1.ebuild b/net-print/cups/cups-1.1.23_rc1.ebuild index 670a8c712136..f01e771bec02 100644 --- a/net-print/cups/cups-1.1.23_rc1.ebuild +++ b/net-print/cups/cups-1.1.23_rc1.ebuild @@ -1,6 +1,6 @@ -# Copyright 1999-2004 Gentoo Foundation +# Copyright 1999-2005 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-print/cups/cups-1.1.23_rc1.ebuild,v 1.7 2005/01/02 10:33:35 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-print/cups/cups-1.1.23_rc1.ebuild,v 1.8 2005/01/03 16:35:52 lanius Exp $ inherit eutils flag-o-matic @@ -87,10 +87,6 @@ src_install() { dodoc {CHANGES,CREDITS,ENCRYPTION,LICENSE,README}.txt dosym /usr/share/cups/docs /usr/share/doc/${PF}/html - #seems nobody installs it like this anymore.. security risk? - #fowners lp.root /usr/bin/lppasswd - #fperms 4755 /usr/bin/lppasswd - # cleanups rm -rf ${D}/etc/init.d rm -rf ${D}/etc/pam.d @@ -112,8 +108,6 @@ src_install() { exeinto /etc/init.d ; newexe ${FILESDIR}/cupsd.rc6 cupsd insinto /etc/xinetd.d ; newins ${FILESDIR}/cups.xinetd cups-lpd - #insinto /etc/cups; newins ${FILESDIR}/cupsd.conf-1.1.18 cupsd.conf - # allow raw printing sed -i -e "s:#application/octet-stream:application/octet-stream" ${D}/etc/cups/mime.types sed -i -e "s:#application/octet-stream:application/octet-stream" ${D}/etc/cups/mime.conv @@ -131,8 +125,8 @@ pkg_postinst() { install -m0711 -o lp -d ${ROOT}/etc/cups/certs install -d -m0755 ${ROOT}/etc/cups/{interfaces,ppd} - einfo "If you're using a USB printer, \"emerge hotplug; rc-update add" - einfo "hotplug default\" is something you should probably do. This" + einfo "If you're using a USB printer, \"emerge coldplug; rc-update add" + einfo "coldplug default\" is something you should probably do. This" einfo "will allow any USB kernel modules (if present) to be loaded" einfo "automatically at boot." } diff --git a/net-print/cups/files/cups-1.1.20-str633.patch b/net-print/cups/files/cups-1.1.20-str633.patch deleted file mode 100644 index 59cba9a6b662..000000000000 --- a/net-print/cups/files/cups-1.1.20-str633.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- pdftops/Gfx.cxx 2003-11-21 14:18:07.000000000 -0500 -+++ pdftops/Gfx.cxx.jev 2004-04-01 16:58:36.447825968 -0500 -@@ -2490,7 +2490,7 @@ - if (flagsObj.isInt()) { - flags = flagsObj.getInt(); - } else { -- flags = 0; -+ flags = 4; - } - flagsObj.free(); - diff --git a/net-print/cups/files/cups-1.1.20-xpdf-CESA-2004-007.patch.bz2 b/net-print/cups/files/cups-1.1.20-xpdf-CESA-2004-007.patch.bz2 Binary files differdeleted file mode 100644 index 4e58c2bbea38..000000000000 --- a/net-print/cups/files/cups-1.1.20-xpdf-CESA-2004-007.patch.bz2 +++ /dev/null diff --git a/net-print/cups/files/cups-1.1.20-xpdf2-underflow.patch b/net-print/cups/files/cups-1.1.20-xpdf2-underflow.patch deleted file mode 100644 index ba6b9d498d7f..000000000000 --- a/net-print/cups/files/cups-1.1.20-xpdf2-underflow.patch +++ /dev/null @@ -1,81 +0,0 @@ -diff -ru XRef.cxx XRef.cxx ---- XRef.cxx 2004-10-29 15:16:45.790089001 +0200 -+++ XRef.cxx 2004-10-29 15:11:54.132168025 +0200 -@@ -66,6 +66,8 @@ - start = str->getStart(); - pos = readTrailer(); - -+ entries = NULL; -+ - // if there was a problem with the trailer, - // try to reconstruct the xref table - if (pos == 0) { -@@ -76,7 +78,7 @@ - - // trailer is ok - read the xref table - } else { -- if (size*sizeof(XRefEntry)/sizeof(XRefEntry) != size) { -+ if ((size < 0) || (size*sizeof(XRefEntry)/sizeof(XRefEntry) != size)) { - error(-1, "Invalid 'size' inside xref table."); - ok = gFalse; - errCode = errDamaged; -@@ -181,7 +183,7 @@ - n = atoi(p); - while ('0' <= *p && *p <= '9') ++p; - while (isspace(*p)) ++p; -- if (p == buf) -+ if ((p == buf) || (n < 0)) /* must make progress */ - return 0; - pos1 += (p - buf) + n * 20; - } -@@ -255,6 +257,10 @@ - } - s[i] = '\0'; - first = atoi(s); -+ if (first < 0) { -+ error(-1, "Invalid 'first'"); -+ goto err2; -+ } - while ((c = str->lookChar()) != EOF && isspace(c)) { - str->getChar(); - } -@@ -266,6 +272,10 @@ - } - s[i] = '\0'; - n = atoi(s); -+ if (n<=0) { -+ error(-1, "Invalid 'n'"); -+ goto err2; -+ } - while ((c = str->lookChar()) != EOF && isspace(c)) { - str->getChar(); - } -@@ -273,7 +283,7 @@ - // table size - if (first + n > size) { - newSize = size + 256; -- if (newSize*sizeof(XRefEntry)/sizeof(XRefEntry) != newSize) { -+ if ((newSize < 0) || (newSize*sizeof(XRefEntry)/sizeof(XRefEntry) != newSize)) { - error(-1, "Invalid 'newSize'"); - goto err2; - } -@@ -406,6 +416,10 @@ - // look for object - } else if (isdigit(*p)) { - num = atoi(p); -+ if (num < 0) { -+ error(-1, "Invalid 'num' parameters."); -+ return gFalse; -+ } - do { - ++p; - } while (*p && isdigit(*p)); -@@ -425,7 +439,7 @@ - if (!strncmp(p, "obj", 3)) { - if (num >= size) { - newSize = (num + 1 + 255) & ~255; -- if (newSize*sizeof(XRefEntry)/sizeof(XRefEntry) != newSize) { -+ if ((newSize < 0) || (newSize*sizeof(XRefEntry)/sizeof(XRefEntry) != newSize)) { - error(-1, "Invalid 'obj' parameters."); - return gFalse; - } diff --git a/net-print/cups/files/cups-1.1.20-zero-len-udp-dos.patch b/net-print/cups/files/cups-1.1.20-zero-len-udp-dos.patch deleted file mode 100644 index 04ab3f2e08e4..000000000000 --- a/net-print/cups/files/cups-1.1.20-zero-len-udp-dos.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- cupsys-1.1.20final+rc1/scheduler/dirsvc.c.OLD 2004-05-27 11:04:32.000000000 -0700 -+++ cupsys-1.1.20final+rc1/scheduler/dirsvc.c 2004-08-20 19:20:08.000000000 -0700 -@@ -1093,7 +1093,7 @@ - int auth; /* Authorization status */ - int len; /* Length of name string */ - int bytes; /* Number of bytes left */ -- char packet[1540], /* Broadcast packet */ -+ char packet[1541], /* Broadcast packet */ - *pptr; /* Pointer into packet */ - struct sockaddr_in srcaddr; /* Source address */ - char srcname[1024]; /* Source hostname */ -@@ -1118,8 +1118,8 @@ - */ - - len = sizeof(srcaddr); -- if ((bytes = recvfrom(BrowseSocket, packet, sizeof(packet), 0, -- (struct sockaddr *)&srcaddr, &len)) <= 0) -+ if ((bytes = recvfrom(BrowseSocket, packet, sizeof(packet)-1, 0, -+ (struct sockaddr *)&srcaddr, &len)) < 0) - { - /* - * "Connection refused" is returned under Linux if the destination port diff --git a/net-print/cups/files/cups-1.1.21-xpdf-CESA-2004-007.patch.bz2 b/net-print/cups/files/cups-1.1.21-xpdf-CESA-2004-007.patch.bz2 Binary files differdeleted file mode 100644 index f285905e8f04..000000000000 --- a/net-print/cups/files/cups-1.1.21-xpdf-CESA-2004-007.patch.bz2 +++ /dev/null diff --git a/net-print/cups/files/cupsd.conf-1.1.18 b/net-print/cups/files/cupsd.conf-1.1.18 deleted file mode 100644 index 1651905a4dd9..000000000000 --- a/net-print/cups/files/cupsd.conf-1.1.18 +++ /dev/null @@ -1,788 +0,0 @@ -# -# "$Id: cupsd.conf-1.1.18,v 1.2 2003/09/25 13:58:56 lanius Exp $" -# -# Sample configuration file for the Common UNIX Printing System (CUPS) -# scheduler. -# -# Copyright 1997-2003 by Easy Software Products, all rights reserved. -# -# These coded instructions, statements, and computer programs are the -# property of Easy Software Products and are protected by Federal -# copyright law. Distribution and use rights are outlined in the file -# "LICENSE.txt" which should have been included with this file. If this -# file is missing or damaged please contact Easy Software Products -# at: -# -# Attn: CUPS Licensing Information -# Easy Software Products -# 44141 Airport View Drive, Suite 204 -# Hollywood, Maryland 20636-3111 USA -# -# Voice: (301) 373-9603 -# EMail: cups-info@cups.org -# WWW: http://www.cups.org -# - -######################################################################## -# # -# This is the CUPS configuration file. If you are familiar with # -# Apache or any of the other popular web servers, we've followed the # -# same format. Any configuration variable used here has the same # -# semantics as the corresponding variable in Apache. If we need # -# different functionality then a different name is used to avoid # -# confusion... # -# # -######################################################################## - - -######## -######## Server Identity -######## - -# -# ServerName: the hostname of your server, as advertised to the world. -# By default CUPS will use the hostname of the system. -# -# To set the default server used by clients, see the client.conf file. -# - -ServerName localhost - -# -# ServerAdmin: the email address to send all complaints/problems to. -# By default CUPS will use "root@hostname". -# - -#ServerAdmin root@your.domain.com - - -######## -######## Server Options -######## - -# -# AccessLog: the access log file; if this does not start with a leading / -# then it is assumed to be relative to ServerRoot. By default set to -# "/var/log/cups/access_log" -# -# You can also use the special name "syslog" to send the output to the -# syslog file or daemon. -# - -#AccessLog /var/log/cups/access_log - -# -# Classification: the classification level of the server. If set, this -# classification is displayed on all pages, and raw printing is disabled. -# The default is the empty string. -# - -#Classification classified -#Classification confidential -#Classification secret -#Classification topsecret -#Classification unclassified - -# -# ClassifyOverride: whether to allow users to override the classification -# on printouts. If enabled, users can limit banner pages to before or -# after the job, and can change the classification of a job, but cannot -# completely eliminate the classification or banners. -# -# The default is off. -# - -#ClassifyOverride off - -# -# DataDir: the root directory for the CUPS data files. -# By default "/usr/share/cups". -# - -#DataDir /usr/share/cups - -# -# DefaultCharset: the default character set to use. If not specified, -# defaults to "utf-8". Note that this can also be overridden in -# HTML documents... -# - -#DefaultCharset utf-8 - -# -# DefaultLanguage: the default language if not specified by the browser. -# If not specified, the current locale is used. -# - -#DefaultLanguage en - -# -# DocumentRoot: the root directory for HTTP documents that are served. -# By default "/usr/share/doc/cups". -# - -DocumentRoot /usr/share/cups/docs - -# -# ErrorLog: the error log file; if this does not start with a leading / -# then it is assumed to be relative to ServerRoot. By default set to -# "/var/log/cups/error_log" -# -# You can also use the special name "syslog" to send the output to the -# syslog file or daemon. -# - -#ErrorLog /var/log/cups/error_log - -# -# FileDevice: determines whether the scheduler will allow new printers -# to be added using device URIs of the form "file:/foo/bar". The default -# is not to allow file devices due to the potential security vulnerability -# and due to the fact that file devices do not support raw printing. -# - -#FileDevice No - - -# -# FontPath: the path to locate all font files (currently only for pstoraster) -# By default "/usr/share/cups/fonts". -# - -#FontPath /usr/share/cups/fonts - -# -# LogLevel: controls the number of messages logged to the ErrorLog -# file and can be one of the following: -# -# debug2 Log everything. -# debug Log almost everything. -# info Log all requests and state changes. -# warn Log errors and warnings. -# error Log only errors. -# none Log nothing. -# - -LogLevel info - -# -# MaxLogSize: controls the maximum size of each log file before they are -# rotated. Defaults to 1048576 (1MB). Set to 0 to disable log rotating. -# - -#MaxLogSize 0 - -# -# PageLog: the page log file; if this does not start with a leading / -# then it is assumed to be relative to ServerRoot. By default set to -# "/var/log/cups/page_log" -# -# You can also use the special name "syslog" to send the output to the -# syslog file or daemon. -# - -#PageLog /var/log/cups/page_log - -# -# PreserveJobHistory: whether or not to preserve the job history after a -# job is completed, cancelled, or stopped. Default is Yes. -# - -#PreserveJobHistory Yes - -# -# PreserveJobFiles: whether or not to preserve the job files after a -# job is completed, cancelled, or stopped. Default is No. -# - -#PreserveJobFiles No - -# -# AutoPurgeJobs: automatically purge jobs when not needed for quotas. -# Default is No. -# - -#AutoPurgeJobs No - -# -# MaxCopies: maximum number of copies that a user can request. Default is -# 100. -# - -#MaxCopies 100 - -# -# MaxJobs: maximum number of jobs to keep in memory (active and completed.) -# Default is 500; the value 0 is used for no limit. -# - -#MaxJobs 500 - -# -# Printcap: the name of the printcap file. Default is /etc/printcap. -# Leave blank to disable printcap file generation. -# - -#Printcap /etc/printcap - -# -# PrintcapFormat: the format of the printcap file, currently either -# BSD or Solaris. The default is "BSD". -# - -#PrintcapFormat BSD -#PrintcapFormat Solaris - -# -# PrintcapGUI: the name of the GUI options panel program to associate -# with print queues under IRIX. The default is "/usr/bin/glpoptions" -# from ESP Print Pro. -# -# This option is only used under IRIX; the options panel program -# must accept the "-d printer" and "-o options" options and write -# the selected printer options back to stdout on completion. -# - -#PrintcapGUI /usr/bin/glpoptions - -# -# RequestRoot: the directory where request files are stored. -# By default "/var/spool/cups". -# - -#RequestRoot /var/spool/cups - -# -# RemoteRoot: the name of the user assigned to unauthenticated accesses -# from remote systems. By default "remroot". -# - -#RemoteRoot remroot - -# -# ServerBin: the root directory for the scheduler executables. -# By default "/usr/lib/cups". -# - -#ServerBin /usr/lib/cups - -# -# ServerRoot: the root directory for the scheduler. -# By default "/etc/cups". -# - -#ServerRoot /etc/cups - - -######## -######## Encryption Support -######## - -# -# ServerCertificate: the file to read containing the server's certificate. -# Defaults to "/etc/cups/ssl/server.crt". -# - -#ServerCertificate /etc/cups/ssl/server.crt - -# -# ServerKey: the file to read containing the server's key. -# Defaults to "/etc/cups/ssl/server.key". -# - -#ServerKey /etc/cups/ssl/server.key - - -######## -######## Filter Options -######## - -# -# User/Group: the user and group the server runs under. Normally this -# must be lp and lp, however you can configure things for another -# user or group as needed. -# -# Note: the server must be run initially as root to support the -# default IPP port of 631. It changes users whenever an external -# program is run, or if the RunAsUser directive is specified... -# - -User lp -Group lp - -# -# RIPCache: the amount of memory that each RIP should use to cache -# bitmaps. The value can be any real number followed by "k" for -# kilobytes, "m" for megabytes, "g" for gigabytes, or "t" for tiles -# (1 tile = 256x256 pixels.) Defaults to "8m" (8 megabytes). -# - -#RIPCache 8m - -# -# TempDir: the directory to put temporary files in. This directory must be -# writable by the user defined above! Defaults to "/var/spool/cups/tmp" or -# the value of the TMPDIR environment variable. -# - -#TempDir /var/spool/cups/tmp - -# -# FilterLimit: sets the maximum cost of all job filters that can be run -# at the same time. A limit of 0 means no limit. A typical job may need -# a filter limit of at least 200; limits less than the minimum required -# by a job force a single job to be printed at any time. -# -# The default limit is 0 (unlimited). -# - -#FilterLimit 0 - -######## -######## Network Options -######## - -# -# Ports/addresses that we listen to. The default port 631 is reserved -# for the Internet Printing Protocol (IPP) and is what we use here. -# -# You can have multiple Port/Listen lines to listen to more than one -# port or address, or to restrict access: -# -# Port 80 -# Port 631 -# Listen hostname -# Listen hostname:80 -# Listen hostname:631 -# Listen 1.2.3.4 -# Listen 1.2.3.4:631 -# -# NOTE: Unfortunately, most web browsers don't support TLS or HTTP Upgrades -# for encryption. If you want to support web-based encryption you'll -# probably need to listen on port 443 (the "https" port...) -# - -#Port 80 -#Port 443 -##Port 631 -Listen 127.0.0.1:631 - -# -# HostNameLookups: whether or not to do lookups on IP addresses to get a -# fully-qualified hostname. This defaults to Off for performance reasons... -# - -#HostNameLookups On - -# -# KeepAlive: whether or not to support the Keep-Alive connection -# option. Default is on. -# - -#KeepAlive On - -# -# KeepAliveTimeout: the timeout before Keep-Alive connections are -# automatically closed. Default is 60 seconds. -# - -#KeepAliveTimeout 60 - -# -# MaxClients: controls the maximum number of simultaneous clients that -# will be handled. Defaults to 100. -# - -#MaxClients 100 - -# -# MaxClientsPerHost: controls the maximum number of simultaneous clients that -# will be handled from a specific host. Defaults to 10 or 1/10th of the -# MaxClients setting, whichever is larger. A value of 0 specifies the -# automatic (10 or 1/10th) setting. -# - -#MaxClientsPerHost 0 - -# -# MaxRequestSize: controls the maximum size of HTTP requests and print files. -# Set to 0 to disable this feature (defaults to 0.) -# - -#MaxRequestSize 0 - -# -# Timeout: the timeout before requests time out. Default is 300 seconds. -# - -#Timeout 300 - - -######## -######## Browsing Options -######## - -# -# Browsing: whether or not to broadcast and/or listen for CUPS printer -# information on the network. Enabled by default. -# - -#Browsing On - -# -# BrowseProtocols: which protocols to use for browsing. Can be -# any of the following separated by whitespace and/or commas: -# -# all - Use all supported protocols. -# cups - Use the CUPS browse protocol. -# slp - Use the SLPv2 protocol. -# -# The default is "cups". -# -# NOTE: If you choose to use SLPv2, it is *strongly* recommended that -# you have at least one SLP Directory Agent (DA) on your -# network. Otherwise, browse updates can take several seconds, -# during which the scheduler will not response to client -# requests. -# - -#BrowseProtocols cups - -# -# BrowseAddress: specifies a broadcast address to be used. By -# default browsing information is not sent! -# -# Note: HP-UX does not properly handle broadcast unless you have a -# Class A, B, C, or D netmask (i.e. no CIDR support). -# -# Note: Using the "global" broadcast address (255.255.255.255) will -# activate a Linux demand-dial link with the default configuration. -# If you have a LAN as well as the dial-up link, use the LAN's -# broadcast address. -# -# The @LOCAL address broadcasts to all non point-to-point interfaces. -# For example, if you have a LAN and a dial-up link, @LOCAL would -# send printer updates to the LAN but not to the dial-up link. -# Similarly, the @IF(name) address sends to the named network -# interface, e.g. @IF(eth0) under Linux. Interfaces are refreshed -# automatically (no more than once every 60 seconds), so they can -# be used on dynamically-configured interfaces, e.g. PPP, 802.11, etc. -# - -#BrowseAddress x.y.z.255 -#BrowseAddress x.y.255.255 -#BrowseAddress x.255.255.255 -#BrowseAddress 255.255.255.255 -#BrowseAddress @LOCAL -#BrowseAddress @IF(name) - -# -# BrowseShortNames: whether or not to use "short" names for remote printers -# when possible (e.g. "printer" instead of "printer@host".) Enabled by -# default. -# - -#BrowseShortNames Yes - -# -# BrowseAllow: specifies an address mask to allow for incoming browser -# packets. The default is to allow packets from all addresses. -# -# BrowseDeny: specifies an address mask to deny for incoming browser -# packets. The default is to deny packets from no addresses. -# -# Both "BrowseAllow" and "BrowseDeny" accept the following notations for -# addresses: -# -# All -# None -# *.domain.com -# .domain.com -# host.domain.com -# nnn.* -# nnn.nnn.* -# nnn.nnn.nnn.* -# nnn.nnn.nnn.nnn -# nnn.nnn.nnn.nnn/mm -# nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm -# @LOCAL -# @IF(name) -# -# The hostname/domainname restrictions only work if you have turned hostname -# lookups on! -# - -#BrowseAllow address -#BrowseDeny address - -# -# BrowseInterval: the time between browsing updates in seconds. Default -# is 30 seconds. -# -# Note that browsing information is sent whenever a printer's state changes -# as well, so this represents the maximum time between updates. -# -# Set this to 0 to disable outgoing broadcasts so your local printers are -# not advertised but you can still see printers on other hosts. -# - -#BrowseInterval 30 - -# -# BrowseOrder: specifies the order of BrowseAllow/BrowseDeny comparisons. -# - -#BrowseOrder allow,deny -#BrowseOrder deny,allow - -# -# BrowsePoll: poll the named server(s) for printers -# - -#BrowsePoll address:port - -# -# BrowsePort: the port used for UDP broadcasts. By default this is -# the IPP port; if you change this you need to do it on all servers. -# Only one BrowsePort is recognized. -# - -#BrowsePort 631 - -# -# BrowseRelay: relay browser packets from one address/network to another. -# - -#BrowseRelay source-address destination-address -#BrowseRelay @IF(src) @IF(dst) - -# -# BrowseTimeout: the timeout for network printers - if we don't -# get an update within this time the printer will be removed -# from the printer list. This number definitely should not be -# less the BrowseInterval value for obvious reasons. Defaults -# to 300 seconds. -# - -#BrowseTimeout 300 - -# -# ImplicitClasses: whether or not to use implicit classes. -# -# Printer classes can be specified explicitly in the classes.conf -# file, implicitly based upon the printers available on the LAN, or -# both. -# -# When ImplicitClasses is On, printers on the LAN with the same name -# (e.g. Acme-LaserPrint-1000) will be put into a class with the same -# name. This allows you to setup multiple redundant queues on a LAN -# without a lot of administrative difficulties. If a user sends a -# job to Acme-LaserPrint-1000, the job will go to the first available -# queue. -# -# Enabled by default. -# - -#ImplicitClasses On - -# -# ImplicitAnyClasses: whether or not to create "AnyPrinter" implicit -# classes. -# -# When ImplicitAnyClasses is On and a local queue of the same name -# exists, e.g. "printer", "printer@server1", "printer@server1", then -# an implicit class called "Anyprinter" is created instead. -# -# When ImplicitAnyClasses is Off, implicit classes are not created -# when there is a local queue of the same name. -# -# Disabled by default. -# - -#ImplicitAnyCLasses Off - -# -# HideImplicitMembers: whether or not to show the members of an -# implicit class. -# -# When HideImplicitMembers is On, any remote printers that are -# part of an implicit class are hidden from the user, who will -# then only see a single queue even though many queues will be -# supporting the implicit class. -# -# Enabled by default. -# - -#HideImplicitMembers On - - -######## -######## Security Options -######## - -# -# SystemGroup: the group name for "System" (printer administration) -# access. The default varies depending on the operating system, but -# will be "sys", "system", or "root" (checked for in that order.) -# - -SystemGroup lp - -# -# RootCertDuration: How frequently the root certificate is regenerated. -# Defaults to 300 seconds. -# - -#RootCertDuration 300 - -# -# Access permissions for each directory served by the scheduler. -# Locations are relative to DocumentRoot... -# -# AuthType: the authorization to use: -# -# None - Perform no authentication -# Basic - Perform authentication using the HTTP Basic method. -# Digest - Perform authentication using the HTTP Digest method. -# -# (Note: local certificate authentication can be substituted by -# the client for Basic or Digest when connecting to the -# localhost interface) -# -# AuthClass: the authorization class; currently only "Anonymous", "User", -# "System" (valid user belonging to group SystemGroup), and "Group" -# (valid user belonging to the specified group) are supported. -# -# AuthGroupName: the group name for "Group" authorization. -# -# Order: the order of Allow/Deny processing. -# -# Allow: allows access from the specified hostname, domain, IP address, -# network, or interface. -# -# Deny: denies access from the specified hostname, domain, IP address, -# network, or interface. -# -# Both "Allow" and "Deny" accept the following notations for addresses: -# -# All -# None -# *.domain.com -# .domain.com -# host.domain.com -# nnn.* -# nnn.nnn.* -# nnn.nnn.nnn.* -# nnn.nnn.nnn.nnn -# nnn.nnn.nnn.nnn/mm -# nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm -# @LOCAL -# @IF(name) -# -# The host and domain address require that you enable hostname lookups -# with "HostNameLookups On" above. -# -# The @LOCAL address allows or denies from all non point-to-point -# interfaces. For example, if you have a LAN and a dial-up link, -# @LOCAL could allow connections from the LAN but not from the dial-up -# link. Similarly, the @IF(name) address allows or denies from the -# named network interface, e.g. @IF(eth0) under Linux. Interfaces are -# refreshed automatically (no more than once every 60 seconds), so -# they can be used on dynamically-configured interfaces, e.g. PPP, -# 802.11, etc. -# -# Encryption: whether or not to use encryption; this depends on having -# the OpenSSL library linked into the CUPS library and scheduler. -# -# Possible values: -# -# Always - Always use encryption (SSL) -# Never - Never use encryption -# Required - Use TLS encryption upgrade -# IfRequested - Use encryption if the server requests it -# -# The default value is "IfRequested". -# - -<Location /> -Order Deny,Allow -Deny From All -Allow From 127.0.0.1 -</Location> - -#<Location /classes> -# -# You may wish to limit access to printers and classes, either with Allow -# and Deny lines, or by requiring a username and password. -# -#</Location> - -#<Location /classes/name> -# -# You may wish to limit access to printers and classes, either with Allow -# and Deny lines, or by requiring a username and password. -# -#</Location> - -<Location /jobs> -# -# You may wish to limit access to job operations, either with Allow -# and Deny lines, or by requiring a username and password. -# -AuthType Basic -AuthClass System - -</Location> - -#<Location /printers> -# -# You may wish to limit access to printers and classes, either with Allow -# and Deny lines, or by requiring a username and password. -# -#</Location> - -#<Location /printers/name> -# -# You may wish to limit access to printers and classes, either with Allow -# and Deny lines, or by requiring a username and password. -# - -## Anonymous access (default) -#AuthType None - -## Require a username and password (Basic authentication) -#AuthType Basic -#AuthClass User - -## Require a username and password (Digest/MD5 authentication) -#AuthType Digest -#AuthClass User - -## Restrict access to local domain -#Order Deny,Allow -#Deny From All -#Allow From .mydomain.com -#</Location> - -<Location /admin> -# -# You definitely will want to limit access to the administration functions. -# The default configuration requires a local connection from a user who -# is a member of the system group to do any admin tasks. You can change -# the group name using the SystemGroup directive. -# - -AuthType Basic -AuthClass System - -## Restrict access to local domain -Order Deny,Allow -Deny From All -Allow From 127.0.0.1 - -#Encryption Required -</Location> - -# -# End of "$Id: cupsd.conf-1.1.18,v 1.2 2003/09/25 13:58:56 lanius Exp $". -# diff --git a/net-print/cups/files/digest-cups-1.1.20-r5 b/net-print/cups/files/digest-cups-1.1.20-r5 deleted file mode 100644 index 002ebb34be36..000000000000 --- a/net-print/cups/files/digest-cups-1.1.20-r5 +++ /dev/null @@ -1 +0,0 @@ -MD5 09d0be2bad1b0617bc0eba6eef81f6e9 cups-1.1.20-source.tar.bz2 3741510 diff --git a/net-print/cups/files/digest-cups-1.1.22 b/net-print/cups/files/digest-cups-1.1.22 deleted file mode 100644 index dae8de805e2e..000000000000 --- a/net-print/cups/files/digest-cups-1.1.22 +++ /dev/null @@ -1 +0,0 @@ -MD5 fe0a1b0fedccfe8b2e35e0cea1e5f0a9 cups-1.1.22-source.tar.bz2 8527045 diff --git a/net-print/cups/files/str920.patch b/net-print/cups/files/str920.patch deleted file mode 100644 index 27a3f12c5b5c..000000000000 --- a/net-print/cups/files/str920.patch +++ /dev/null @@ -1,181 +0,0 @@ -Index: ipp.c -=================================================================== -RCS file: /development/cvs/cups/scheduler/ipp.c,v -retrieving revision 1.233 -diff -u -r1.233 ipp.c ---- scheduler/ipp.c 23 Aug 2004 18:36:50 -0000 1.233 -+++ scheduler/ipp.c 4 Oct 2004 20:19:17 -0000 -@@ -1222,7 +1222,9 @@ - } - - LogMessage(L_INFO, "Setting %s device-uri to \"%s\" (was \"%s\".)", -- printer->name, attr->values[0].string.text, printer->device_uri); -+ printer->name, -+ cupsdSanitizeURI(attr->values[0].string.text, line, sizeof(line)), -+ cupsdSanitizeURI(printer->device_uri, resource, sizeof(resource))); - - SetString(&printer->device_uri, attr->values[0].string.text); - } -Index: job.c -=================================================================== -RCS file: /development/cvs/cups/scheduler/job.c,v -retrieving revision 1.231 -diff -u -r1.231 job.c ---- scheduler/job.c 4 Oct 2004 19:40:35 -0000 1.231 -+++ scheduler/job.c 4 Oct 2004 20:19:17 -0000 -@@ -1202,6 +1202,7 @@ - classification[1024], /* CLASSIFICATION environment variable */ - content_type[1024], /* CONTENT_TYPE environment variable */ - device_uri[1024], /* DEVICE_URI environment variable */ -+ sani_uri[1024], /* Sanitized DEVICE_URI env var */ - ppd[1024], /* PPD environment variable */ - class_name[255], /* CLASS environment variable */ - printer_name[255], /* PRINTER environment variable */ -@@ -1803,7 +1804,12 @@ - envp[envc] = NULL; - - for (i = 0; i < envc; i ++) -- LogMessage(L_DEBUG, "StartJob: envp[%d]=\"%s\"", i, envp[i]); -+ if (strncmp(envp[i], "DEVICE_URI=", 11)) -+ LogMessage(L_DEBUG, "StartJob: envp[%d]=\"%s\"", i, envp[i]); -+ else -+ LogMessage(L_DEBUG, "StartJob: envp[%d]=\"DEVICE_URI=%s\"", i, -+ cupsdSanitizeURI(printer->device_uri, sani_uri, -+ sizeof(sani_uri))); - - current->current_file ++; - -Index: printers.c -=================================================================== -RCS file: /development/cvs/cups/scheduler/printers.c,v -retrieving revision 1.164 -diff -u -r1.164 printers.c ---- scheduler/printers.c 4 Oct 2004 19:40:35 -0000 1.164 -+++ scheduler/printers.c 4 Oct 2004 20:19:17 -0000 -@@ -43,6 +43,7 @@ - * ValidateDest() - Validate a printer/class destination. - * WritePrintcap() - Write a pseudo-printcap file for older - * applications that need it... -+ * cupsdSanitizeURI() - Sanitize a device URI... - * write_irix_config() - Update the config files used by the IRIX - * desktop tools. - * write_irix_state() - Update the status files used by IRIX printing -@@ -1150,11 +1151,7 @@ - SetPrinterAttrs(printer_t *p) /* I - Printer to setup */ - { - char uri[HTTP_MAX_URI]; /* URI for printer */ -- char method[HTTP_MAX_URI], /* Method portion of URI */ -- username[HTTP_MAX_URI], /* Username portion of URI */ -- host[HTTP_MAX_URI], /* Host portion of URI */ -- resource[HTTP_MAX_URI]; /* Resource portion of URI */ -- int port; /* Port portion of URI */ -+ char resource[HTTP_MAX_URI]; /* Resource portion of URI */ - int i; /* Looping var */ - char filename[1024]; /* Name of PPD file */ - int num_media; /* Number of media options */ -@@ -1360,12 +1357,7 @@ - * http://..., ipp://..., etc. - */ - -- httpSeparate(p->device_uri, method, username, host, &port, resource); -- if (port) -- snprintf(uri, sizeof(uri), "%s://%s:%d%s", method, host, port, -- resource); -- else -- snprintf(uri, sizeof(uri), "%s://%s%s", method, host, resource); -+ cupsdSanitizeURI(p->device_uri, uri, sizeof(uri)); - } - else - { -@@ -2172,6 +2164,74 @@ - */ - - cupsFileClose(fp); -+} -+ -+ -+/* -+ * 'cupsdSanitizeURI()' - Sanitize a device URI... -+ */ -+ -+char * /* O - New device URI */ -+cupsdSanitizeURI(const char *uri, /* I - Original device URI */ -+ char *buffer, /* O - New device URI */ -+ int buflen) /* I - Size of new device URI buffer */ -+{ -+ char *start, /* Start of data after scheme */ -+ *slash, /* First slash after scheme:// */ -+ *ptr; /* Pointer into user@host:port part */ -+ -+ -+ /* -+ * Range check input... -+ */ -+ -+ if (!uri || !buffer || buflen < 2) -+ return (NULL); -+ -+ /* -+ * Copy the device URI to the new buffer... -+ */ -+ -+ strlcpy(buffer, uri, buflen); -+ -+ /* -+ * Find the end of the scheme:// part... -+ */ -+ -+ if ((ptr = strchr(buffer, ':')) == NULL) -+ return (buffer); /* No scheme: part... */ -+ -+ for (start = ptr + 1; *start; start ++) -+ if (*start != '/') -+ break; -+ -+ /* -+ * Find the next slash (/) in the URI... -+ */ -+ -+ if ((slash = strchr(start, '/')) == NULL) -+ slash = start + strlen(start); /* No slash, point to the end */ -+ -+ /* -+ * Check for an @ sign before the slash... -+ */ -+ -+ if ((ptr = strchr(start, '@')) != NULL && ptr < slash) -+ { -+ /* -+ * Found an @ sign and it is before the resource part, so we have -+ * an authentication string. Copy the remaining URI over the -+ * authentication string... -+ */ -+ -+ cups_strcpy(start, ptr + 1); -+ } -+ -+ /* -+ * Return the new device URI... -+ */ -+ -+ return (buffer); - } - - -Index: printers.h -=================================================================== -RCS file: /development/cvs/cups/scheduler/printers.h,v -retrieving revision 1.39 -diff -u -r1.39 printers.h ---- scheduler/printers.h 23 Aug 2004 18:00:59 -0000 1.39 -+++ pscheduler/rinters.h 4 Oct 2004 20:19:17 -0000 -@@ -126,6 +126,9 @@ - cups_ptype_t *dtype); - extern void WritePrintcap(void); - -+extern char *cupsdSanitizeURI(const char *uri, char *buffer, -+ int buflen); -+ - - /* - * End of "$Id: str920.patch,v 1.1 2004/10/06 13:17:28 lanius Exp $". |