Lines Matching refs:rta
226 static int dn_fib_nh_match(struct rtmsg *r, struct nlmsghdr *nlh, struct dn_kern_rta *rta, struct d… in dn_fib_nh_match() argument
231 if (rta->rta_priority && *rta->rta_priority != fi->fib_priority) in dn_fib_nh_match()
234 if (rta->rta_oif || rta->rta_gw) { in dn_fib_nh_match()
235 if ((!rta->rta_oif || *rta->rta_oif == fi->fib_nh->nh_oif) && in dn_fib_nh_match()
236 (!rta->rta_gw || memcmp(rta->rta_gw, &fi->fib_nh->nh_gw, 2) == 0)) in dn_fib_nh_match()
241 if (rta->rta_mp == NULL) in dn_fib_nh_match()
244 nhp = RTA_DATA(rta->rta_mp); in dn_fib_nh_match()
245 nhlen = RTA_PAYLOAD(rta->rta_mp); in dn_fib_nh_match()
505 static int dn_fib_table_insert(struct dn_fib_table *tb, struct rtmsg *r, struct dn_kern_rta *rta, s… in dn_fib_table_insert() argument
524 if (rta->rta_dst) { in dn_fib_table_insert()
526 memcpy(&dst, rta->rta_dst, 2); in dn_fib_table_insert()
532 if ((fi = dn_fib_create_info(r, rta, n, &err)) == NULL) in dn_fib_table_insert()
641 static int dn_fib_table_delete(struct dn_fib_table *tb, struct rtmsg *r, struct dn_kern_rta *rta, s… in dn_fib_table_delete() argument
658 if (rta->rta_dst) { in dn_fib_table_delete()
660 memcpy(&dst, rta->rta_dst, 2); in dn_fib_table_delete()
690 dn_fib_nh_match(r, n, rta, fi) == 0) in dn_fib_table_delete()