1
0
mirror of https://git.openwrt.org/openwrt/openwrt.git synced 2024-10-19 22:18:16 +02:00

owipcalc: use v6 in cidr_parse6 function

The cidr_parse6 function parses a string to an ipv6-address.
The cidr struct contains a union called buf for the ipv4 and ipv6
address. Since it is a char pointer and the struct is initialized with
the maximum size (so ipv6 string) it does not make any difference.
However, we should access the buffer using the v6 name, since it could
be confusing otherwise.

Signed-off-by: Nick Hainke <vincent@systemli.org>
This commit is contained in:
Nick Hainke 2021-01-13 16:06:03 +01:00 committed by Adrian Schmutzler
parent 05707e6460
commit 5beea4c3fd
2 changed files with 5 additions and 5 deletions

@ -7,7 +7,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=owipcalc
PKG_RELEASE:=3
PKG_RELEASE:=4
PKG_LICENSE:=Apache-2.0
include $(INCLUDE_DIR)/package.mk

@ -361,11 +361,11 @@ static struct cidr * cidr_parse6(const char *s)
if (!addr || (strlen(s) >= sizeof(addr->buf.v6)))
goto err;
snprintf(addr->buf.v4, sizeof(addr->buf.v6), "%s", s);
snprintf(addr->buf.v6, sizeof(addr->buf.v6), "%s", s);
addr->family = AF_INET6;
if ((p = strchr(addr->buf.v4, '/')) != NULL)
if ((p = strchr(addr->buf.v6, '/')) != NULL)
{
*p++ = 0;
@ -379,9 +379,9 @@ static struct cidr * cidr_parse6(const char *s)
addr->prefix = 128;
}
if (p == addr->buf.v4+1)
if (p == addr->buf.v6+1)
memset(&addr->addr.v6, 0, sizeof(addr->addr.v6));
else if (inet_pton(AF_INET6, addr->buf.v4, &addr->addr.v6) != 1)
else if (inet_pton(AF_INET6, addr->buf.v6, &addr->addr.v6) != 1)
goto err;
return addr;