diff --git a/api/src/org/apache/cloudstack/api/command/user/network/CreateNetworkCmd.java b/api/src/org/apache/cloudstack/api/command/user/network/CreateNetworkCmd.java index 580948ac2b1..bbd8b5a7447 100644 --- a/api/src/org/apache/cloudstack/api/command/user/network/CreateNetworkCmd.java +++ b/api/src/org/apache/cloudstack/api/command/user/network/CreateNetworkCmd.java @@ -268,6 +268,10 @@ public class CreateNetworkCmd extends BaseCmd { @Override // an exception thrown by createNetwork() will be caught by the dispatcher. public void execute() throws InsufficientCapacityException, ConcurrentOperationException, ResourceAllocationException{ + if (getStartIpv6() != null && getStartIp() != null) { + throw new InvalidParameterValueException("Cannot support dualstack at this moment!"); + } + Network result = _networkService.createGuestNetwork(this); if (result != null) { NetworkResponse response = _responseGenerator.createNetworkResponse(result); diff --git a/api/src/org/apache/cloudstack/api/command/user/vm/DeployVMCmd.java b/api/src/org/apache/cloudstack/api/command/user/vm/DeployVMCmd.java index 83025905cbf..b21b53c831c 100644 --- a/api/src/org/apache/cloudstack/api/command/user/vm/DeployVMCmd.java +++ b/api/src/org/apache/cloudstack/api/command/user/vm/DeployVMCmd.java @@ -302,6 +302,9 @@ public class DeployVMCmd extends BaseAsyncCreateCmd { if (requestedIpv6 != null) { requestedIpv6 = requestedIpv6.toLowerCase(); } + if (requestedIpv6 != null) { + throw new InvalidParameterValueException("Cannot support specified IPv6 address!"); + } IpAddresses addrs = new IpAddresses(requestedIp, requestedIpv6); ipToNetworkMap.put(networkId, addrs); } @@ -404,6 +407,10 @@ public class DeployVMCmd extends BaseAsyncCreateCmd { @Override public void create() throws ResourceAllocationException{ try { + if (getIp6Address() != null) { + throw new InvalidParameterValueException("Cannot support specified IPv6 address!"); + } + //Verify that all objects exist before passing them to the service Account owner = _accountService.getActiveAccountById(getEntityOwnerId()); diff --git a/server/src/com/cloud/network/NetworkServiceImpl.java b/server/src/com/cloud/network/NetworkServiceImpl.java index e1c020b828b..a5fd0e929b7 100755 --- a/server/src/com/cloud/network/NetworkServiceImpl.java +++ b/server/src/com/cloud/network/NetworkServiceImpl.java @@ -735,10 +735,6 @@ public class NetworkServiceImpl implements NetworkService, Manager { UserContext.current().setAccountId(owner.getAccountId()); - if (startIPv6 != null && startIP != null) { - throw new InvalidParameterValueException("Cannot support dualstack at this moment!"); - } - boolean ipv4 = false, ipv6 = false; if (startIP != null) { ipv4 = true;