components/libevent/patches/CVE-2016-10196.patch
author Rich Burridge <rich.burridge@oracle.com>
Thu, 02 Feb 2017 15:16:38 -0800
changeset 7638 b2986f4bf55a
permissions -rw-r--r--
25489439 problem in LIBRARY/LIBEVENT
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
7638
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
     1
Fix for CVE-2016-10196
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
     2
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
     3
More details at:
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
     4
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
     5
  https://github.com/libevent/libevent/issues/318
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
     6
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
     7
Based on commit at:
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
     8
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
     9
  https://github.com/libevent/libevent/commit/329acc18a0768c21ba22522f01a5c7f46cacc4d5
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    10
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    11
--- libevent-2.0.22/evutil.c.orig	2017-02-02 07:20:55.460219824 +0000
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    12
+++ libevent-2.0.22/evutil.c	2017-02-02 07:25:18.285916416 +0000
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    13
@@ -1808,12 +1808,12 @@
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    14
 
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    15
 	cp = strchr(ip_as_string, ':');
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    16
 	if (*ip_as_string == '[') {
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    17
-		int len;
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    18
+		size_t len;
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    19
 		if (!(cp = strchr(ip_as_string, ']'))) {
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    20
 			return -1;
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    21
 		}
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    22
-		len = (int) ( cp-(ip_as_string + 1) );
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    23
-		if (len > (int)sizeof(buf)-1) {
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    24
+		len = ( cp-(ip_as_string + 1) );
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    25
+		if (len > sizeof(buf)-1) {
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    26
 			return -1;
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    27
 		}
b2986f4bf55a 25489439 problem in LIBRARY/LIBEVENT
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    28
 		memcpy(buf, ip_as_string+1, len);