rtnetlink.c (1268afe676ee9431a229fc68a2efb0dad4d5852f) rtnetlink.c (cbda10fa97d72c7a1923be4426171aa90e8c6dab)
1/*
2 * INET An implementation of the TCP/IP protocol suite for the LINUX
3 * operating system. INET is implemented using the BSD Socket
4 * interface as the means of communication with the user level.
5 *
6 * Routing netlink socket interface: protocol independent part.
7 *
8 * Authors: Alexey Kuznetsov, <kuznet@ms2.inr.ac.ru>

--- 854 unchanged lines hidden (view full) ---

863 ifm->ifi_change = change;
864
865 NLA_PUT_STRING(skb, IFLA_IFNAME, dev->name);
866 NLA_PUT_U32(skb, IFLA_TXQLEN, dev->tx_queue_len);
867 NLA_PUT_U8(skb, IFLA_OPERSTATE,
868 netif_running(dev) ? dev->operstate : IF_OPER_DOWN);
869 NLA_PUT_U8(skb, IFLA_LINKMODE, dev->link_mode);
870 NLA_PUT_U32(skb, IFLA_MTU, dev->mtu);
1/*
2 * INET An implementation of the TCP/IP protocol suite for the LINUX
3 * operating system. INET is implemented using the BSD Socket
4 * interface as the means of communication with the user level.
5 *
6 * Routing netlink socket interface: protocol independent part.
7 *
8 * Authors: Alexey Kuznetsov, <kuznet@ms2.inr.ac.ru>

--- 854 unchanged lines hidden (view full) ---

863 ifm->ifi_change = change;
864
865 NLA_PUT_STRING(skb, IFLA_IFNAME, dev->name);
866 NLA_PUT_U32(skb, IFLA_TXQLEN, dev->tx_queue_len);
867 NLA_PUT_U8(skb, IFLA_OPERSTATE,
868 netif_running(dev) ? dev->operstate : IF_OPER_DOWN);
869 NLA_PUT_U8(skb, IFLA_LINKMODE, dev->link_mode);
870 NLA_PUT_U32(skb, IFLA_MTU, dev->mtu);
871 NLA_PUT_U32(skb, IFLA_GROUP, dev->group);
871
872 if (dev->ifindex != dev->iflink)
873 NLA_PUT_U32(skb, IFLA_LINK, dev->iflink);
874
875 if (dev->master)
876 NLA_PUT_U32(skb, IFLA_MASTER, dev->master->ifindex);
877
878 if (dev->qdisc)

--- 381 unchanged lines hidden (view full) ---

1260
1261 if (tb[IFLA_MTU]) {
1262 err = dev_set_mtu(dev, nla_get_u32(tb[IFLA_MTU]));
1263 if (err < 0)
1264 goto errout;
1265 modified = 1;
1266 }
1267
872
873 if (dev->ifindex != dev->iflink)
874 NLA_PUT_U32(skb, IFLA_LINK, dev->iflink);
875
876 if (dev->master)
877 NLA_PUT_U32(skb, IFLA_MASTER, dev->master->ifindex);
878
879 if (dev->qdisc)

--- 381 unchanged lines hidden (view full) ---

1261
1262 if (tb[IFLA_MTU]) {
1263 err = dev_set_mtu(dev, nla_get_u32(tb[IFLA_MTU]));
1264 if (err < 0)
1265 goto errout;
1266 modified = 1;
1267 }
1268
1269 if (tb[IFLA_GROUP]) {
1270 dev_set_group(dev, nla_get_u32(tb[IFLA_GROUP]));
1271 modified = 1;
1272 }
1273
1268 /*
1269 * Interface selected by interface index but interface
1270 * name provided implies that a name change has been
1271 * requested.
1272 */
1273 if (ifm->ifi_index > 0 && ifname[0]) {
1274 err = dev_change_name(dev, ifname);
1275 if (err < 0)

--- 539 unchanged lines hidden (view full) ---

1815
1816 family = ((struct rtgenmsg *)NLMSG_DATA(nlh))->rtgen_family;
1817 sz_idx = type>>2;
1818 kind = type&3;
1819
1820 if (kind != 2 && security_netlink_recv(skb, CAP_NET_ADMIN))
1821 return -EPERM;
1822
1274 /*
1275 * Interface selected by interface index but interface
1276 * name provided implies that a name change has been
1277 * requested.
1278 */
1279 if (ifm->ifi_index > 0 && ifname[0]) {
1280 err = dev_change_name(dev, ifname);
1281 if (err < 0)

--- 539 unchanged lines hidden (view full) ---

1821
1822 family = ((struct rtgenmsg *)NLMSG_DATA(nlh))->rtgen_family;
1823 sz_idx = type>>2;
1824 kind = type&3;
1825
1826 if (kind != 2 && security_netlink_recv(skb, CAP_NET_ADMIN))
1827 return -EPERM;
1828
1823 if (kind == 2 && nlh->nlmsg_flags&NLM_F_DUMP) {
1829 if (kind == 2 && (nlh->nlmsg_flags & NLM_F_DUMP) == NLM_F_DUMP) {
1824 struct sock *rtnl;
1825 rtnl_dumpit_func dumpit;
1826
1827 dumpit = rtnl_get_dumpit(family, type);
1828 if (dumpit == NULL)
1829 return -EOPNOTSUPP;
1830
1831 __rtnl_unlock();

--- 118 unchanged lines hidden ---
1830 struct sock *rtnl;
1831 rtnl_dumpit_func dumpit;
1832
1833 dumpit = rtnl_get_dumpit(family, type);
1834 if (dumpit == NULL)
1835 return -EOPNOTSUPP;
1836
1837 __rtnl_unlock();

--- 118 unchanged lines hidden ---