What does CONFIG_NETDEVICES *really* mean ?

From: Peter Cleve (toad@harlie.han.de)
Date: Thu Dec 13 2001 - 18:53:39 EST


CONFIG_NETDEVICES is referenced only at 2 files in the kernel source:
        - net/core/sock.c
        - drivers/isdn/isdn_common.c

In net/core/sock.c it's used as an #ifdef around the SO_BINDTODEVICE code
in sock_setsockopt().

This is the interesting part from net/core/sock.c :

        [ ... ]
                case SO_SNDTIMEO:
                        ret = sock_set_timeout(&sk->sndtimeo, optval, optlen);

                case SO_BINDTODEVICE:
                        char devname[IFNAMSIZ];
        [ ... ]

IMHO it's completly legal to bind a socket to the loopback interface if you
have an machine with CONFIG_INET=y and unset CONFIG_NETDEVICES. I'm not a
kernel hacker and think the surrounding #ifdef should be removed.

In drivers/isdn/isdn_common.c it is used as an #ifdef about some cmd's
in isdn_ioctl(). Some cmd's which are surrounded by CONFIG_NETDEVICES are:

        case IIOCNETGPN: /* Get peer phone number of a connected isdn network interface */
        case IIOCNETAIF: /* Add a network-interface */
        case IIOCNETASL: /* Add a slave to a network-interface */

        ..... many follows .......

Consider a kernel with no additional Network interfase except isdn interfaces,
these ioctl's cannot work, but IMHO these are needed to set up the isdn interfaces.

IMHO CONFIG_INET fit's better.

Maybe somebody with more knowledge about the kernel can comment about these topics.


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

This archive was generated by hypermail 2b29 : Sat Dec 15 2001 - 21:00:27 EST