Move uidPermissionMap dump to BpfNetMaps
Also remove the dump of mPrivilegedUser because this is not used now and the information is duplicated with uidPermissionMap dump. Before this CL .... mUidPermissionMap: 10049 PERMISSION_NONE 10027 BPF_PERMISSION_INTERNET BPF_PERMISSION_UPDATE_DEVICE_STATS 1041 BPF_PERMISSION_UPDATE_DEVICE_STATS .... After this CL .... sUidPermissionMap: 10049 PERMISSION_NONE 10027 PERMISSION_INTERNET PERMISSION_UPDATE_DEVICE_STATS 1041 PERMISSION_UPDATE_DEVICE_STATS .... Bug: 217624062 Test: dumpsys connectivity trafficcontroller, atest BpfNetMapsTest Change-Id: I416501d5a28a5443f954f9c8c58ea255e5cdc897
This commit is contained in:
@@ -61,6 +61,7 @@ import android.net.INetd;
|
||||
import android.os.Build;
|
||||
import android.os.ServiceSpecificException;
|
||||
import android.system.ErrnoException;
|
||||
import android.util.IndentingPrintWriter;
|
||||
|
||||
import androidx.test.filters.SmallTest;
|
||||
|
||||
@@ -84,6 +85,8 @@ import org.junit.runner.RunWith;
|
||||
import org.mockito.Mock;
|
||||
import org.mockito.MockitoAnnotations;
|
||||
|
||||
import java.io.FileDescriptor;
|
||||
import java.io.StringWriter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@@ -927,4 +930,37 @@ public final class BpfNetMapsTest {
|
||||
final int ret = mBpfNetMaps.pullBpfMapInfoAtom(-1 /* atomTag */, new ArrayList<>());
|
||||
assertEquals(StatsManager.PULL_SKIP, ret);
|
||||
}
|
||||
|
||||
private void assertDumpContains(final String dump, final String message) {
|
||||
assertTrue(String.format("dump(%s) does not contain '%s'", dump, message),
|
||||
dump.contains(message));
|
||||
}
|
||||
|
||||
private String getDump() throws Exception {
|
||||
final StringWriter sw = new StringWriter();
|
||||
mBpfNetMaps.dump(new IndentingPrintWriter(sw), new FileDescriptor(), true /* verbose */);
|
||||
return sw.toString();
|
||||
}
|
||||
|
||||
private void doTestDumpUidPermissionMap(final int permission, final String permissionString)
|
||||
throws Exception {
|
||||
mUidPermissionMap.updateEntry(new S32(TEST_UID), new U8((short) permission));
|
||||
assertDumpContains(getDump(), TEST_UID + " " + permissionString);
|
||||
}
|
||||
|
||||
@Test
|
||||
@IgnoreUpTo(Build.VERSION_CODES.S_V2)
|
||||
public void testDumpUidPermissionMap() throws Exception {
|
||||
doTestDumpUidPermissionMap(PERMISSION_NONE, "PERMISSION_NONE");
|
||||
doTestDumpUidPermissionMap(PERMISSION_INTERNET | PERMISSION_UPDATE_DEVICE_STATS,
|
||||
"PERMISSION_INTERNET PERMISSION_UPDATE_DEVICE_STATS");
|
||||
}
|
||||
|
||||
@Test
|
||||
@IgnoreUpTo(Build.VERSION_CODES.S_V2)
|
||||
public void testDumpUidPermissionMapInvalidPermission() throws Exception {
|
||||
doTestDumpUidPermissionMap(PERMISSION_UNINSTALLED, "PERMISSION_UNINSTALLED error!");
|
||||
doTestDumpUidPermissionMap(PERMISSION_INTERNET | 1 << 6,
|
||||
"PERMISSION_INTERNET PERMISSION_UNKNOWN(64)");
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user