]> git.baikalelectronics.ru Git - kernel.git/commit
net: prevent of emerging cross-namespace symlinks
authorAlexander Y. Fomichev <git.user@gmail.com>
Mon, 25 Aug 2014 12:26:45 +0000 (16:26 +0400)
committerDavid S. Miller <davem@davemloft.net>
Mon, 25 Aug 2014 22:17:43 +0000 (15:17 -0700)
commit1f7a9060477a84f8af2144c1bec8ef6e52444922
treef56e6a2cbb2622fbe24b1325f7800fd9d0b4305a
parente937a5cf11add7e5f57f96863e783e56f30c7afd
net: prevent of emerging cross-namespace symlinks

Code manipulating sysfs symlinks on adjacent net_devices(s)
currently doesn't take into account that devices potentially
belong to different namespaces.

This patch trying to fix an issue as follows:
- check for net_ns before creating / deleting symlink.
  for now only netdev_adjacent_rename_links and
  __netdev_adjacent_dev_remove are affected, afaics
  __netdev_adjacent_dev_insert implies both net_devs
  belong to the same namespace.
- Drop all existing symlinks to / from all adj_devs before
  switching namespace and recreate them just after.

Signed-off-by: Alexander Y. Fomichev <git.user@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/dev.c