Skip to content

Commit 4aed034

Browse files
committed
preventive addition of rules to default acl lists
1 parent 0bf987b commit 4aed034

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

cloudstack_loadbalancer.go

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -858,6 +858,20 @@ func (lb *loadBalancer) updateNetworkACL(publicPort int, protocol LoadBalancerPr
858858
return false, fmt.Errorf("error fetching Network with ID: %v, due to: %s", networkId, err)
859859
}
860860

861+
networkAcl, count, err := lb.NetworkACL.GetNetworkACLListByID(network.Aclid)
862+
if err != nil {
863+
return false, fmt.Errorf("error fetching Network ACL List with ID: %v, due to: %s", network.Aclid, err)
864+
}
865+
866+
if count == 0 {
867+
return false, fmt.Errorf("failed to find network ACL List with id: %v", network.Aclid)
868+
}
869+
870+
if networkAcl.Name == "default_allow" || networkAcl.Name == "default_deny" {
871+
klog.Infof("Network is using a default network ACL. Cannot add ACL rules to default ACLs")
872+
return true, err
873+
}
874+
861875
// create ACL rule
862876
acl := lb.NetworkACL.NewCreateNetworkACLParams(protocol.CSProtocol())
863877
acl.SetAclid(network.Aclid)

0 commit comments

Comments
 (0)