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 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