summaryrefslogtreecommitdiff
path: root/gnu/packages/patches/libevent-2.0-CVE-2016-10196.patch
diff options
context:
space:
mode:
authorLeo Famulari <leo@famulari.name>2017-02-02 10:48:53 -0500
committerLeo Famulari <leo@famulari.name>2017-02-02 10:52:45 -0500
commite83ef684fc1b490cd54612339a909203d5b94fa4 (patch)
tree60be5df93e2987cdf7a8776ed3ac72699abfc848 /gnu/packages/patches/libevent-2.0-CVE-2016-10196.patch
parente8c83d04e176f205b30b3d470f22ee5e1c686331 (diff)
gnu: libevent-2.0: Include CVE IDs in patches.
* gnu/packages/patches/libevent-2.0-evdns-fix-remote-stack-overread.patch, gnu/packages/patches/libevent-2.0-evutil-fix-buffer-overflow.patch, gnu/packages/patches/libevent-2.0-evdns-fix-searching-empty-hostnames.patch: Rename to ... * gnu/packages/patches/libevent-2.0-CVE-2016-10195.patch, gnu/packages/patches/libevent-2.0-CVE-2016-10196.patch, gnu/packages/patches/libevent-2.0-CVE-2016-10197.patch: ... new files. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/libevent.scm (libevent-2.0)[sources]: Likewise.
Diffstat (limited to 'gnu/packages/patches/libevent-2.0-CVE-2016-10196.patch')
-rw-r--r--gnu/packages/patches/libevent-2.0-CVE-2016-10196.patch41
1 files changed, 41 insertions, 0 deletions
diff --git a/gnu/packages/patches/libevent-2.0-CVE-2016-10196.patch b/gnu/packages/patches/libevent-2.0-CVE-2016-10196.patch
new file mode 100644
index 0000000000..03f96e938b
--- /dev/null
+++ b/gnu/packages/patches/libevent-2.0-CVE-2016-10196.patch
@@ -0,0 +1,41 @@
+Fix CVE-2016-10196 (buffer overflow in evutil):
+
+https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-10196
+https://github.com/libevent/libevent/issues/318
+
+Patch copied from upstream source repository:
+
+https://github.com/libevent/libevent/commit/329acc18a0768c21ba22522f01a5c7f46cacc4d5
+
+From 28bdc2f3f62259d21ccaf7be2b60ef0a53e6f342 Mon Sep 17 00:00:00 2001
+From: Azat Khuzhin <a3at.mail@gmail.com>
+Date: Sun, 31 Jan 2016 00:57:16 +0300
+Subject: [PATCH] evutil_parse_sockaddr_port(): fix buffer overflow
+
+---
+ evutil.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/evutil.c b/evutil.c
+index 33445170..e2dfe6e4 100644
+--- a/evutil.c
++++ b/evutil.c
+@@ -1808,12 +1808,12 @@ evutil_parse_sockaddr_port(const char *ip_as_string, struct sockaddr *out, int *
+
+ cp = strchr(ip_as_string, ':');
+ if (*ip_as_string == '[') {
+- int len;
++ size_t len;
+ if (!(cp = strchr(ip_as_string, ']'))) {
+ return -1;
+ }
+- len = (int) ( cp-(ip_as_string + 1) );
+- if (len > (int)sizeof(buf)-1) {
++ len = ( cp-(ip_as_string + 1) );
++ if (len > sizeof(buf)-1) {
+ return -1;
+ }
+ memcpy(buf, ip_as_string+1, len);
+--
+2.11.0
+