From: Hangbin Liu Date: Thu, 9 May 2019 06:54:08 +0000 (+0800) Subject: macvlan: disable SIOCSHWTSTAMP in container X-Git-Tag: v5.15~6400^2~11 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=6c2ea9ebafa79eea9098a134a422391638879f45;p=platform%2Fkernel%2Flinux-starfive.git macvlan: disable SIOCSHWTSTAMP in container Miroslav pointed that with NET_ADMIN enabled in container, a normal user could be mapped to root and is able to change the real device's rx filter via ioctl on macvlan, which would affect the other ptp process on host. Fix it by disabling SIOCSHWTSTAMP in container. Fixes: 254c0a2bfedb ("macvlan: pass get_ts_info and SIOC[SG]HWTSTAMP ioctl to real device") Signed-off-by: Hangbin Liu Acked-by: Richard Cochran Signed-off-by: David S. Miller --- diff --git a/drivers/net/macvlan.c b/drivers/net/macvlan.c index b395423..92efa93 100644 --- a/drivers/net/macvlan.c +++ b/drivers/net/macvlan.c @@ -836,6 +836,8 @@ static int macvlan_do_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) switch (cmd) { case SIOCSHWTSTAMP: + if (!net_eq(dev_net(dev), &init_net)) + break; case SIOCGHWTSTAMP: if (netif_device_present(real_dev) && ops->ndo_do_ioctl) err = ops->ndo_do_ioctl(real_dev, &ifrr, cmd);