[CLOUDSTACK-6232] bridging allowed in isolated networks (cherry picked from commit f78e7ae51f55da17ed5ba239f99457ee8bc7c4d8)
Signed-off-by: Animesh Chaturvedi <anim...@apache.org> Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/9af90e31 Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/9af90e31 Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/9af90e31 Branch: refs/heads/4.3 Commit: 9af90e319d3efe38c86712e3206984670f3625d7 Parents: 3443517 Author: Daan Hoogland <dhoogl...@schubergphilis.com> Authored: Wed Mar 5 20:16:55 2014 +0100 Committer: Animesh Chaturvedi <anim...@apache.org> Committed: Wed Mar 12 11:03:22 2014 -0700 ---------------------------------------------------------------------- server/src/com/cloud/network/NetworkServiceImpl.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cloudstack/blob/9af90e31/server/src/com/cloud/network/NetworkServiceImpl.java ---------------------------------------------------------------------- diff --git a/server/src/com/cloud/network/NetworkServiceImpl.java b/server/src/com/cloud/network/NetworkServiceImpl.java index c3bf72a..ac04473 100755 --- a/server/src/com/cloud/network/NetworkServiceImpl.java +++ b/server/src/com/cloud/network/NetworkServiceImpl.java @@ -40,6 +40,8 @@ import javax.ejb.Local; import javax.inject.Inject; import javax.naming.ConfigurationException; +import org.apache.log4j.Logger; + import org.apache.cloudstack.acl.ControlledEntity.ACLType; import org.apache.cloudstack.acl.SecurityChecker.AccessType; import org.apache.cloudstack.api.command.admin.network.DedicateGuestVlanRangeCmd; @@ -53,7 +55,6 @@ import org.apache.cloudstack.context.CallContext; import org.apache.cloudstack.engine.orchestration.service.NetworkOrchestrationService; import org.apache.cloudstack.framework.config.dao.ConfigurationDao; import org.apache.cloudstack.network.element.InternalLoadBalancerElementService; -import org.apache.log4j.Logger; import com.cloud.api.ApiDBUtils; import com.cloud.configuration.Config; @@ -1237,7 +1238,10 @@ public class NetworkServiceImpl extends ManagerBase implements NetworkService { // Vlan is created in 1 cases - works in Advance zone only: // 1) GuestType is Shared - boolean createVlan = (startIP != null && endIP != null && zone.getNetworkType() == NetworkType.Advanced && (ntwkOff.getGuestType() == Network.GuestType.Shared)); + boolean createVlan = (startIP != null && endIP != null && zone.getNetworkType() == NetworkType.Advanced + && ((ntwkOff.getGuestType() == Network.GuestType.Shared) + || (ntwkOff.getGuestType() == GuestType.Isolated && + !areServicesSupportedByNetworkOffering(ntwkOff.getId(), Service.SourceNat)))); if (!createVlan) { // Only support advance shared network in IPv6, which means createVlan is a must @@ -4003,7 +4007,8 @@ public class NetworkServiceImpl extends ManagerBase implements NetworkService { @Inject public void setNetworkGurus(List<NetworkGuru> networkGurus) { - this._networkGurus = networkGurus; + _networkGurus = networkGurus; + } }