From: Yu Watanabe Date: Sat, 10 Nov 2018 06:35:56 +0000 (+0900) Subject: network: add missing verification for ip6gretap and sit X-Git-Tag: v240~366^2~1 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=30dce346d85935e0904a211bc0209df99af97557;p=thirdparty%2Fsystemd.git network: add missing verification for ip6gretap and sit Fixes oss-fuzz#11324. --- diff --git a/src/network/netdev/tunnel.c b/src/network/netdev/tunnel.c index 826c7088fe2..861c30404c3 100644 --- a/src/network/netdev/tunnel.c +++ b/src/network/netdev/tunnel.c @@ -415,17 +415,17 @@ static int netdev_tunnel_verify(NetDev *netdev, const char *filename) { return -EINVAL; } - if (IN_SET(netdev->kind, NETDEV_KIND_VTI, NETDEV_KIND_IPIP, NETDEV_KIND_GRE, NETDEV_KIND_GRETAP) && + if (IN_SET(netdev->kind, NETDEV_KIND_VTI, NETDEV_KIND_IPIP, NETDEV_KIND_SIT, NETDEV_KIND_GRE, NETDEV_KIND_GRETAP) && (t->family != AF_INET || in_addr_is_null(t->family, &t->local))) { log_netdev_error(netdev, - "vti/ipip/gre/gretap tunnel without a local IPv4 address configured in %s. Ignoring", filename); + "vti/ipip/sit/gre/gretap tunnel without a local IPv4 address configured in %s. Ignoring", filename); return -EINVAL; } - if (IN_SET(netdev->kind, NETDEV_KIND_VTI6, NETDEV_KIND_IP6TNL, NETDEV_KIND_IP6GRE) && + if (IN_SET(netdev->kind, NETDEV_KIND_VTI6, NETDEV_KIND_IP6TNL, NETDEV_KIND_IP6GRE, NETDEV_KIND_IP6GRETAP) && (t->family != AF_INET6 || in_addr_is_null(t->family, &t->local))) { log_netdev_error(netdev, - "vti6/ip6tnl/ip6gre tunnel without a local IPv6 address configured in %s. Ignoring", filename); + "vti6/ip6tnl/ip6gre/ip6gretap tunnel without a local IPv6 address configured in %s. Ignoring", filename); return -EINVAL; }