Lines Matching refs:score

1586 			       struct ipv6_saddr_score *score,  in ipv6_get_saddr_eval()  argument
1592 if (i <= score->rule) { in ipv6_get_saddr_eval()
1595 ret = score->scopedist; in ipv6_get_saddr_eval()
1598 ret = score->matchlen; in ipv6_get_saddr_eval()
1601 ret = !!test_bit(i, score->scorebits); in ipv6_get_saddr_eval()
1609 ret = !!score->ifa; in ipv6_get_saddr_eval()
1613 ret = ipv6_addr_equal(&score->ifa->addr, dst->addr); in ipv6_get_saddr_eval()
1637 ret = __ipv6_addr_src_scope(score->addr_type); in ipv6_get_saddr_eval()
1642 score->scopedist = ret; in ipv6_get_saddr_eval()
1649 if (!ipv6_use_optimistic_addr(net, score->ifa->idev)) in ipv6_get_saddr_eval()
1651 ret = ipv6_saddr_preferred(score->addr_type) || in ipv6_get_saddr_eval()
1652 !(score->ifa->flags & avoid); in ipv6_get_saddr_eval()
1660 ret = !(score->ifa->flags & IFA_F_HOMEADDRESS) ^ prefhome; in ipv6_get_saddr_eval()
1667 dst->ifindex == score->ifa->idev->dev->ifindex); in ipv6_get_saddr_eval()
1672 &score->ifa->addr, score->addr_type, in ipv6_get_saddr_eval()
1673 score->ifa->idev->dev->ifindex) == dst->label; in ipv6_get_saddr_eval()
1682 READ_ONCE(score->ifa->idev->cnf.use_tempaddr) >= 2; in ipv6_get_saddr_eval()
1683 ret = (!(score->ifa->flags & IFA_F_TEMPORARY)) ^ preftmp; in ipv6_get_saddr_eval()
1690 ret = !(ipv6_addr_orchid(&score->ifa->addr) ^ in ipv6_get_saddr_eval()
1695 ret = ipv6_addr_diff(&score->ifa->addr, dst->addr); in ipv6_get_saddr_eval()
1696 if (ret > score->ifa->prefix_len) in ipv6_get_saddr_eval()
1697 ret = score->ifa->prefix_len; in ipv6_get_saddr_eval()
1698 score->matchlen = ret; in ipv6_get_saddr_eval()
1705 ret = !(score->ifa->flags & IFA_F_OPTIMISTIC); in ipv6_get_saddr_eval()
1713 __set_bit(i, score->scorebits); in ipv6_get_saddr_eval()
1714 score->rule = i; in ipv6_get_saddr_eval()
1725 struct ipv6_saddr_score *score = &scores[1 - hiscore_idx], *hiscore = &scores[hiscore_idx]; in __ipv6_dev_get_saddr() local
1727 list_for_each_entry_rcu(score->ifa, &idev->addr_list, if_list) { in __ipv6_dev_get_saddr()
1740 if ((score->ifa->flags & IFA_F_TENTATIVE) && in __ipv6_dev_get_saddr()
1741 (!(score->ifa->flags & IFA_F_OPTIMISTIC))) in __ipv6_dev_get_saddr()
1744 score->addr_type = __ipv6_addr_type(&score->ifa->addr); in __ipv6_dev_get_saddr()
1746 if (unlikely(score->addr_type == IPV6_ADDR_ANY || in __ipv6_dev_get_saddr()
1747 score->addr_type & IPV6_ADDR_MULTICAST)) { in __ipv6_dev_get_saddr()
1753 score->rule = -1; in __ipv6_dev_get_saddr()
1754 bitmap_zero(score->scorebits, IPV6_SADDR_RULE_MAX); in __ipv6_dev_get_saddr()
1760 miniscore = ipv6_get_saddr_eval(net, score, dst, i); in __ipv6_dev_get_saddr()
1764 score->scopedist > 0) { in __ipv6_dev_get_saddr()
1777 swap(hiscore, score); in __ipv6_dev_get_saddr()
1781 score->ifa = hiscore->ifa; in __ipv6_dev_get_saddr()