CLOUDSTACK-7728: Fixed adding icmp rules with different types and codes
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/f488a8f7 Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/f488a8f7 Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/f488a8f7 Branch: refs/heads/4.5 Commit: f488a8f72cfa60ed9f6540f1d6ec1cb3b44579fa Parents: 080bc2e Author: Jayapal <[email protected]> Authored: Wed Oct 15 17:08:59 2014 +0530 Committer: Jayapal <[email protected]> Committed: Thu Oct 16 09:38:21 2014 +0530 ---------------------------------------------------------------------- server/src/com/cloud/network/firewall/FirewallManagerImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cloudstack/blob/f488a8f7/server/src/com/cloud/network/firewall/FirewallManagerImpl.java ---------------------------------------------------------------------- diff --git a/server/src/com/cloud/network/firewall/FirewallManagerImpl.java b/server/src/com/cloud/network/firewall/FirewallManagerImpl.java index ddc2f73..0537a27 100644 --- a/server/src/com/cloud/network/firewall/FirewallManagerImpl.java +++ b/server/src/com/cloud/network/firewall/FirewallManagerImpl.java @@ -406,7 +406,7 @@ public class FirewallManagerImpl extends ManagerBase implements FirewallService, (newRule.getSourcePortStart() != null && newRule.getSourcePortEnd() != null && rule.getSourcePortStart() != null && rule.getSourcePortEnd() != null); boolean nullPorts = (newRule.getSourcePortStart() == null && newRule.getSourcePortEnd() == null && rule.getSourcePortStart() == null && rule.getSourcePortEnd() == null); - if(nullPorts && duplicatedCidrs && (rule.getProtocol().equalsIgnoreCase(newRule.getProtocol()))) + if(nullPorts && duplicatedCidrs && (rule.getProtocol().equalsIgnoreCase(newRule.getProtocol())) && !newRule.getProtocol().equalsIgnoreCase(NetUtils.ICMP_PROTO)) { throw new NetworkRuleConflictException("There is already a firewall rule specified with protocol = " +newRule.getProtocol()+ " and no ports"); }
