From f599788e9727f8bb4057efd583bd4c82184f760e Mon Sep 17 00:00:00 2001 From: Jimi Chen Date: Tue, 3 Dec 2024 08:21:09 +0000 Subject: [PATCH 1/2] Add IPv4 all host address definition Bug: 379840541 Test: TH Change-Id: I730e8d9ca939ffe4ec44d764e9579074c7de3128 --- .../com/android/net/module/util/NetworkStackConstants.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/staticlibs/framework/com/android/net/module/util/NetworkStackConstants.java b/staticlibs/framework/com/android/net/module/util/NetworkStackConstants.java index 5d588cc885..4878334b16 100644 --- a/staticlibs/framework/com/android/net/module/util/NetworkStackConstants.java +++ b/staticlibs/framework/com/android/net/module/util/NetworkStackConstants.java @@ -120,6 +120,8 @@ public final class NetworkStackConstants { (byte) 0, (byte) 0, (byte) 0, (byte) 0, (byte) 0, (byte) 0, (byte) 0, (byte) 0, (byte) 0, (byte) 0, (byte) 0, (byte) 0 }); + public static final Inet4Address IPV4_ADDR_ALL_HOST_MULTICAST = + (Inet4Address) InetAddresses.parseNumericAddress("224.0.0.1"); /** * CLAT constants From 2c60124e10cce4d343f2adb1bc3447fcc8992a0a Mon Sep 17 00:00:00 2001 From: Jimi Chen Date: Mon, 9 Dec 2024 05:18:41 +0000 Subject: [PATCH 2/2] Throw `IllegalArgumentException` instead of `RuntimeException` in hexStringToByteArray() Test: atest NetworkStaticLibTests Change-Id: I7bc033e771b175c9941147972a1b778536a76c2a --- .../framework/com/android/net/module/util/HexDump.java | 2 +- .../unit/src/com/android/net/module/util/HexDumpTest.java | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/staticlibs/framework/com/android/net/module/util/HexDump.java b/staticlibs/framework/com/android/net/module/util/HexDump.java index a22c258d0a..409f61113e 100644 --- a/staticlibs/framework/com/android/net/module/util/HexDump.java +++ b/staticlibs/framework/com/android/net/module/util/HexDump.java @@ -202,7 +202,7 @@ public class HexDump { if (c >= 'A' && c <= 'F') return (c - 'A' + 10); if (c >= 'a' && c <= 'f') return (c - 'a' + 10); - throw new RuntimeException("Invalid hex char '" + c + "'"); + throw new IllegalArgumentException("Invalid hex char '" + c + "'"); } /** diff --git a/staticlibs/tests/unit/src/com/android/net/module/util/HexDumpTest.java b/staticlibs/tests/unit/src/com/android/net/module/util/HexDumpTest.java index 5a15585d20..f81978a796 100644 --- a/staticlibs/tests/unit/src/com/android/net/module/util/HexDumpTest.java +++ b/staticlibs/tests/unit/src/com/android/net/module/util/HexDumpTest.java @@ -18,6 +18,7 @@ package com.android.net.module.util; import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertThrows; import androidx.test.filters.SmallTest; import androidx.test.runner.AndroidJUnit4; @@ -49,6 +50,11 @@ public class HexDumpTest { HexDump.hexStringToByteArray("ABCDEF")); } + @Test + public void testInvalidHexStringToByteArray() { + assertThrows(IllegalArgumentException.class, () -> HexDump.hexStringToByteArray("abxX")); + } + @Test public void testIntegerToByteArray() { assertArrayEquals(new byte[]{(byte) 0xff, (byte) 0x00, (byte) 0x00, (byte) 0x04},