VOL-149: Configure RADIUS Attributes as per subscriber information
VOL-148: RADIUS VLAN ID configurable
Change-Id: I2a51dbf316637e685b7e3c36595a27922c79b23c
diff --git a/src/test/java/org/opencord/aaa/AaaManagerTest.java b/src/test/java/org/opencord/aaa/AaaManagerTest.java
index 4c1f7b2..dadcc71 100644
--- a/src/test/java/org/opencord/aaa/AaaManagerTest.java
+++ b/src/test/java/org/opencord/aaa/AaaManagerTest.java
@@ -29,6 +29,7 @@
import org.onosproject.core.CoreServiceAdapter;
import org.onosproject.net.config.Config;
import org.onosproject.net.config.NetworkConfigRegistryAdapter;
+import org.onosproject.net.packet.InboundPacket;
import java.net.InetAddress;
import java.net.UnknownHostException;
@@ -47,7 +48,7 @@
private AaaManager aaaManager;
class AaaManagerWithoutRadiusServer extends AaaManager {
- protected void sendRadiusPacket(RADIUS radiusPacket) {
+ protected void sendRadiusPacket(RADIUS radiusPacket, InboundPacket inPkt) {
savePacket(radiusPacket);
}
}
@@ -204,7 +205,7 @@
RADIUS radiusCodeAccessChallengePacket =
constructRadiusCodeAccessChallengePacket(RADIUS.RADIUS_CODE_ACCESS_CHALLENGE, EAP.ATTR_MD5);
- aaaManager.radiusListener.handleRadiusPacket(radiusCodeAccessChallengePacket);
+ aaaManager.handleRadiusPacket(radiusCodeAccessChallengePacket);
Ethernet radiusChallengeMD5Packet = (Ethernet) fetchPacket(2);
checkRadiusPacket(aaaManager, radiusChallengeMD5Packet, EAP.ATTR_MD5);
@@ -221,7 +222,7 @@
RADIUS responseMd5RadiusPacket = (RADIUS) fetchPacket(3);
checkRadiusPacketFromSupplicant(responseMd5RadiusPacket);
- assertThat(responseMd5RadiusPacket.getIdentifier(), is((byte) 0));
+ assertThat(responseMd5RadiusPacket.getIdentifier(), is((byte) 3));
assertThat(responseMd5RadiusPacket.getCode(), is(RADIUS.RADIUS_CODE_ACCESS_REQUEST));
// State machine should be in pending state
@@ -233,7 +234,7 @@
RADIUS successPacket =
constructRadiusCodeAccessChallengePacket(RADIUS.RADIUS_CODE_ACCESS_ACCEPT, EAP.SUCCESS);
- aaaManager.radiusListener.handleRadiusPacket((successPacket));
+ aaaManager.handleRadiusPacket((successPacket));
Ethernet supplicantSuccessPacket = (Ethernet) fetchPacket(4);
checkRadiusPacket(aaaManager, supplicantSuccessPacket, EAP.SUCCESS);
diff --git a/src/test/java/org/opencord/aaa/StateMachineTest.java b/src/test/java/org/opencord/aaa/StateMachineTest.java
index f87d72f..3f95134 100644
--- a/src/test/java/org/opencord/aaa/StateMachineTest.java
+++ b/src/test/java/org/opencord/aaa/StateMachineTest.java
@@ -1,6 +1,5 @@
/*
- *
- * Copyright 2015 AT&T Foundry
+ * Copyright 2017-present Open Networking Foundation
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -18,13 +17,13 @@
package org.opencord.aaa;
import org.junit.After;
-import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNull;
+import org.onlab.packet.VlanId;
public class StateMachineTest {
StateMachine stateMachine = null;
@@ -32,15 +31,13 @@
@Before
public void setUp() {
System.out.println("Set Up.");
- StateMachine.bitSet.clear();
StateMachine.initializeMaps();
- stateMachine = new StateMachine("session0");
+ stateMachine = new StateMachine("session0", VlanId.vlanId((short) 2));
}
@After
public void tearDown() {
System.out.println("Tear Down.");
- StateMachine.bitSet.clear();
StateMachine.destroyMaps();
stateMachine = null;
}
@@ -216,62 +213,6 @@
assertEquals(stateMachine.state(), StateMachine.STATE_IDLE);
}
-
- @Test
- public void testIdentifierAvailability() throws StateMachineException {
- System.out.println("======= IDENTIFIER TEST =======.");
- byte identifier = stateMachine.identifier();
- System.out.println("State: " + stateMachine.state());
- System.out.println("Identifier: " + Byte.toUnsignedInt(identifier));
- Assert.assertEquals(-1, identifier);
- stateMachine.start();
-
-
- StateMachine sm247 = null;
- StateMachine sm3 = null;
-
-
- //create 255 others state machines
- for (int i = 1; i <= 255; i++) {
- StateMachine sm = new StateMachine("session" + i);
- sm.start();
- byte id = sm.identifier();
- Assert.assertEquals(i, Byte.toUnsignedInt(id));
- if (i == 3) {
- sm3 = sm;
- System.out.println("SM3: " + sm3.toString());
- }
- if (i == 247) {
- sm247 = sm;
- System.out.println("SM247: " + sm247.toString());
- }
- }
-
- //simulate the state machine for a specific session and logoff so we can free up a spot for an identifier
- //let's choose identifier 247 then we free up 3
- Assert.assertNotNull(sm247);
- sm247.requestAccess();
- sm247.authorizeAccess();
- sm247.logoff();
-
- Assert.assertNotNull(sm3);
- sm3.requestAccess();
- sm3.authorizeAccess();
- sm3.logoff();
-
- StateMachine otherSM3 = new StateMachine("session3b");
- otherSM3.start();
- otherSM3.requestAccess();
- byte id3 = otherSM3.identifier();
- Assert.assertEquals(3, Byte.toUnsignedInt(id3));
-
- StateMachine otherSM247 = new StateMachine("session247b");
- otherSM247.start();
- otherSM247.requestAccess();
- byte id247 = otherSM247.identifier();
- Assert.assertEquals(247, Byte.toUnsignedInt(id247));
- }
-
@Test
public void testSessionIdLookups() {
String sessionId1 = "session1";
@@ -285,8 +226,8 @@
StateMachine.lookupStateMachineBySessionId(sessionId2);
assertNull(machine2ShouldBeNull);
- StateMachine stateMachine1 = new StateMachine(sessionId1);
- StateMachine stateMachine2 = new StateMachine(sessionId2);
+ StateMachine stateMachine1 = new StateMachine(sessionId1, VlanId.vlanId((short) 2));
+ StateMachine stateMachine2 = new StateMachine(sessionId2, VlanId.vlanId((short) 2));
assertEquals(stateMachine1,
StateMachine.lookupStateMachineBySessionId(sessionId1));
@@ -307,9 +248,9 @@
StateMachine.lookupStateMachineById((byte) 2);
assertNull(machine2ShouldBeNull);
- StateMachine stateMachine1 = new StateMachine(sessionId1);
+ StateMachine stateMachine1 = new StateMachine(sessionId1, VlanId.vlanId((short) 2));
stateMachine1.start();
- StateMachine stateMachine2 = new StateMachine(sessionId2);
+ StateMachine stateMachine2 = new StateMachine(sessionId2, VlanId.vlanId((short) 2));
stateMachine2.start();
assertEquals(stateMachine1,