diff --git a/service/src/com/android/server/BpfNetMaps.java b/service/src/com/android/server/BpfNetMaps.java index ec168dd0ab..f08ffc320c 100644 --- a/service/src/com/android/server/BpfNetMaps.java +++ b/service/src/com/android/server/BpfNetMaps.java @@ -40,6 +40,7 @@ import static com.android.server.ConnectivityStatsLog.NETWORK_BPF_MAP_INFO; import android.app.StatsManager; import android.content.Context; import android.net.INetd; +import android.os.Build; import android.os.RemoteException; import android.os.ServiceSpecificException; import android.provider.DeviceConfig; @@ -51,6 +52,8 @@ import android.util.Log; import android.util.Pair; import android.util.StatsEvent; +import androidx.annotation.RequiresApi; + import com.android.internal.annotations.VisibleForTesting; import com.android.modules.utils.BackgroundThread; import com.android.modules.utils.build.SdkLevel; @@ -1140,19 +1143,48 @@ public class BpfNetMaps { } } + @RequiresApi(Build.VERSION_CODES.TIRAMISU) private static native void native_init(boolean startSkDestroyListener); + + @RequiresApi(Build.VERSION_CODES.TIRAMISU) private native int native_addNaughtyApp(int uid); + + @RequiresApi(Build.VERSION_CODES.TIRAMISU) private native int native_removeNaughtyApp(int uid); + + @RequiresApi(Build.VERSION_CODES.TIRAMISU) private native int native_addNiceApp(int uid); + + @RequiresApi(Build.VERSION_CODES.TIRAMISU) private native int native_removeNiceApp(int uid); + + @RequiresApi(Build.VERSION_CODES.TIRAMISU) private native int native_setChildChain(int childChain, boolean enable); + + @RequiresApi(Build.VERSION_CODES.TIRAMISU) private native int native_replaceUidChain(String name, boolean isAllowlist, int[] uids); + + @RequiresApi(Build.VERSION_CODES.TIRAMISU) private native int native_setUidRule(int childChain, int uid, int firewallRule); + + @RequiresApi(Build.VERSION_CODES.TIRAMISU) private native int native_addUidInterfaceRules(String ifName, int[] uids); + + @RequiresApi(Build.VERSION_CODES.TIRAMISU) private native int native_removeUidInterfaceRules(int[] uids); + + @RequiresApi(Build.VERSION_CODES.TIRAMISU) private native int native_updateUidLockdownRule(int uid, boolean add); + + @RequiresApi(Build.VERSION_CODES.TIRAMISU) private native int native_swapActiveStatsMap(); + + @RequiresApi(Build.VERSION_CODES.TIRAMISU) private native void native_setPermissionForUids(int permissions, int[] uids); + + @RequiresApi(Build.VERSION_CODES.TIRAMISU) private static native void native_dump(FileDescriptor fd, boolean verbose); + + @RequiresApi(Build.VERSION_CODES.TIRAMISU) private static native int native_synchronizeKernelRCU(); }