Use CAP_NET_ADMIN and alias netdev-nlmon instead
From: Marcel Holtmann <marcel@holtmann.org>
Date: 2014-08-08 21:21:43
Hi,
so I am running this command sequence:
ip link add name nlmon type nlmon
ip link set dev nlmon up
With that I get this message in dmesg:
Loading kernel module for a network device with CAP_SYS_MODULE (deprecated). Use CAP_NET_ADMIN and alias netdev-nlmon instead.
The kernel section producing this is dev_load() from net/core/dev_ioctl.c:
no_module = !dev;
if (no_module && capable(CAP_NET_ADMIN))
no_module = request_module("netdev-%s", name);
if (no_module && capable(CAP_SYS_MODULE)) {
if (!request_module("%s", name))
pr_warn("Loading kernel module for a network device with CAP_SYS_MODULE (deprecated). Use CAP_NET_ADMIN and alias netdev-%s instead.\n",
name);
}
Since I am explicitly giving the name from userspace, I have no idea why the kernel bugs me in providing netdev-nlmon alias. It makes no sense to me. What is the reasoning behind this?
Regards
Marcel