diff options
author | Timo Gurr <tgurr@gentoo.org> | 2009-04-17 01:14:40 +0000 |
---|---|---|
committer | Timo Gurr <tgurr@gentoo.org> | 2009-04-17 01:14:40 +0000 |
commit | 9bc674f0495644d95bfdc99d03449f23d72a197d (patch) | |
tree | bfa6229f874a520a07f330fa514fd982635a55eb /net-print | |
parent | Bump w.r.t. bug 263028. (diff) | |
download | historical-9bc674f0495644d95bfdc99d03449f23d72a197d.tar.gz historical-9bc674f0495644d95bfdc99d03449f23d72a197d.tar.bz2 historical-9bc674f0495644d95bfdc99d03449f23d72a197d.zip |
Version bump including security fixes, see bug #263070. Drop 3rd party pdftops perl wrapper in favor of the brand new upstream filter.
Package-Manager: portage-2.2_rc30/cvs/Linux x86_64
Diffstat (limited to 'net-print')
-rw-r--r-- | net-print/cups/ChangeLog | 13 | ||||
-rw-r--r-- | net-print/cups/Manifest | 11 | ||||
-rw-r--r-- | net-print/cups/cups-1.3.10.ebuild (renamed from net-print/cups/cups-1.3.8-r2.ebuild) | 30 | ||||
-rw-r--r-- | net-print/cups/files/cups-1.3.8-CVE-2008-3639.patch | 40 | ||||
-rw-r--r-- | net-print/cups/files/cups-1.3.8-CVE-2008-3640.patch | 85 | ||||
-rw-r--r-- | net-print/cups/files/cups-1.3.8-CVE-2008-3641.patch | 131 | ||||
-rw-r--r-- | net-print/cups/files/cups-1.3.8-str2892-1.3.patch | 88 | ||||
-rw-r--r-- | net-print/cups/files/cups-1.3.8-str2924.patch | 71 |
8 files changed, 22 insertions, 447 deletions
diff --git a/net-print/cups/ChangeLog b/net-print/cups/ChangeLog index 99ad483ede1a..b72b9a0d56f0 100644 --- a/net-print/cups/ChangeLog +++ b/net-print/cups/ChangeLog @@ -1,6 +1,17 @@ # ChangeLog for net-print/cups # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-print/cups/ChangeLog,v 1.345 2009/03/30 14:25:12 loki_val Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-print/cups/ChangeLog,v 1.346 2009/04/17 01:14:40 tgurr Exp $ + +*cups-1.3.10 (17 Apr 2009) + + 17 Apr 2009; Timo Gurr <tgurr@gentoo.org> + -files/cups-1.3.8-CVE-2008-3639.patch, + -files/cups-1.3.8-CVE-2008-3640.patch, + -files/cups-1.3.8-CVE-2008-3641.patch, + -files/cups-1.3.8-str2892-1.3.patch, -files/cups-1.3.8-str2924.patch, + -cups-1.3.8-r2.ebuild, +cups-1.3.10.ebuild: + Version bump including security fixes, see bug #263070. Drop 3rd party + pdftops perl wrapper in favor of the brand new upstream filter. 30 Mar 2009; Peter Alfredsen <loki_val@gentoo.org> cups-1.3.8-r2.ebuild, cups-1.3.9-r1.ebuild: diff --git a/net-print/cups/Manifest b/net-print/cups/Manifest index b1038ce912f2..3ec00bc66d6f 100644 --- a/net-print/cups/Manifest +++ b/net-print/cups/Manifest @@ -1,16 +1,11 @@ AUX cups-1.3.0-configure.patch 651 RMD160 e4c7f45d7ddc28157433bf025c7f946c7e3b6d6a SHA1 101bf1893b56640d9fa82078e29319fbbd1449c7 SHA256 d6e5e60a982a3c093c0d0f89cf865e2b4c36290f5b1e188b7bf305d210070736 AUX cups-1.3.7-backend-https.patch 450 RMD160 9a1ad48d2be40c89510ccc512649f0a2eb5543b0 SHA1 d3dd55fcdee47855d6b7c1443adb6c2b3d8c9cdb SHA256 060f929ae3eae5dc411ce6352a0d50c3296b013974f034fc2ad8d6bb0c81b45a -AUX cups-1.3.8-CVE-2008-3639.patch 1098 RMD160 0c258e91ae4ac3c85facfb6d0adaa43d753a0ebd SHA1 487549912c483cc5dcd9b097da9e43f6f75306cc SHA256 92ced97fb6af55416f2968878ef90a97d76bdfdbb91b9f204a3fac6dbc77c58f -AUX cups-1.3.8-CVE-2008-3640.patch 2487 RMD160 5c0180fdbf7521c651de7f0aeaddf238485863ca SHA1 50dcec44a42f715218d5d18c5d2a1c9ffa3e6aab SHA256 6a75dd6f479513683c018f6012c1c53b25cadc5626dd256aeebddedda654590e -AUX cups-1.3.8-CVE-2008-3641.patch 4066 RMD160 42eb0aba35a2df15a32a68ba255675cc5550d4df SHA1 4c0fd2844091d3a73cf34bb0ec022cc62dbe9b86 SHA256 fa053a07ea03cd8b5d8345acc5ab91efb40bd2fe42e03ac08921d4bdb0073719 -AUX cups-1.3.8-str2892-1.3.patch 2587 RMD160 6a189f1921760833028302619515a0ae895f2978 SHA1 befc3c7849bc5a53e29c9c3b26fb708ee8dc43f8 SHA256 b75b30ed996eb41baeb6e5dc35c82883e9e4d27c2c1febe0f09b2e9018184c2f -AUX cups-1.3.8-str2924.patch 2296 RMD160 dc80896b4a12834be0c99ee82623cbee78c33754 SHA1 1f29545527a98c1371b52db5a148c31494ae9361 SHA256 a0ac058f3f276d73a1e2494cdadd30fae6941b87aa703cf8db6c6da8b0cafa44 AUX cups-1.3.9-CVE-2008-5286.patch 761 RMD160 7abe5d746cc2c8135e946de492b767137204345a SHA1 1e904c63e5bb2ef2e6f9792e3b2c3bcb89cdc6e8 SHA256 e85dc13164dd1c7b7fa978aeb5b6df886d9595319aab5fadde57e35d0259aee3 AUX cupsd.init.d 293 RMD160 19fbef21cee7e472e7028f3101b680baa0089c54 SHA1 e6b27b2638fec258fe2f55c926c2530e909ca3d2 SHA256 b4268a6bae95e96b6af21c3716ecc905073736ce7dc33be1489d574a447f3c48 AUX pdftops-1.20.gentoo 10412 RMD160 16e229662c47e03af1d1f4cb5764a76d17a66642 SHA1 6afb8a655b6ff013a2c8c8cbfb615ba1e561503b SHA256 ac5fa01ca776d75bd7cef62eef9f6b0c3945ee87e8950b40ca9f9f3ff46a16c1 -DIST cups-1.3.8-source.tar.bz2 3978390 RMD160 dc077c748ea7c8df7333260a96c7527a9b8d7c9e SHA1 3943608111426722ea6a2e0db588636b013acc1a SHA256 d488980f84ad0e6044a67859144306980624cafb654eb0cab071b3e46fee6e1d +DIST cups-1.3.10-source.tar.bz2 3778970 RMD160 9c8f5366f84b5f9087f7a29bace677db309a933f SHA1 48689f07104106216d35198cc90ed56df33faf38 SHA256 9701a545a6a05a991beeb49b41fbb4d450c3bdbb4eb74b132b0d2988640bb566 DIST cups-1.3.9-source.tar.bz2 3993875 RMD160 ec8bd9fc6ee45648b6eb22949f44fc4cf2defd4e SHA1 c1a596b355201320456b393446286fe3947bce16 SHA256 38856ab4b8bcf51be2bed1f554cd8089c1f2448a6979c055762b49eda82a6b6b -EBUILD cups-1.3.8-r2.ebuild 8911 RMD160 8d553fc3301854aeb832fd6909e7dca2c1b2c20d SHA1 fba3cc465183fef5baade0eec681ef7f1bdf8b47 SHA256 adc0057d976753110886aee98c31485730fac815fe97b0daa038897d0f4104b0 +EBUILD cups-1.3.10.ebuild 8224 RMD160 9940f55af77e273d0e58c728760a36276495c04e SHA1 59ac5c07aeadec27512ba7a0cec0660b9a18ac97 SHA256 5d840756ec175504a42b27cefa45b3da78cbebfcf9ed06b14d148bc6539cf451 EBUILD cups-1.3.9-r1.ebuild 8637 RMD160 7e8a89842aa7bd739f7efc9d0c793d7be00e8b59 SHA1 9a6ccdcfc3a840d4c725facf205aa5482f593317 SHA256 93c4f4eba0fdcb1af9ddf176d1e9e0da47c13a9560f2b92ecc275cb897bb1350 -MISC ChangeLog 50999 RMD160 ded7e80bccfbb951476aaac8ee6caded946ff024 SHA1 c9abce2427899b8e9ee758df5bf2d9078f877fcf SHA256 ae7e01ce2be51c93f63a7ea3c52a0586b03e256aeb472beb84ca07904fba50cf +MISC ChangeLog 51449 RMD160 f114dcb30c90b36b3cdea4736ea85df4917ff405 SHA1 870a417d673ca71cacbd150dbce71b009fb73af5 SHA256 e09718ff4575dc844d2b081ce2e4672d8f38c4b424909042859048b7be12f153 MISC metadata.xml 161 RMD160 1e5b1e42553c8869b93c4a5448e9a2a2ed9fe525 SHA1 209c6a46e4cdd891980115e42ba419e3799f8088 SHA256 7c85e6739a71f5bb23e8de36c88677d772946e61f7285892f7554e37bd2bca76 diff --git a/net-print/cups/cups-1.3.8-r2.ebuild b/net-print/cups/cups-1.3.10.ebuild index 9f0f55e49976..dd27f2b338da 100644 --- a/net-print/cups/cups-1.3.8-r2.ebuild +++ b/net-print/cups/cups-1.3.10.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2009 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-print/cups/cups-1.3.8-r2.ebuild,v 1.5 2009/03/30 14:25:12 loki_val Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-print/cups/cups-1.3.10.ebuild,v 1.1 2009/04/17 01:14:40 tgurr Exp $ inherit autotools eutils flag-o-matic multilib pam @@ -12,7 +12,7 @@ SRC_URI="http://ftp.easysw.com/pub/cups/${PV}/${MY_P}-source.tar.bz2" LICENSE="GPL-2" SLOT="0" -KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc ~sparc-fbsd x86 ~x86-fbsd" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd" IUSE="acl avahi dbus gnutls java jpeg kerberos ldap pam perl php png ppds python samba slp ssl static tiff X xinetd zeroconf" COMMON_DEPEND="acl? ( kernel_linux? ( sys-apps/acl sys-apps/attr ) ) @@ -101,23 +101,15 @@ src_unpack() { # create a missing symlink to allow https printing via IPP, bug #217293 epatch "${FILESDIR}/${PN}-1.3.7-backend-https.patch" - # Upstream fix for using the webinterface via SSL with FF3, upstream bug STR #2892 - epatch "${FILESDIR}/${PN}-1.3.8-str2892-1.3.patch" - - # Upstream fix for broken .desktop file - epatch "${FILESDIR}/${PN}-1.3.8-str2924.patch" - - # security bug #238976 - epatch "${FILESDIR}/${PN}-1.3.8-CVE-2008-3639.patch" - epatch "${FILESDIR}/${PN}-1.3.8-CVE-2008-3640.patch" - epatch "${FILESDIR}/${PN}-1.3.8-CVE-2008-3641.patch" - # cups does not use autotools "the usual way" and ship a static config.h.in eaclocal eautoconf } src_compile() { + # Fails to compile on SH + use sh && replace-flags -O? -O0 + # needed to prevent ghostscript compile failures use kerberos && strip-flags @@ -159,6 +151,7 @@ src_compile() { --with-cups-group=lp \ --with-docdir=/usr/share/cups/html \ --with-languages=${LINGUAS} \ + --with-pdftops=pdftops \ --with-system-groups=lpadmin \ --with-xinetd=/etc/xinetd.d \ $(use_enable acl) \ @@ -176,8 +169,8 @@ src_compile() { $(use_with php) \ $(use_with python) \ --enable-libpaper \ + --enable-pdftops \ --enable-threads \ - --disable-pdftops \ ${myconf} # install in /usr/libexec always, instead of using /usr/lib/cups, as that @@ -218,15 +211,6 @@ src_install() { rm -rf "${D}"/etc/xinetd.d fi - # install pdftops filter - exeinto /usr/libexec/cups/filter/ - newexe "${FILESDIR}"/pdftops-1.20.gentoo pdftops - - # only for gs-esp this is correct, see bug #163897 - if has_version app-text/ghostscript-gpl || has_version app-text/ghostscript-gnu ; then - sed -i -e "s:#application/vnd.cups-postscript:application/vnd.cups-postscript:" "${D}"/etc/cups/mime.convs - fi - keepdir /usr/share/cups/profiles /usr/libexec/cups/driver /var/log/cups \ /var/run/cups/certs /var/cache/cups /var/spool/cups/tmp /etc/cups/ssl diff --git a/net-print/cups/files/cups-1.3.8-CVE-2008-3639.patch b/net-print/cups/files/cups-1.3.8-CVE-2008-3639.patch deleted file mode 100644 index 752274309a46..000000000000 --- a/net-print/cups/files/cups-1.3.8-CVE-2008-3639.patch +++ /dev/null @@ -1,40 +0,0 @@ -Index: cups-1.3.8/filter/image-sgilib.c -=================================================================== ---- cups-1.3.8.orig/filter/image-sgilib.c -+++ cups-1.3.8/filter/image-sgilib.c -@@ -640,13 +640,14 @@ read_rle8(FILE *fp, /* I - Fi - if (ch & 128) - { - for (i = 0; i < count; i ++, row ++, xsize --, length ++) -- *row = getc(fp); -+ if (xsize > 0) -+ *row = getc(fp); - } - else - { - ch = getc(fp); - length ++; -- for (i = 0; i < count; i ++, row ++, xsize --) -+ for (i = 0; i < count && xsize > 0; i ++, row ++, xsize --) - *row = ch; - } - } -@@ -685,14 +686,15 @@ read_rle16(FILE *fp, /* I - F - if (ch & 128) - { - for (i = 0; i < count; i ++, row ++, xsize --, length ++) -- *row = getshort(fp); -+ if (xsize > 0) -+ *row = getshort(fp); - } - else - { - ch = getshort(fp); - length ++; -- for (i = 0; i < count; i ++, row ++, xsize --) -- *row = ch; -+ for (i = 0; i < count && xsize > 0; i ++, row ++, xsize --) -+ *row = ch; - } - } - diff --git a/net-print/cups/files/cups-1.3.8-CVE-2008-3640.patch b/net-print/cups/files/cups-1.3.8-CVE-2008-3640.patch deleted file mode 100644 index a3158cd20130..000000000000 --- a/net-print/cups/files/cups-1.3.8-CVE-2008-3640.patch +++ /dev/null @@ -1,85 +0,0 @@ -Index: cups-1.3.8/filter/texttops.c -=================================================================== ---- cups-1.3.8.orig/filter/texttops.c -+++ cups-1.3.8/filter/texttops.c -@@ -173,6 +173,14 @@ WriteProlog(const char *title, /* I - T - SizeColumns = (PageRight - PageLeft) / 72.0 * CharsPerInch; - SizeLines = (PageTop - PageBottom) / 72.0 * LinesPerInch; - -+ if (SizeColumns <= 0 || SizeColumns > 32767 || -+ SizeLines <= 0 || SizeLines > 32767) -+ { -+ _cupsLangPrintf(stderr, _("ERROR: Unable to print %dx%d text page!\n"), -+ SizeColumns, SizeLines); -+ exit(1); -+ } -+ - Page = calloc(sizeof(lchar_t *), SizeLines); - Page[0] = calloc(sizeof(lchar_t), SizeColumns * SizeLines); - for (i = 1; i < SizeLines; i ++) -@@ -187,6 +195,13 @@ WriteProlog(const char *title, /* I - T - else - ColumnWidth = SizeColumns; - -+ if (ColumnWidth <= 0) -+ { -+ _cupsLangPrintf(stderr, _("ERROR: Unable to print %d text columns!\n"), -+ PageColumns); -+ exit(1); -+ } -+ - /* - * Output the DSC header... - */ -Index: cups-1.3.8/filter/textcommon.c -=================================================================== ---- cups-1.3.8.orig/filter/textcommon.c -+++ cups-1.3.8/filter/textcommon.c -@@ -3,7 +3,7 @@ - * - * Common text filter routines for the Common UNIX Printing System (CUPS). - * -- * Copyright 2007 by Apple Inc. -+ * Copyright 2007-2008 by Apple Inc. - * Copyright 1997-2007 by Easy Software Products. - * - * These coded instructions, statements, and computer programs are the -@@ -605,14 +605,38 @@ TextMain(const char *name, /* I - Name o - !strcasecmp(val, "yes"); - - if ((val = cupsGetOption("columns", num_options, options)) != NULL) -+ { - PageColumns = atoi(val); - -+ if (PageColumns < 1) -+ { -+ _cupsLangPrintf(stderr, _("ERROR: Bad columns value %d!\n"), PageColumns); -+ return (1); -+ } -+ } -+ - if ((val = cupsGetOption("cpi", num_options, options)) != NULL) -+ { - CharsPerInch = atof(val); - -+ if (CharsPerInch <= 0.0) -+ { -+ _cupsLangPrintf(stderr, _("ERROR: Bad cpi value %f!\n"), CharsPerInch); -+ return (1); -+ } -+ } -+ - if ((val = cupsGetOption("lpi", num_options, options)) != NULL) -+ { - LinesPerInch = atof(val); - -+ if (LinesPerInch <= 0.0) -+ { -+ _cupsLangPrintf(stderr, _("ERROR: Bad lpi value %f!\n"), LinesPerInch); -+ return (1); -+ } -+ } -+ - if (PrettyPrint) - PageTop -= 216.0f / LinesPerInch; - diff --git a/net-print/cups/files/cups-1.3.8-CVE-2008-3641.patch b/net-print/cups/files/cups-1.3.8-CVE-2008-3641.patch deleted file mode 100644 index 4bb8330326af..000000000000 --- a/net-print/cups/files/cups-1.3.8-CVE-2008-3641.patch +++ /dev/null @@ -1,131 +0,0 @@ -Index: cups-1.3.8/filter/hpgl-attr.c -=================================================================== ---- cups-1.3.8.orig/filter/hpgl-attr.c -+++ cups-1.3.8/filter/hpgl-attr.c -@@ -197,8 +197,18 @@ NP_number_pens(int num_params, /* I - - if (num_params == 0) - PenCount = 8; -- else if (num_params == 1 && params[0].value.number <= 1024) -- PenCount = (int)params[0].value.number; -+ else if (num_params == 1) -+ { -+ if (params[0].value.number < 1 || params[0].value.number > MAX_PENS) -+ { -+ fprintf(stderr, -+ "DEBUG: HP-GL/2 \'NP\' command with invalid number of " -+ "pens (%d)!\n", (int)params[0].value.number); -+ PenCount = 8; -+ } -+ else -+ PenCount = (int)params[0].value.number; -+ } - else - fprintf(stderr, - "DEBUG: HP-GL/2 \'NP\' command with invalid number of " -@@ -235,7 +245,7 @@ PC_pen_color(int num_params, /* I - - - if (num_params == 0) - { -- for (i = 0; i <= PenCount; i ++) -+ for (i = 0; i < PenCount; i ++) - if (i < 8) - { - Pens[i].rgb[0] = standard_colors[i][0]; -@@ -256,7 +266,14 @@ PC_pen_color(int num_params, /* I - - } - else if (num_params == 1 || num_params == 4) - { -- i = (int)params[0].value.number; -+ i = (int)params[0].value.number - 1; -+ -+ if (i < 0 || i >= PenCount) -+ { -+ fprintf(stderr, -+ "DEBUG: HP-GL/2 \'PC\' command with invalid pen (%d)!\n", i + 1); -+ return; -+ } - - if (num_params == 1) - { -@@ -330,7 +347,15 @@ PW_pen_width(int num_params, /* I - - - if (num_params == 2) - { -- pen = (int)params[1].value.number; -+ pen = (int)params[1].value.number - 1; -+ -+ if (pen < 0 || pen >= PenCount) -+ { -+ fprintf(stderr, -+ "DEBUG: HP-GL/2 \'PW\' command with invalid pen (%d)!\n", -+ pen + 1); -+ return; -+ } - - Pens[pen].width = w; - -@@ -345,7 +370,7 @@ PW_pen_width(int num_params, /* I - - * Set width for all pens... - */ - -- for (pen = 0; pen <= PenCount; pen ++) -+ for (pen = 0; pen < PenCount; pen ++) - Pens[pen].width = w; - - if (PageDirty) -@@ -399,14 +424,16 @@ SP_select_pen(int num_params, /* I - - param_t *params) /* I - Parameters */ - { - if (num_params == 0) -- PenNumber = 1; -- else if (params[0].value.number <= PenCount) -- PenNumber = (int)params[0].value.number; -- else -+ PenNumber = 0; -+ else if (num_params > 1) - fprintf(stderr, -- "DEBUG: HP-GL/2 \'SP\' command with invalid number or value " -- "of parameters (%d, %d)!\n", num_params, -+ "DEBUG: HP-GL/2 \'SP\' command with invalid number of parameters " -+ "(%d)!\n", num_params); -+ else if (params[0].value.number <= 0 || params[0].value.number >= PenCount) -+ fprintf(stderr, "DEBUG: HP-GL/2 \'SP\' command with invalid pen (%d)!\n", - (int)params[0].value.number); -+ else -+ PenNumber = (int)params[0].value.number - 1; - - if (PageDirty) - printf("%.3f %.3f %.3f %.2f SP\n", Pens[PenNumber].rgb[0], -Index: cups-1.3.8/filter/hpgltops.h -=================================================================== ---- cups-1.3.8.orig/filter/hpgltops.h -+++ cups-1.3.8/filter/hpgltops.h -@@ -26,6 +26,14 @@ - # define M_PI 3.14159265358979323846 - #endif /* M_PI */ - -+ -+/* -+ * Maximum number of pens we emulate... -+ */ -+ -+#define MAX_PENS 1024 -+ -+ - /* - * Parameter value structure... - */ -@@ -108,10 +116,10 @@ VAR float PenPosition[2] VALUE2(0.0f, 0. - /* Current pen position */ - PenScaling VALUE(1.0f), /* Pen width scaling factor */ - PenWidth VALUE(1.0f); /* Default pen width */ --VAR pen_t Pens[1024]; /* State of each pen */ -+VAR pen_t Pens[MAX_PENS]; /* State of each pen */ - VAR int PenMotion VALUE(0), /* 0 = absolute, 1 = relative */ - PenValid VALUE(0), /* 1 = valid position, 0 = undefined */ -- PenNumber VALUE(1), /* Current pen number */ -+ PenNumber VALUE(0), /* Current pen number */ - PenCount VALUE(8), /* Number of pens */ - PenDown VALUE(0), /* 0 = pen up, 1 = pen down */ - PolygonMode VALUE(0), /* Drawing polygons? */ diff --git a/net-print/cups/files/cups-1.3.8-str2892-1.3.patch b/net-print/cups/files/cups-1.3.8-str2892-1.3.patch deleted file mode 100644 index 3404086da0f5..000000000000 --- a/net-print/cups/files/cups-1.3.8-str2892-1.3.patch +++ /dev/null @@ -1,88 +0,0 @@ -Index: scheduler/client.c -=================================================================== ---- scheduler/client.c (revision 7820) -+++ scheduler/client.c (working copy) -@@ -28,6 +28,7 @@ - * cupsdUpdateCGI() - Read status messages from CGI scripts and programs. - * cupsdWriteClient() - Write data to a client as needed. - * check_if_modified() - Decode an "If-Modified-Since" line. -+ * data_ready() - Check whether data is available from a client. - * encrypt_client() - Enable encryption for the client... - * get_cdsa_certificate() - Convert a keychain name into the CFArrayRef - * required by SSLSetCertificate. -@@ -83,6 +84,7 @@ - - static int check_if_modified(cupsd_client_t *con, - struct stat *filestats); -+static int data_ready(cupsd_client_t *con); - #ifdef HAVE_SSL - static int encrypt_client(cupsd_client_t *con); - #endif /* HAVE_SSL */ -@@ -989,8 +991,7 @@ - */ - - while ((status = httpUpdate(HTTP(con))) == HTTP_CONTINUE) -- if (con->http.used == 0 || -- !memchr(con->http.buffer, '\n', con->http.used)) -+ if (!data_ready(con)) - break; - - if (status != HTTP_OK && status != HTTP_CONTINUE) -@@ -1889,7 +1890,7 @@ - } - } - } -- while (con->http.state == HTTP_PUT_RECV && con->http.used > 0); -+ while (con->http.state == HTTP_PUT_RECV && data_ready(con)); - - if (con->http.state == HTTP_WAITING) - { -@@ -2064,7 +2065,7 @@ - } - } - } -- while (con->http.state == HTTP_POST_RECV && con->http.used > 0); -+ while (con->http.state == HTTP_POST_RECV && data_ready(con)); - - if (con->http.state == HTTP_POST_SEND) - { -@@ -2914,7 +2915,39 @@ - } - - -+/* -+ * 'data_ready()' - Check whether data is available from a client. -+ */ -+ -+static int /* O - 1 if data is ready, 0 otherwise */ -+data_ready(cupsd_client_t *con) /* I - Client */ -+{ -+ if (con->http.used > 0) -+ return (1); - #ifdef HAVE_SSL -+ else if (con->http.tls) -+ { -+# ifdef HAVE_LIBSSL -+ if (SSL_pending((SSL *)(con->http.tls))) -+ return (1); -+# elif defined(HAVE_GNUTLS) -+ if (gnutls_record_check_pending(((http_tls_t *)(con->http.tls))->session)) -+ return (1); -+# elif defined(HAVE_CDSASSL) -+ size_t bytes; /* Bytes that are available */ -+ -+ if (!SSLGetBufferedReadSize(((http_tls_t *)(con->http.tls))->session, -+ &bytes) && bytes > 0) -+ return (1); -+# endif /* HAVE_LIBSSL */ -+ } -+#endif /* HAVE_SSL */ -+ -+ return (0); -+} -+ -+ -+#ifdef HAVE_SSL - /* - * 'encrypt_client()' - Enable encryption for the client... - */ diff --git a/net-print/cups/files/cups-1.3.8-str2924.patch b/net-print/cups/files/cups-1.3.8-str2924.patch deleted file mode 100644 index e40630f51dcb..000000000000 --- a/net-print/cups/files/cups-1.3.8-str2924.patch +++ /dev/null @@ -1,71 +0,0 @@ -Index: desktop/cups.desktop -=================================================================== ---- desktop/cups.desktop (revision 7908) -+++ desktop/cups.desktop (working copy) -@@ -1,41 +1,33 @@ - [Desktop Entry] --Categories=Application;System;X-Red-Hat-Base; --Encoding=UTF-8 -+Categories=System;Printing;HardwareSettings;X-Red-Hat-Base; - Exec=htmlview http://localhost:631/ --GenericName= - Icon=cups --MimeType= --Path= - StartupNotify=false - Terminal=false --TerminalOptions= - Type=Application --X-DCOP-ServiceType= --X-KDE-SubstituteUID=false --X-KDE-Username= - Name=Manage Printing - Comment=CUPS Web Interface --Name[de]=Druckerverwaltung --Comment[de]=CUPS Webinterface --Name[en_US]=Manage Printing --Comment[en_US]=CUPS Web Interface --Name[es]=Administrar impresión --Comment[es]=Interfaz Web de CUPS --Name[et]=Trükkimise haldur --Comment[et]=CUPS-i veebiliides --Name[fr]=Gestionnaire d'impression --Comment[fr]=Interface Web de CUPS --Name[he]=נהל הדפסות --Comment[he]=ממשק דפדפן של CUPS --Name[id]=Manajemen Pencetakan --Comment[id]=Antarmuka Web CUPS --Name[it]=Gestione stampa --Comment[it]=Interfaccia web di CUPS --Name[ja]=印刷の管理 --Comment[ja]=CUPS Web インタフェース --Name[pl]=Zarządzanie drukowaniem --Comment[pl]=Interfejs WWW CUPS --Name[zh]=打印机管理 --Comment[zh]=CUPS网页界面 --Name[zh_TW]=印表管理 --Comment[zh_TW]=CUPS 網頁介面 -+Name[de.UTF-8]=Druckerverwaltung -+Comment[de.UTF-8]=CUPS Webinterface -+Name[en_US.UTF-8]=Manage Printing -+Comment[en_US.UTF-8]=CUPS Web Interface -+Name[es.UTF-8]=Administrar impresión -+Comment[es.UTF-8]=Interfaz Web de CUPS -+Name[et.UTF-8]=Trükkimise haldur -+Comment[et.UTF-8]=CUPS-i veebiliides -+Name[fr.UTF-8]=Gestionnaire d'impression -+Comment[fr.UTF-8]=Interface Web de CUPS -+Name[he.UTF-8]=נהל הדפסות -+Comment[he.UTF-8]=ממשק דפדפן של CUPS -+Name[id.UTF-8]=Manajemen Pencetakan -+Comment[id.UTF-8]=Antarmuka Web CUPS -+Name[it.UTF-8]=Gestione stampa -+Comment[it.UTF-8]=Interfaccia web di CUPS -+Name[ja.UTF-8]=印刷の管理 -+Comment[ja.UTF-8]=CUPS Web インタフェース -+Name[pl.UTF-8]=Zarządzanie drukowaniem -+Comment[pl.UTF-8]=Interfejs WWW CUPS -+Name[zh.UTF-8]=打印机管理 -+Comment[zh.UTF-8]=CUPS网页界面 -+Name[zh_TW.UTF-8]=印表管理 -+Comment[zh_TW.UTF-8]=CUPS 網頁介面 |