links: add security fix for CVE-2013-6050
authorGustavo Zacarias <gustavo@zacarias.com.ar>
Tue, 17 Jun 2014 19:05:49 +0000 (16:05 -0300)
committerPeter Korsgaard <peter@korsgaard.com>
Wed, 18 Jun 2014 11:53:43 +0000 (13:53 +0200)
Also fix LICENSE typo.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/links/links-0001-no-largefile.patch [new file with mode: 0644]
package/links/links-0002-CVE-2013-6050.patch [new file with mode: 0644]
package/links/links-no-largefile.patch [deleted file]
package/links/links.mk

diff --git a/package/links/links-0001-no-largefile.patch b/package/links/links-0001-no-largefile.patch
new file mode 100644 (file)
index 0000000..f3143cb
--- /dev/null
@@ -0,0 +1,22 @@
+Index: links-1.01pre1-no-ssl/links.h
+===================================================================
+--- links-1.01pre1-no-ssl.orig/links.h 2010-06-21 00:39:10.000000000 +0200
++++ links-1.01pre1-no-ssl/links.h      2010-06-21 00:39:52.000000000 +0200
+@@ -2,6 +2,9 @@
+ #define __EXTENSIONS__
+ #endif
++#include <features.h>
++/* uclibc without largefile support #errors on _FILE_OFFSET_BITS=64 */
++#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_LFS__))
+ #ifndef _LARGEFILE_SOURCE
+ #define _LARGEFILE_SOURCE     1
+ #endif
+@@ -9,6 +12,7 @@
+ #ifndef _FILE_OFFSET_BITS
+ #define _FILE_OFFSET_BITS     64
+ #endif
++#endif
+ #ifdef HAVE_CONFIG_H
+ #include "config.h"
diff --git a/package/links/links-0002-CVE-2013-6050.patch b/package/links/links-0002-CVE-2013-6050.patch
new file mode 100644 (file)
index 0000000..d85c250
--- /dev/null
@@ -0,0 +1,17 @@
+Description: Fix integer overflow in graphics mode (CVE-2013-6050)
+Author: Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>
+Bug-CVE: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2013-6050
+
+Index: links-2.7/html_tbl.c
+===================================================================
+--- links-2.7.orig/html_tbl.c   2013-11-22 01:57:29.000000000 +0100
++++ links-2.7/html_tbl.c        2013-11-22 01:58:30.000000000 +0100
+@@ -1550,6 +1550,8 @@ static void add_to_rect_sets(struct rect
+ static void add_to_cell_sets(struct table_cell ****s, int **nn, int *n, struct rect *r, struct table_cell *c)
+ {
+       int i, j;
++      if (r->y1 < 0 || r->y2 < 0)
++              fatal_exit("add_to_cell_sets: integer overflow: %d, %d", r->y1, r->y2);
+       for (i = r->y1 >> RECT_BOUND_BITS; i <= (r->y2 - 1) >> RECT_BOUND_BITS; i++) {
+               if (i >= *n) {
+                       struct table_cell ***ns;
diff --git a/package/links/links-no-largefile.patch b/package/links/links-no-largefile.patch
deleted file mode 100644 (file)
index f3143cb..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-Index: links-1.01pre1-no-ssl/links.h
-===================================================================
---- links-1.01pre1-no-ssl.orig/links.h 2010-06-21 00:39:10.000000000 +0200
-+++ links-1.01pre1-no-ssl/links.h      2010-06-21 00:39:52.000000000 +0200
-@@ -2,6 +2,9 @@
- #define __EXTENSIONS__
- #endif
-+#include <features.h>
-+/* uclibc without largefile support #errors on _FILE_OFFSET_BITS=64 */
-+#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_LFS__))
- #ifndef _LARGEFILE_SOURCE
- #define _LARGEFILE_SOURCE     1
- #endif
-@@ -9,6 +12,7 @@
- #ifndef _FILE_OFFSET_BITS
- #define _FILE_OFFSET_BITS     64
- #endif
-+#endif
- #ifdef HAVE_CONFIG_H
- #include "config.h"
index 6e683dd094a615bae33bf5714de09382c34baf3b..a7baa4c756736dcb294de7adfd3065ddb3252862 100644 (file)
@@ -7,7 +7,7 @@
 LINKS_VERSION = 2.7
 LINKS_SITE = http://links.twibright.com/download
 LINKS_DEPENDENCIES = host-pkgconf
-LINKS_LICNSE = GPLv2+
+LINKS_LICENSE = GPLv2+
 LINKS_LICENSE_FILES = COPYING
 
 ifeq ($(BR2_PACKAGE_LINKS_GRAPHICS),y)