Lines Matching refs:nla
643 struct nlattr *nla, *attrs = rtnh_attrs(rtnh); in mpls_count_nexthops() local
647 nla = nla_find(attrs, attrlen, RTA_VIA); in mpls_count_nexthops()
648 if (nla && nla_len(nla) >= in mpls_count_nexthops()
650 int via_alen = nla_len(nla) - in mpls_count_nexthops()
969 struct nlattr *nla; in nla_put_via() local
973 nla = nla_reserve(skb, RTA_VIA, alen + 2); in nla_put_via()
974 if (!nla) in nla_put_via()
980 via = nla_data(nla); in nla_put_via()
989 struct nlattr *nla; in nla_put_labels() local
993 nla = nla_reserve(skb, attrtype, labels*4); in nla_put_labels()
994 if (!nla) in nla_put_labels()
997 nla_label = nla_data(nla); in nla_put_labels()
1008 int nla_get_labels(const struct nlattr *nla, in nla_get_labels() argument
1011 unsigned len = nla_len(nla); in nla_get_labels()
1026 nla_label = nla_data(nla); in nla_get_labels()
1054 int nla_get_via(const struct nlattr *nla, u8 *via_alen, in nla_get_via() argument
1057 struct rtvia *via = nla_data(nla); in nla_get_via()
1061 if (nla_len(nla) < offsetof(struct rtvia, rtvia_addr)) in nla_get_via()
1063 alen = nla_len(nla) - in nla_get_via()
1144 struct nlattr *nla = tb[index]; in rtm_to_route_config() local
1145 if (!nla) in rtm_to_route_config()
1150 cfg->rc_ifindex = nla_get_u32(nla); in rtm_to_route_config()
1153 if (nla_get_labels(nla, MAX_NEW_LABELS, in rtm_to_route_config()
1161 if (nla_get_labels(nla, 1, &label_count, in rtm_to_route_config()
1173 if (nla_get_via(nla, &cfg->rc_via_alen, in rtm_to_route_config()
1180 cfg->rc_mp = nla_data(nla); in rtm_to_route_config()
1181 cfg->rc_mp_len = nla_len(nla); in rtm_to_route_config()