From e10bd36794f149b29859ff2401c7c576f6146689 Mon Sep 17 00:00:00 2001
From: gifrerenom <lluis.gifre@cttc.es>
Date: Mon, 11 Nov 2024 10:10:15 +0000
Subject: [PATCH] Service component - L3NM gNMI OpenConfig:

- Ignore default networks 0.0.0.0/*
---
 .../l3nm_gnmi_openconfig/ConfigRuleComposer.py                 | 3 ++-
 .../l3nm_gnmi_openconfig/StaticRouteGenerator.py               | 1 +
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/service/service/service_handlers/l3nm_gnmi_openconfig/ConfigRuleComposer.py b/src/service/service/service_handlers/l3nm_gnmi_openconfig/ConfigRuleComposer.py
index 54101d041..ec03f1b7a 100644
--- a/src/service/service/service_handlers/l3nm_gnmi_openconfig/ConfigRuleComposer.py
+++ b/src/service/service/service_handlers/l3nm_gnmi_openconfig/ConfigRuleComposer.py
@@ -201,7 +201,8 @@ class DeviceComposer:
                 endpoint.ipv4_prefix_len = ipv4_prefix_len
                 endpoint.sub_interface_index = int(subif_index)
                 endpoint_ip_network = netaddr.IPNetwork('{:s}/{:d}'.format(ipv4_network, ipv4_prefix_len))
-                self.connected.add(str(endpoint_ip_network.cidr))
+                if '0.0.0.0/' not in str(endpoint_ip_network.cidr):
+                    self.connected.add(str(endpoint_ip_network.cidr))
 
             match = RE_SR.match(config_rule_custom.resource_key)
             if match is not None:
diff --git a/src/service/service/service_handlers/l3nm_gnmi_openconfig/StaticRouteGenerator.py b/src/service/service/service_handlers/l3nm_gnmi_openconfig/StaticRouteGenerator.py
index c52321473..b315c7f4d 100644
--- a/src/service/service/service_handlers/l3nm_gnmi_openconfig/StaticRouteGenerator.py
+++ b/src/service/service/service_handlers/l3nm_gnmi_openconfig/StaticRouteGenerator.py
@@ -138,6 +138,7 @@ class StaticRouteGenerator:
             if endpoint.ipv4_address is None: continue
             ip_network = _compose_ipv4_network(endpoint.ipv4_address, endpoint.ipv4_prefix_len)
 
+            if '0.0.0.0/' in str(ip_network.cidr): continue
             device.connected.add(str(ip_network.cidr))
 
     def _compute_static_routes(
-- 
GitLab