in controllers/policyendpoints_controller.go [761:786]
func (r *PolicyEndpointsReconciler) DeriveFireWallRulesPerPodIdentifier(podIdentifier string, podNamespace string) ([]ebpf.EbpfFirewallRules,
[]ebpf.EbpfFirewallRules, error) {
ingressRules, egressRules, isIngressIsolated, isEgressIsolated, err := r.deriveIngressAndEgressFirewallRules(context.Background(), podIdentifier,
podNamespace, "", false)
if err != nil {
r.log.Error(err, "Error deriving firewall rules")
return ingressRules, egressRules, nil
}
if len(ingressRules) == 0 && !isIngressIsolated {
// No active ingress rules for this pod, but we only should land here
// if there are active egress rules. So, we need to add an allow-all entry to ingress rule set
r.log.Info("No Ingress rules and no ingress isolation - Appending catch all entry")
r.addCatchAllEntry(context.Background(), &ingressRules)
}
if len(egressRules) == 0 && !isEgressIsolated {
// No active egress rules for this pod but we only should land here
// if there are active ingress rules. So, we need to add an allow-all entry to egress rule set
r.log.Info("No Egress rules and no egress isolation - Appending catch all entry")
r.addCatchAllEntry(context.Background(), &egressRules)
}
return ingressRules, egressRules, nil
}