mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-11-12 09:56:14 -05:00
e83ef684fc
* 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.
41 lines
1.1 KiB
Diff
41 lines
1.1 KiB
Diff
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
|
|
|