Merge "netd.c - cleanup AID_CLAT handling"
This commit is contained in:
@@ -412,10 +412,8 @@ static __always_inline inline int bpf_traffic_account(struct __sk_buff* skb, boo
|
||||
|
||||
// Always allow and never count clat traffic. Only the IPv4 traffic on the stacked
|
||||
// interface is accounted for and subject to usage restrictions.
|
||||
// TODO: remove sock_uid check once Nat464Xlat javaland adds the socket tag AID_CLAT for clat.
|
||||
if (sock_uid == AID_CLAT || uid == AID_CLAT) {
|
||||
return PASS;
|
||||
}
|
||||
// CLAT IPv6 TX sockets are *always* tagged with CLAT uid, see tagSocketAsClat()
|
||||
if (uid == AID_CLAT) return PASS;
|
||||
|
||||
int match = bpf_owner_match(skb, sock_uid, egress, kver);
|
||||
|
||||
@@ -502,9 +500,8 @@ DEFINE_XTBPF_PROG("skfilter/egress/xtbpf", AID_ROOT, AID_NET_ADMIN, xt_bpf_egres
|
||||
// Clat daemon does not generate new traffic, all its traffic is accounted for already
|
||||
// on the v4-* interfaces (except for the 20 (or 28) extra bytes of IPv6 vs IPv4 overhead,
|
||||
// but that can be corrected for later when merging v4-foo stats into interface foo's).
|
||||
// TODO: remove sock_uid check once Nat464Xlat javaland adds the socket tag AID_CLAT for clat.
|
||||
// CLAT sockets are created by system server and tagged as uid CLAT, see tagSocketAsClat()
|
||||
uint32_t sock_uid = bpf_get_socket_uid(skb);
|
||||
if (sock_uid == AID_CLAT) return BPF_NOMATCH;
|
||||
if (sock_uid == AID_SYSTEM) {
|
||||
uint64_t cookie = bpf_get_socket_cookie(skb);
|
||||
UidTagValue* utag = bpf_cookie_tag_map_lookup_elem(&cookie);
|
||||
|
||||
Reference in New Issue
Block a user