aboutsummaryrefslogtreecommitdiff
path: root/tests/iketests/src/java/com
diff options
context:
space:
mode:
authorevitayan <evitayan@google.com>2019-10-10 21:05:34 -0700
committerevitayan <evitayan@google.com>2019-10-17 18:25:44 -0700
commit3a793e9334d27db22d3495a3e2f74817b3a5cd52 (patch)
tree730d034467bd1ea8ceba501224aa3502be12dee7 /tests/iketests/src/java/com
parentbe439e052706185a39afc6edb9907b84b7d687f3 (diff)
downloadike-3a793e9334d27db22d3495a3e2f74817b3a5cd52.tar.gz
Add interfaces for requesting DNS server and subnet
This commit allows users to add requests for DNS server and internal subnet when negotiating tunnel mode Child Session. Bug: 140644654 Test: atest FrameworksIkeTests(all tests passed) Change-Id: I02ac09c7958c90d1f0c9d6d4c6a692aa5bb9c3c1
Diffstat (limited to 'tests/iketests/src/java/com')
-rw-r--r--tests/iketests/src/java/com/android/ike/ikev2/TunnelModeChildSessionOptionsTest.java48
1 files changed, 48 insertions, 0 deletions
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/TunnelModeChildSessionOptionsTest.java b/tests/iketests/src/java/com/android/ike/ikev2/TunnelModeChildSessionOptionsTest.java
index a67d44f9..5ed6480c 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/TunnelModeChildSessionOptionsTest.java
+++ b/tests/iketests/src/java/com/android/ike/ikev2/TunnelModeChildSessionOptionsTest.java
@@ -20,8 +20,12 @@ import static android.system.OsConstants.AF_INET;
import static android.system.OsConstants.AF_INET6;
import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_ADDRESS;
+import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_DNS;
import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_NETMASK;
+import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_SUBNET;
import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP6_ADDRESS;
+import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP6_DNS;
+import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP6_SUBNET;
import static org.junit.Assert.assertArrayEquals;
import static org.junit.Assert.assertEquals;
@@ -52,6 +56,11 @@ public final class TunnelModeChildSessionOptionsTest {
private static final Inet6Address IPV6_ADDRESS =
(Inet6Address) (InetAddressUtils.parseNumericAddress("2001:db8::1"));
+ private static final Inet4Address IPV4_DNS_SERVER =
+ (Inet4Address) (InetAddressUtils.parseNumericAddress("8.8.8.8"));
+ private static final Inet6Address IPV6_DNS_SERVER =
+ (Inet6Address) (InetAddressUtils.parseNumericAddress("2001:4860:4860::8888"));
+
private ChildSaProposal mSaProposal;
@Before
@@ -130,4 +139,43 @@ public final class TunnelModeChildSessionOptionsTest {
}
}
+
+ @Test
+ public void testBuildChildSessionOptionsWithDnsServerReq() {
+ TunnelModeChildSessionOptions childOptions =
+ new TunnelModeChildSessionOptions.Builder()
+ .addSaProposal(mSaProposal)
+ .addInternalDnsServerRequest(AF_INET, 1)
+ .addInternalDnsServerRequest(AF_INET6, 1)
+ .addInternalDnsServerRequest(IPV4_DNS_SERVER)
+ .addInternalDnsServerRequest(IPV6_DNS_SERVER)
+ .build();
+
+ verifyCommon(childOptions);
+
+ SparseArray<Integer> exptectedAttrCntMap = new SparseArray<>();
+ exptectedAttrCntMap.put(CONFIG_ATTR_INTERNAL_IP4_DNS, 2);
+ exptectedAttrCntMap.put(CONFIG_ATTR_INTERNAL_IP6_DNS, 2);
+
+ verifyAttrTypes(exptectedAttrCntMap, childOptions);
+ }
+
+ @Test
+ public void testBuildChildSessionOptionsWithSubnetReq() {
+ TunnelModeChildSessionOptions childOptions =
+ new TunnelModeChildSessionOptions.Builder()
+ .addSaProposal(mSaProposal)
+ .addInternalSubnetRequest(AF_INET, 1)
+ .addInternalSubnetRequest(AF_INET6, 1)
+ .build();
+
+ verifyCommon(childOptions);
+
+ SparseArray<Integer> exptectedAttrCntMap = new SparseArray<>();
+ exptectedAttrCntMap.put(CONFIG_ATTR_INTERNAL_IP4_SUBNET, 1);
+ exptectedAttrCntMap.put(CONFIG_ATTR_INTERNAL_IP6_SUBNET, 1);
+
+ verifyAttrTypes(exptectedAttrCntMap, childOptions);
+ }
}
+