• Home
  • Raw
  • Download

Lines Matching refs:nla

675 static int fib_gw_from_attr(__be32 *gw, struct nlattr *nla,  in fib_gw_from_attr()  argument
678 if (nla_len(nla) < sizeof(*gw)) { in fib_gw_from_attr()
683 *gw = nla_get_in_addr(nla); in fib_gw_from_attr()
720 struct nlattr *nla, *nlav, *attrs = rtnh_attrs(rtnh); in fib_get_nhs() local
722 nla = nla_find(attrs, attrlen, RTA_GATEWAY); in fib_get_nhs()
724 if (nla && nlav) { in fib_get_nhs()
729 if (nla) { in fib_get_nhs()
730 ret = fib_gw_from_attr(&fib_cfg.fc_gw4, nla, in fib_get_nhs()
743 nla = nla_find(attrs, attrlen, RTA_FLOW); in fib_get_nhs()
744 if (nla) { in fib_get_nhs()
745 if (nla_len(nla) < sizeof(u32)) { in fib_get_nhs()
749 fib_cfg.fc_flow = nla_get_u32(nla); in fib_get_nhs()
756 nla = nla_find(attrs, attrlen, RTA_ENCAP_TYPE); in fib_get_nhs()
757 if (nla) in fib_get_nhs()
758 fib_cfg.fc_encap_type = nla_get_u16(nla); in fib_get_nhs()
946 struct nlattr *nla, *nlav, *attrs = rtnh_attrs(rtnh); in fib_nh_match() local
949 nla = nla_find(attrs, attrlen, RTA_GATEWAY); in fib_nh_match()
951 if (nla && nlav) { in fib_nh_match()
957 if (nla) { in fib_nh_match()
960 err = fib_gw_from_attr(&gw, nla, extack); in fib_nh_match()
990 nla = nla_find(attrs, attrlen, RTA_FLOW); in fib_nh_match()
991 if (nla) { in fib_nh_match()
992 if (nla_len(nla) < sizeof(u32)) { in fib_nh_match()
996 if (nla_get_u32(nla) != nh->nh_tclassid) in fib_nh_match()
1010 struct nlattr *nla; in fib_metrics_match() local
1016 nla_for_each_attr(nla, cfg->fc_mx, cfg->fc_mx_len, remaining) { in fib_metrics_match()
1017 int type = nla_type(nla); in fib_metrics_match()
1030 nla_strlcpy(tmp, nla, sizeof(tmp)); in fib_metrics_match()
1033 if (nla_len(nla) != sizeof(u32)) in fib_metrics_match()
1035 val = nla_get_u32(nla); in fib_metrics_match()
1681 struct nlattr *nla; in fib_nexthop_info() local
1684 nla = nla_reserve(skb, RTA_VIA, alen + 2); in fib_nexthop_info()
1685 if (!nla) in fib_nexthop_info()
1688 via = nla_data(nla); in fib_nexthop_info()