You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by al...@apache.org on 2012/08/14 02:16:56 UTC

git commit: VPC: CS-15805 - guest cidr should be RFC1918 complient

Updated Branches:
  refs/heads/4.0 7120ce071 -> 7c47f3cb9


VPC: CS-15805 - guest cidr should be RFC1918 complient


Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/7c47f3cb
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/7c47f3cb
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/7c47f3cb

Branch: refs/heads/4.0
Commit: 7c47f3cb97d5a3dd4711041b1cce16db822adecc
Parents: 7120ce0
Author: Alena Prokharchyk <al...@citrix.com>
Authored: Mon Aug 13 16:58:45 2012 -0700
Committer: Alena Prokharchyk <al...@citrix.com>
Committed: Mon Aug 13 17:12:32 2012 -0700

----------------------------------------------------------------------
 .../src/com/cloud/network/vpc/VpcManagerImpl.java  |   15 +++++----------
 1 files changed, 5 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/7c47f3cb/server/src/com/cloud/network/vpc/VpcManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/vpc/VpcManagerImpl.java b/server/src/com/cloud/network/vpc/VpcManagerImpl.java
index 3d6f930..492e6a8 100644
--- a/server/src/com/cloud/network/vpc/VpcManagerImpl.java
+++ b/server/src/com/cloud/network/vpc/VpcManagerImpl.java
@@ -583,6 +583,11 @@ public class VpcManagerImpl implements VpcManager, Manager{
         if (!NetUtils.isValidCIDR(cidr)) {
             throw new InvalidParameterValueException("Invalid CIDR specified " + cidr);
         }
+        
+        //cidr has to be RFC 1918 complient
+        if (!NetUtils.validateGuestCidr(cidr)) {
+            throw new InvalidParameterValueException("Guest Cidr " + cidr + " is not RFC1918 compliant");
+        }
 
         // validate network domain
         if (!NetUtils.verifyDomainName(networkDomain)) {
@@ -593,16 +598,6 @@ public class VpcManagerImpl implements VpcManager, Manager{
                             + "and the hyphen ('-'); can't start or end with \"-\"");
         }
 
-
-//        //don't allow overlapping CIDRS for the VPCs of the same account
-//        List<? extends Vpc> vpcs = getVpcsForAccount(vpcOwner.getId());
-//        for (Vpc vpc : vpcs) {
-//            if (NetUtils.isNetworksOverlap(cidr, vpc.getCidr())) {
-//                throw new InvalidParameterValueException("Account already has vpc with cidr " + vpc.getCidr() + 
-//                        " that overlaps the cidr specified: " + cidr, null);
-//            }
-//        }
-
         Transaction txn = Transaction.currentTxn();
         txn.start();
         VpcVO vpc = new VpcVO (zoneId, vpcName, displayText, vpcOwner.getId(), vpcOwner.getDomainId(), vpcOffId, cidr,