From e7da6fdff14c33909cfbfcd9c80e624b008b11e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maciej=20=C5=BBenczykowski?= Date: Tue, 18 Jul 2023 14:19:19 +0000 Subject: [PATCH] BpfNetMaps.java - add @Requires(T) to all native_ methods MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bug: 291519274 Test: TreeHugger Signed-off-by: Maciej Żenczykowski Change-Id: I0d6c68e639a975cf35ec6cc948be5744b104c98d --- .../src/com/android/server/BpfNetMaps.java | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) 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(); }