You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ap...@apache.org on 2013/07/03 17:23:00 UTC

git commit: updated refs/heads/master-6-17-stable to 58663b3

Updated Branches:
  refs/heads/master-6-17-stable 335294ce4 -> 58663b326


Cloudstack-3313 Ipv6 - Not able to deploy a new VM in IPV6 network.

Signed-off-by: Abhinandan Prateek <ap...@apache.org>


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

Branch: refs/heads/master-6-17-stable
Commit: 58663b326d310ca1295bb603f4f0045dbcb748a7
Parents: 335294c
Author: Bharat Kumar <bh...@citrix.com>
Authored: Tue Jul 2 07:30:44 2013 +0530
Committer: Abhinandan Prateek <ap...@apache.org>
Committed: Wed Jul 3 20:48:10 2013 +0530

----------------------------------------------------------------------
 .../systemvm/debian/config/etc/init.d/cloud-early-config    | 9 ++++++++-
 .../com/cloud/configuration/ConfigurationManagerImpl.java   | 3 ++-
 server/src/com/cloud/network/NetworkManagerImpl.java        | 6 ++++--
 3 files changed, 14 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/58663b32/patches/systemvm/debian/config/etc/init.d/cloud-early-config
----------------------------------------------------------------------
diff --git a/patches/systemvm/debian/config/etc/init.d/cloud-early-config b/patches/systemvm/debian/config/etc/init.d/cloud-early-config
index b215271..d53cb41 100755
--- a/patches/systemvm/debian/config/etc/init.d/cloud-early-config
+++ b/patches/systemvm/debian/config/etc/init.d/cloud-early-config
@@ -541,7 +541,14 @@ setup_dnsmasq() {
   [ $ETH0_IP ] && echo "dhcp-option=6,$NS" >> /etc/dnsmasq.conf
   [ $ETH0_IP6 ] && echo "dhcp-option=option6:dns-server,$NS6" >> /etc/dnsmasq.conf
 #adding the name data-server to the /etc/hosts for allowing the access to user-data service and ssh-key reset in every subnet.
-  echo "$ETH0_IP data-server" >> /etc/hosts
+  if [ -n "$ETH0_IP" ]
+          then
+           echo "$ETH0_IP data-server" >> /etc/hosts
+  fi
+  if [ -n "$ETH0_IP6" ]
+      then
+       echo "$ETH0_IP6 data-server" >> /etc/hosts
+  fi
 }
 
 setup_sshd(){

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/58663b32/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
index 27c1a51..1c973b8 100755
--- a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
+++ b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
@@ -2653,6 +2653,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
                     ip6Gateway = network.getIp6Gateway();
                     ip6Cidr = network.getIp6Cidr();
                     _networkModel.checkIp6Parameters(startIPv6, endIPv6, ip6Gateway, ip6Cidr);
+                    sameSubnet = true;
                 }
             }
         }
@@ -2668,7 +2669,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
              vlanDetails = new Pair<String, String>(newVlanGateway, newVlanNetmask);
         }
         //check if the gatewayip is the part of the ip range being added.
-        if (NetUtils.ipRangesOverlap(startIP, endIP, vlanDetails.first(), vlanDetails.first())) {
+        if (ipv4 && NetUtils.ipRangesOverlap(startIP, endIP, vlanDetails.first(), vlanDetails.first())) {
             throw new InvalidParameterValueException("The gateway ip should not be the part of the ip range being added.");
         }
 

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/58663b32/server/src/com/cloud/network/NetworkManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/NetworkManagerImpl.java b/server/src/com/cloud/network/NetworkManagerImpl.java
index 63e9708..708c03d 100755
--- a/server/src/com/cloud/network/NetworkManagerImpl.java
+++ b/server/src/com/cloud/network/NetworkManagerImpl.java
@@ -1976,8 +1976,10 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L
                     _networkModel.isProviderSupportServiceInNetwork(network.getId(), Service.Dhcp, element.getProvider()) &&
                     element instanceof DhcpServiceProvider) {
                 DhcpServiceProvider sp = (DhcpServiceProvider) element;
-                if (!sp.configDhcpSupportForSubnet(network, profile, vmProfile, dest, context)) {
-                     return false;
+                if (profile.getIp6Address() == null) {
+                    if (!sp.configDhcpSupportForSubnet(network, profile, vmProfile, dest, context)) {
+                        return false;
+                    }
                 }
                 sp.addDhcpEntry(network, profile, vmProfile, dest, context);
             }