net: core: add missing check for uid_range in rule_exists.
authorLorenzo Colitti <lorenzo@google.com>
Sun, 6 Nov 2016 15:16:25 +0000 (00:16 +0900)
committerDavid S. Miller <davem@davemloft.net>
Wed, 9 Nov 2016 18:28:10 +0000 (13:28 -0500)
commit35b80733b3d3ab620edc30f286606be775930843
tree51050711a9fc2da7b58882e0631836f5b6b882b7
parentbb48024284327768debd03a197d7c4179ec6ca05
net: core: add missing check for uid_range in rule_exists.

Without this check, it is not possible to create two rules that
are identical except for their UID ranges. For example:

root@net-test:/# ip rule add prio 1000 lookup 300
root@net-test:/# ip rule add prio 1000 uidrange 100-200 lookup 300
RTNETLINK answers: File exists
root@net-test:/# ip rule add prio 1000 uidrange 100-199 lookup 100
root@net-test:/# ip rule add prio 1000 uidrange 200-299 lookup 200
root@net-test:/# ip rule add prio 1000 uidrange 300-399 lookup 100
RTNETLINK answers: File exists

Tested: https://android-review.googlesource.com/#/c/299980/
Signed-off-by: Lorenzo Colitti <lorenzo@google.com>
Acked-by: Maciej Żenczykowski <maze@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/fib_rules.c