net: bonding: move ioctl handling to private ndo operation
All other user triggered operations are gone from ndo_ioctl, so move the SIOCBOND family into a custom operation as well. The .ndo_ioctl() helper is no longer called by the dev_ioctl.c code now, but there are still a few definitions in obsolete wireless drivers as well as the appletalk and ieee802154 layers to call SIOCSIFADDR/SIOCGIFADDR helpers from inside the kernel. Cc: Jay Vosburgh <j.vosburgh@gmail.com> Cc: Veaceslav Falico <vfalico@gmail.com> Cc: Andy Gospodarek <andy@greyhouse.net> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
ad2f99aedf
commit
3d9d00bd18
@@ -1086,9 +1086,14 @@ struct netdev_net_notifier {
|
||||
* Test if Media Access Control address is valid for the device.
|
||||
*
|
||||
* int (*ndo_do_ioctl)(struct net_device *dev, struct ifreq *ifr, int cmd);
|
||||
* Called when a user requests an ioctl which can't be handled by
|
||||
* the generic interface code. If not defined ioctls return
|
||||
* not supported error code.
|
||||
* Old-style ioctl entry point. This is used internally by the
|
||||
* appletalk and ieee802154 subsystems but is no longer called by
|
||||
* the device ioctl handler.
|
||||
*
|
||||
* int (*ndo_siocbond)(struct net_device *dev, struct ifreq *ifr, int cmd);
|
||||
* Used by the bonding driver for its device specific ioctls:
|
||||
* SIOCBONDENSLAVE, SIOCBONDRELEASE, SIOCBONDSETHWADDR, SIOCBONDCHANGEACTIVE,
|
||||
* SIOCBONDSLAVEINFOQUERY, and SIOCBONDINFOQUERY
|
||||
*
|
||||
* * int (*ndo_eth_ioctl)(struct net_device *dev, struct ifreq *ifr, int cmd);
|
||||
* Called for ethernet specific ioctls: SIOCGMIIPHY, SIOCGMIIREG,
|
||||
@@ -1367,6 +1372,8 @@ struct net_device_ops {
|
||||
struct ifreq *ifr, int cmd);
|
||||
int (*ndo_eth_ioctl)(struct net_device *dev,
|
||||
struct ifreq *ifr, int cmd);
|
||||
int (*ndo_siocbond)(struct net_device *dev,
|
||||
struct ifreq *ifr, int cmd);
|
||||
int (*ndo_siocwandev)(struct net_device *dev,
|
||||
struct if_settings *ifs);
|
||||
int (*ndo_siocdevprivate)(struct net_device *dev,
|
||||
|
||||
Reference in New Issue
Block a user