aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/onos/apps/dhcp/api/src/main/java/org/onosproject/dhcp/DhcpStore.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/onos/apps/dhcp/api/src/main/java/org/onosproject/dhcp/DhcpStore.java')
-rw-r--r--framework/src/onos/apps/dhcp/api/src/main/java/org/onosproject/dhcp/DhcpStore.java21
1 files changed, 19 insertions, 2 deletions
diff --git a/framework/src/onos/apps/dhcp/api/src/main/java/org/onosproject/dhcp/DhcpStore.java b/framework/src/onos/apps/dhcp/api/src/main/java/org/onosproject/dhcp/DhcpStore.java
index e263b3a2..bd2e16b3 100644
--- a/framework/src/onos/apps/dhcp/api/src/main/java/org/onosproject/dhcp/DhcpStore.java
+++ b/framework/src/onos/apps/dhcp/api/src/main/java/org/onosproject/dhcp/DhcpStore.java
@@ -19,8 +19,10 @@ import org.onlab.packet.Ip4Address;
import org.onlab.packet.MacAddress;
import org.onosproject.net.HostId;
+import java.util.List;
import java.util.Map;
+
/**
* DHCPStore Interface.
*/
@@ -43,15 +45,21 @@ public interface DhcpStore {
*/
Ip4Address suggestIP(HostId hostId, Ip4Address requestedIP);
+
/**
* Assigns the requested IP to the Mac ID, in response to a DHCP REQUEST message.
*
* @param hostId Host Id of the client requesting an IP
* @param ipAddr IP Address being requested
* @param leaseTime Lease time offered by the server for this mapping
+ * @param fromOpenStack true if the request is from Openstack
+ * @param addressList subnetMask, DHCP IP Address, Router IP Address, Domain Server IP Address if the request
+ * from OpenStack
* @return returns true if the assignment was successful, false otherwise
*/
- boolean assignIP(HostId hostId, Ip4Address ipAddr, int leaseTime);
+ boolean assignIP(HostId hostId, Ip4Address ipAddr, int leaseTime, boolean fromOpenStack,
+ List<Ip4Address> addressList);
+
/**
* Sets the default time for which suggested IP mappings are valid.
@@ -87,9 +95,11 @@ public interface DhcpStore {
*
* @param macID macID of the client
* @param ipAddr IP Address requested for the client
+ * @param fromOpenStack true if the request is from Openstack
+ * @param addressList subnetMask, DHCP/Router/Domain Server IP Address if the request from OpenStack
* @return true if the mapping was successfully registered, false otherwise
*/
- boolean assignStaticIP(MacAddress macID, Ip4Address ipAddr);
+ boolean assignStaticIP(MacAddress macID, Ip4Address ipAddr, boolean fromOpenStack, List<Ip4Address> addressList);
/**
* Removes a static IP mapping associated with the given MAC ID from the DHCP Server.
@@ -106,4 +116,11 @@ public interface DhcpStore {
*/
Iterable<Ip4Address> getAvailableIPs();
+ /**
+ *
+ *
+ * @param hostId
+ * @return
+ */
+ IpAssignment getIpAssignmentFromAllocationMap(HostId hostId);
}