aboutsummaryrefslogtreecommitdiff
path: root/tests/iketests/src
diff options
context:
space:
mode:
authorevitayan <evitayan@google.com>2018-10-18 16:03:15 -0700
committerevitayan <evitayan@google.com>2018-10-19 11:23:06 -0700
commit0c8937a647aa762ce69d060ba4fdbd3603847223 (patch)
tree7c2697695b1fa4fb3209fb096415468dc88bc10b /tests/iketests/src
parent3ab61333c559c0e1e536b9d1c3d751230983339c (diff)
downloadike-0c8937a647aa762ce69d060ba4fdbd3603847223.tar.gz
Implement PrfTransform
This commit: - Implement PrfTransform - Add constants of supported prfs Bug: 115994442 Test: FrameworksIkeTests IkeSaPayloadTest Change-Id: I74f741769bf9f0ffe6d133f9f5095fa3fec04106
Diffstat (limited to 'tests/iketests/src')
-rw-r--r--tests/iketests/src/java/com/android/ike/ikev2/message/IkeSaPayloadTest.java26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeSaPayloadTest.java b/tests/iketests/src/java/com/android/ike/ikev2/message/IkeSaPayloadTest.java
index e2909fc0..20bc67e0 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeSaPayloadTest.java
+++ b/tests/iketests/src/java/com/android/ike/ikev2/message/IkeSaPayloadTest.java
@@ -34,6 +34,7 @@ import com.android.ike.ikev2.message.IkeSaPayload.Attribute;
import com.android.ike.ikev2.message.IkeSaPayload.AttributeDecoder;
import com.android.ike.ikev2.message.IkeSaPayload.EncryptionTransform;
import com.android.ike.ikev2.message.IkeSaPayload.KeyLengthAttribute;
+import com.android.ike.ikev2.message.IkeSaPayload.PrfTransform;
import com.android.ike.ikev2.message.IkeSaPayload.Proposal;
import com.android.ike.ikev2.message.IkeSaPayload.Transform;
import com.android.ike.ikev2.message.IkeSaPayload.TransformDecoder;
@@ -71,6 +72,7 @@ public final class IkeSaPayloadTest {
+ "400001e030000080400001f030000080400000f030000080400001003"
+ "00000804000012000000080400000e";
private static final String ENCR_TRANSFORM_RAW_PACKET = "0300000c0100000c800e0080";
+ private static final String PRF_TRANSFORM_RAW_PACKET = "0000000802000002";
private static final int TRANSFORM_TYPE_POSITION = 4;
private static final int TRANSFORM_ID_POSITION = 7;
@@ -167,6 +169,30 @@ public final class IkeSaPayloadTest {
}
@Test
+ public void testDecodePrfTransform() throws Exception {
+ byte[] inputPacket = TestUtils.hexStringToByteArray(PRF_TRANSFORM_RAW_PACKET);
+ ByteBuffer inputBuffer = ByteBuffer.wrap(inputPacket);
+
+ when(mMockedAttributeDecoder.decodeAttributes(anyInt(), any()))
+ .thenReturn(new LinkedList<Attribute>());
+ Transform.sAttributeDecoder = mMockedAttributeDecoder;
+
+ Transform transform = Transform.readFrom(inputBuffer);
+ assertEquals(Transform.TRANSFORM_TYPE_PRF, transform.type);
+ assertEquals(SaProposal.PSEUDORANDOM_FUNCTION_HMAC_SHA1, transform.id);
+ assertTrue(transform.isSupported);
+ }
+
+ @Test
+ public void testConstructPrfTransformWithUnSupportedId() throws Exception {
+ try {
+ new PrfTransform(SaProposal.PSEUDORANDOM_FUNCTION_AES128_XCBC + 1);
+ fail("Expected IllegalArgumentException for unsupported Transform ID");
+ } catch (IllegalArgumentException expected) {
+ }
+ }
+
+ @Test
public void testDecodeUnrecognizedTransform() throws Exception {
byte[] inputPacket = TestUtils.hexStringToByteArray(ENCR_TRANSFORM_RAW_PACKET);
inputPacket[TRANSFORM_TYPE_POSITION] = 6;