@Override public boolean applyDefaultEgressFirewallRule(Long networkId, boolean defaultPolicy) throws ResourceUnavailableException { if (defaultPolicy == false) { // If default policy is false no need apply rules on backend because firewall provider blocks // by default return true; } s_logger.debug("applying default firewall egress rules "); NetworkVO network = _networkDao.findById(networkId); List<String> sourceCidr = new ArrayList<String>(); sourceCidr.add(NetUtils.ALL_CIDRS); FirewallRuleVO ruleVO = new FirewallRuleVO( null, null, null, null, "all", networkId, network.getAccountId(), network.getDomainId(), Purpose.Firewall, sourceCidr, null, null, null, FirewallRule.TrafficType.Egress, FirewallRuleType.System); List<FirewallRuleVO> rules = new ArrayList<FirewallRuleVO>(); rules.add(ruleVO); try { // this is not required to store in db because we don't to add this rule along with the normal // rules if (!applyRules(rules, false, false)) { return false; } } catch (ResourceUnavailableException ex) { s_logger.warn("Failed to apply default egress rules for guest network due to ", ex); return false; } return true; }