Lines Matching refs:ndm

1821 	struct ndmsg *ndm;  in neigh_delete()  local
1829 if (nlmsg_len(nlh) < sizeof(*ndm)) in neigh_delete()
1832 dst_attr = nlmsg_find_attr(nlh, sizeof(*ndm), NDA_DST); in neigh_delete()
1838 ndm = nlmsg_data(nlh); in neigh_delete()
1839 if (ndm->ndm_ifindex) { in neigh_delete()
1840 dev = __dev_get_by_index(net, ndm->ndm_ifindex); in neigh_delete()
1847 tbl = neigh_find_table(ndm->ndm_family); in neigh_delete()
1856 if (ndm->ndm_flags & NTF_PROXY) { in neigh_delete()
1888 struct ndmsg *ndm; in neigh_add() local
1898 err = nlmsg_parse_deprecated(nlh, sizeof(*ndm), tb, NDA_MAX, in neigh_add()
1909 ndm = nlmsg_data(nlh); in neigh_add()
1910 if (ndm->ndm_ifindex) { in neigh_add()
1911 dev = __dev_get_by_index(net, ndm->ndm_ifindex); in neigh_add()
1923 tbl = neigh_find_table(ndm->ndm_family); in neigh_add()
1938 if (ndm->ndm_flags & NTF_PROXY) { in neigh_add()
1944 pn->flags = ndm->ndm_flags; in neigh_add()
1971 exempt_from_gc = ndm->ndm_state & NUD_PERMANENT || in neigh_add()
1972 ndm->ndm_flags & NTF_EXT_LEARNED; in neigh_add()
1974 ndm->ndm_flags & NTF_EXT_LEARNED, in neigh_add()
1994 if (ndm->ndm_flags & NTF_EXT_LEARNED) in neigh_add()
1996 if (ndm->ndm_flags & NTF_ROUTER) in neigh_add()
1998 if (ndm->ndm_flags & NTF_USE) in neigh_add()
2001 err = __neigh_update(neigh, lladdr, ndm->ndm_state, flags, in neigh_add()
2003 if (!err && ndm->ndm_flags & NTF_USE) { in neigh_add()
2461 struct ndmsg *ndm; in neigh_fill_info() local
2463 nlh = nlmsg_put(skb, pid, seq, type, sizeof(*ndm), flags); in neigh_fill_info()
2467 ndm = nlmsg_data(nlh); in neigh_fill_info()
2468 ndm->ndm_family = neigh->ops->family; in neigh_fill_info()
2469 ndm->ndm_pad1 = 0; in neigh_fill_info()
2470 ndm->ndm_pad2 = 0; in neigh_fill_info()
2471 ndm->ndm_flags = neigh->flags; in neigh_fill_info()
2472 ndm->ndm_type = neigh->type; in neigh_fill_info()
2473 ndm->ndm_ifindex = neigh->dev->ifindex; in neigh_fill_info()
2479 ndm->ndm_state = neigh->nud_state; in neigh_fill_info()
2516 struct ndmsg *ndm; in pneigh_fill_info() local
2518 nlh = nlmsg_put(skb, pid, seq, type, sizeof(*ndm), flags); in pneigh_fill_info()
2522 ndm = nlmsg_data(nlh); in pneigh_fill_info()
2523 ndm->ndm_family = tbl->family; in pneigh_fill_info()
2524 ndm->ndm_pad1 = 0; in pneigh_fill_info()
2525 ndm->ndm_pad2 = 0; in pneigh_fill_info()
2526 ndm->ndm_flags = pn->flags | NTF_PROXY; in pneigh_fill_info()
2527 ndm->ndm_type = RTN_UNICAST; in pneigh_fill_info()
2528 ndm->ndm_ifindex = pn->dev ? pn->dev->ifindex : 0; in pneigh_fill_info()
2529 ndm->ndm_state = NUD_NONE; in pneigh_fill_info()
2679 struct ndmsg *ndm; in neigh_valid_dump_req() local
2681 if (nlh->nlmsg_len < nlmsg_msg_size(sizeof(*ndm))) { in neigh_valid_dump_req()
2686 ndm = nlmsg_data(nlh); in neigh_valid_dump_req()
2687 if (ndm->ndm_pad1 || ndm->ndm_pad2 || ndm->ndm_ifindex || in neigh_valid_dump_req()
2688 ndm->ndm_state || ndm->ndm_type) { in neigh_valid_dump_req()
2693 if (ndm->ndm_flags & ~NTF_PROXY) { in neigh_valid_dump_req()
2783 struct ndmsg *ndm; in neigh_valid_get_req() local
2786 if (nlh->nlmsg_len < nlmsg_msg_size(sizeof(*ndm))) { in neigh_valid_get_req()
2791 ndm = nlmsg_data(nlh); in neigh_valid_get_req()
2792 if (ndm->ndm_pad1 || ndm->ndm_pad2 || ndm->ndm_state || in neigh_valid_get_req()
2793 ndm->ndm_type) { in neigh_valid_get_req()
2798 if (ndm->ndm_flags & ~NTF_PROXY) { in neigh_valid_get_req()
2808 *ndm_flags = ndm->ndm_flags; in neigh_valid_get_req()
2809 *dev_idx = ndm->ndm_ifindex; in neigh_valid_get_req()
2810 *tbl = neigh_find_table(ndm->ndm_family); in neigh_valid_get_req()