Support experimental UID range routing.

This uses the FRA_UID_START and FRA_UID_END rule attribute types
with values 18 and 19, and the RTA_UID route attribute type
with value 18.

Syntax uses the uidrange keyword for rules and the uid keyword
for routes. Example:

root@hammerhead:/ # ip -6 rule add prio 123 uidrange 100-200 lookup 100
root@hammerhead:/ # ip -6 rule | grep uidrange
123:	from all uidrange 100-200 lookup 100
ooot@hammerhead:/ #
t@hammerhead:/ # ip -4 route get uid 10045 8.8.4.4
8.8.4.4 via 192.168.159.254 dev wlan0  src 192.168.158.102  uid 10045
    cache

(cherry picked from commit 628e7252f75b2621d4b8c5f9314f55f3ec24b92b)

Change-Id: I52d544f27ffef895ad5513a516e37cfba7da9b75
4 files changed