Lines Matching refs:cb
1417 static int rtnl_dump_ifinfo(struct sk_buff *skb, struct netlink_callback *cb) in rtnl_dump_ifinfo() argument
1429 s_h = cb->args[0]; in rtnl_dump_ifinfo()
1430 s_idx = cb->args[1]; in rtnl_dump_ifinfo()
1432 cb->seq = net->dev_base_seq; in rtnl_dump_ifinfo()
1441 hdrlen = nlmsg_len(cb->nlh) < sizeof(struct ifinfomsg) ? in rtnl_dump_ifinfo()
1444 if (nlmsg_parse(cb->nlh, hdrlen, tb, IFLA_MAX, ifla_policy) >= 0) { in rtnl_dump_ifinfo()
1457 NETLINK_CB(cb->skb).portid, in rtnl_dump_ifinfo()
1458 cb->nlh->nlmsg_seq, 0, in rtnl_dump_ifinfo()
1469 nl_dump_check_consistent(cb, nlmsg_hdr(skb)); in rtnl_dump_ifinfo()
1475 cb->args[1] = idx; in rtnl_dump_ifinfo()
1476 cb->args[0] = h; in rtnl_dump_ifinfo()
2491 static int rtnl_dump_all(struct sk_buff *skb, struct netlink_callback *cb) in rtnl_dump_all() argument
2494 int s_idx = cb->family; in rtnl_dump_all()
2499 int type = cb->nlh->nlmsg_type-RTM_BASE; in rtnl_dump_all()
2506 memset(&cb->args[0], 0, sizeof(cb->args)); in rtnl_dump_all()
2507 cb->prev_seq = 0; in rtnl_dump_all()
2508 cb->seq = 0; in rtnl_dump_all()
2510 if (rtnl_msg_handlers[idx][type].dumpit(skb, cb)) in rtnl_dump_all()
2513 cb->family = idx; in rtnl_dump_all()
2862 struct netlink_callback *cb, in nlmsg_populate_fdb() argument
2871 portid = NETLINK_CB(cb->skb).portid; in nlmsg_populate_fdb()
2872 seq = cb->nlh->nlmsg_seq; in nlmsg_populate_fdb()
2875 if (*idx < cb->args[0]) in nlmsg_populate_fdb()
2899 struct netlink_callback *cb, in ndo_dflt_fdb_dump() argument
2907 err = nlmsg_populate_fdb(skb, cb, dev, &idx, &dev->uc); in ndo_dflt_fdb_dump()
2910 nlmsg_populate_fdb(skb, cb, dev, &idx, &dev->mc); in ndo_dflt_fdb_dump()
2917 static int rtnl_fdb_dump(struct sk_buff *skb, struct netlink_callback *cb) in rtnl_fdb_dump() argument
2924 struct ifinfomsg *ifm = nlmsg_data(cb->nlh); in rtnl_fdb_dump()
2930 if (nlmsg_parse(cb->nlh, sizeof(struct ifinfomsg), tb, IFLA_MAX, in rtnl_fdb_dump()
2970 idx = cops->ndo_fdb_dump(skb, cb, br_dev, dev, in rtnl_fdb_dump()
2975 idx = dev->netdev_ops->ndo_fdb_dump(skb, cb, dev, NULL, in rtnl_fdb_dump()
2978 idx = ndo_dflt_fdb_dump(skb, cb, dev, NULL, idx); in rtnl_fdb_dump()
2983 cb->args[0] = idx; in rtnl_fdb_dump()
3094 static int rtnl_bridge_getlink(struct sk_buff *skb, struct netlink_callback *cb) in rtnl_bridge_getlink() argument
3099 u32 portid = NETLINK_CB(cb->skb).portid; in rtnl_bridge_getlink()
3100 u32 seq = cb->nlh->nlmsg_seq; in rtnl_bridge_getlink()
3104 if (nlmsg_len(cb->nlh) > sizeof(struct ifinfomsg)) { in rtnl_bridge_getlink()
3107 extfilt = nlmsg_find_attr(cb->nlh, sizeof(struct ifinfomsg), in rtnl_bridge_getlink()
3123 if (idx >= cb->args[0]) { in rtnl_bridge_getlink()
3134 if (idx >= cb->args[0]) { in rtnl_bridge_getlink()
3146 cb->args[0] = idx; in rtnl_bridge_getlink()