diff options
author | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2015-03-18 21:21:13 +0000 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2015-03-18 21:21:13 +0000 |
commit | 237ccf43be5d534ecc9550c27a1e8e66d41d6629 (patch) | |
tree | 5beacd7ac77be74bed266e80e7e367842512346b /src/libserver | |
parent | cd33d408e87ddb6c7f12939b5eb0e1d25c0be70f (diff) | |
download | rspamd-237ccf43be5d534ecc9550c27a1e8e66d41d6629.tar.gz rspamd-237ccf43be5d534ecc9550c27a1e8e66d41d6629.zip |
Fix length when parsing ip4/ip6.
Diffstat (limited to 'src/libserver')
-rw-r--r-- | src/libserver/spf.c | 4 |
1 files changed, 2 insertions, 2 deletions
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; |