ip_tunnel: Fix name string concatenate in __ip_tunnel_create()
authorSultan Alsawaf <sultanxda@gmail.com>
Wed, 6 Jun 2018 22:56:54 +0000 (15:56 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 8 Dec 2018 12:05:05 +0000 (13:05 +0100)
commit 000ade8016400d93b4d7c89970d96b8c14773d45 upstream.

By passing a limit of 2 bytes to strncat, strncat is limited to writing
fewer bytes than what it's supposed to append to the name here.

Since the bounds are checked on the line above this, just remove the string
bounds checks entirely since they're unneeded.

Signed-off-by: Sultan Alsawaf <sultanxda@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/ipv4/ip_tunnel.c

index d8d99c21a9c1b582870f4f0e0853822d6e748d94..e6ee6acac80c4b6354b07de6fa28b0142858d956 100644 (file)
@@ -261,8 +261,8 @@ static struct net_device *__ip_tunnel_create(struct net *net,
        } else {
                if (strlen(ops->kind) > (IFNAMSIZ - 3))
                        goto failed;
-               strlcpy(name, ops->kind, IFNAMSIZ);
-               strncat(name, "%d", 2);
+               strcpy(name, ops->kind);
+               strcat(name, "%d");
        }
 
        ASSERT_RTNL();