Multicast netlink for non-root process

From: Jean Tourrilhes (
Date: Tue Jun 11 2002 - 15:44:18 EST


        I'm developping an application that need to monitor every
network interface of the system. Network interfaces are
virtual/dynamic and go up and down all the time, so to keep track of
my interface list, I'm listening for RTM_NEWLINK events on the
RTnetLink socket (RTMGRP_LINK multicast group).

        Problem : this works only as ROOT.
        And my mother told me that having my application running as
root is bad for my health.

        The cause is here :
----------- net/netlink/af_netlink.c - l322 ------------------

static int netlink_bind(struct socket *sock, struct sockaddr *addr, int addr_len)
        /* Only superuser is allowed to listen multicasts */
        if (nladdr->nl_groups && !capable(CAP_NET_ADMIN))
                return -EPERM;

        Why ?
        Why ?
        Why ?

        Have a good day...

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

This archive was generated by hypermail 2b29 : Sat Jun 15 2002 - 22:00:23 EST