Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-0.7.git;a=commitdiff;h=b1d7d4134fc6da71841f28959510646c637e805a

commit b1d7d4134fc6da71841f28959510646c637e805a
Author: voroskoi <[EMAIL PROTECTED]>
Date:   Sun Jan 20 12:41:34 2008 +0100

cups-1.3.2-2sayshell3-i686
str2589.patch fixes #2676

diff --git a/source/apps/cups/FrugalBuild b/source/apps/cups/FrugalBuild
index 5645d49..eed23e5 100644
--- a/source/apps/cups/FrugalBuild
+++ b/source/apps/cups/FrugalBuild
@@ -4,7 +4,7 @@

pkgname=cups
pkgver=1.3.2
-pkgrel=2sayshell2
+pkgrel=2sayshell3
pkgdesc="The CUPS Printing System"
url="http://www.cups.org/";
depends=('libtiff' 'libpng' 'libjpeg')
@@ -14,7 +14,7 @@ archs=('i686' 'x86_64')
backup=(etc/cups/{printers.conf,classes.conf,client.conf,cupsd.conf,mime.types,mime.convs})
up2date="lynx -dump $url |grep Stable |sed -e 's/.*v\(.*\)/\1/'"
source=(ftp://ftp.easysw.com/pub/cups/$pkgver/cups-$pkgver-source.tar.bz2 \
-       rc.cups rc.cups-{hu,de}.po CVE-2007-4351.diff cups-xpdf.diff)
+       rc.cups rc.cups-{hu,de}.po CVE-2007-4351.diff cups-xpdf.diff 
str2589.patch)

subpkgs=('libcups')
subdescs=('Main library of the CUPS printing system.')
@@ -54,6 +54,7 @@ sha1sums=('6915f4499ac258a59afc5b3541b17f56b3bfb66f' \
'f19bb889e3535e1284d0b93606da48aa61089c8a' \
'03197abb98eff18d3ede3000a61c7783b8c1ad92' \
'79b9bc071bb4ab0ccf032a51f815adf96264dd52' \
-          'c081ba7af9d0f3028c1c5a9b63cb15cdc5527c29')
+          'c081ba7af9d0f3028c1c5a9b63cb15cdc5527c29' \
+          'd9c61f7e88da276134f730aba6b68b5cae87538d')

# optimization OK
diff --git a/source/apps/cups/str2589.patch b/source/apps/cups/str2589.patch
new file mode 100644
index 0000000..a957ca6
--- /dev/null
+++ b/source/apps/cups/str2589.patch
@@ -0,0 +1,46 @@
+Index: backend/snmp.c
+===================================================================
+--- backend/snmp.c     (revision 530)
++++ backend/snmp.c     (working copy)
+@@ -1064,18 +1064,38 @@
+     char          *string,            /* I  - String buffer */
+     int           strsize)            /* I  - String buffer size */
+ {
+-  if (length < strsize)
++  if (length < 0)
+   {
+-    memcpy(string, *buffer, length);
++   /*
++    * Disallow negative lengths!
++    */
++
++    fprintf(stderr, "ERROR: Bad ASN1 string length %d!\n", length);
++    *string = '\0';
++  }
++  else if (length < strsize)
++  {
++   /*
++    * String is smaller than the buffer...
++    */
++
++    if (length > 0)
++      memcpy(string, *buffer, length);
++
+     string[length] = '\0';
+   }
+   else
+   {
++   /*
++    * String is larger than the buffer...
++    */
++
+     memcpy(string, buffer, strsize - 1);
+     string[strsize - 1] = '\0';
+   }
+
+-  (*buffer) += length;
++  if (length > 0)
++    (*buffer) += length;
+
+   return (string);
+ }
_______________________________________________
Frugalware-git mailing list
[email protected]
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to