From: Vsevolod Stakhov Date: Wed, 18 Mar 2015 21:21:13 +0000 (+0000) Subject: Fix length when parsing ip4/ip6. X-Git-Tag: 0.9.0~472 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=237ccf43be5d534ecc9550c27a1e8e66d41d6629;p=rspamd.git Fix length when parsing ip4/ip6. --- diff --git a/src/libserver/spf.c b/src/libserver/spf.c index 810935e97..b51bcf7dc 100644 --- a/src/libserver/spf.c +++ b/src/libserver/spf.c @@ -878,7 +878,7 @@ parse_spf_ip4 (struct spf_record *rec, struct spf_addr *addr) len = strlen (semicolon); } - rspamd_strlcpy (ipbuf, semicolon, MIN (len, sizeof (ipbuf))); + rspamd_strlcpy (ipbuf, semicolon, MIN (len + 1, sizeof (ipbuf))); if (inet_pton (AF_INET, ipbuf, addr->addr4) != 1) { return FALSE; @@ -927,7 +927,7 @@ parse_spf_ip6 (struct spf_record *rec, struct spf_addr *addr) len = strlen (semicolon); } - rspamd_strlcpy (ipbuf, semicolon, MIN (len, sizeof (ipbuf))); + rspamd_strlcpy (ipbuf, semicolon, MIN (len + 1, sizeof (ipbuf))); if (inet_pton (AF_INET6, ipbuf, addr->addr6) != 1) { return FALSE;