summaryrefslogtreecommitdiffstats
path: root/VNFs/DPPD-PROX/packet_utils.c
diff options
context:
space:
mode:
authorLuc Provoost <luc.provoost@gmail.com>2022-02-21 08:26:20 +0000
committerGerrit Code Review <gerrit@opnfv.org>2022-02-21 08:26:20 +0000
commit834497b9c6ea36461a5b616411325d90ef60f925 (patch)
tree94710e8b06d16c135cbb22b93c97137e4d70f0ca /VNFs/DPPD-PROX/packet_utils.c
parentfa752f43d5c24fad1618d2514cbeb86f5549bec4 (diff)
parent0a07d296d453c11a31356844a0aae140fe012324 (diff)
Merge "Fix issues when handling unkown ipv6 packets"0.0.2
Diffstat (limited to 'VNFs/DPPD-PROX/packet_utils.c')
-rw-r--r--VNFs/DPPD-PROX/packet_utils.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/VNFs/DPPD-PROX/packet_utils.c b/VNFs/DPPD-PROX/packet_utils.c
index dcfd4f2e..0189a1e0 100644
--- a/VNFs/DPPD-PROX/packet_utils.c
+++ b/VNFs/DPPD-PROX/packet_utils.c
@@ -546,7 +546,7 @@ void task_start_l3(struct task_base *tbase, struct task_args *targ)
if ((targ->local_ipv4 && port->ip_addr[0].ip) && (targ->local_prefix != port->ip_addr[0].prefix)) {
PROX_PANIC(1, "local_ipv4 prefix in core section (%d) differs from port section (%d)\n", targ->local_prefix, port->ip_addr[0].prefix);
}
- if (!port->ip_addr[0].ip) {
+ if (!port->ip_addr[0].ip && targ->local_ipv4) {
port->ip_addr[0].ip = targ->local_ipv4;
port->ip_addr[0].prefix = targ->local_prefix;
port->n_vlans = 1;
@@ -554,7 +554,8 @@ void task_start_l3(struct task_base *tbase, struct task_args *targ)
plog_info("Setting port local_ipv4 from core %d local_ipv4 to "IPv4_BYTES_FMT"\n", tbase->l3.reachable_port_id, IP4(rte_be_to_cpu_32(port->ip_addr[0].ip)));
}
for (int vlan_id = 0; vlan_id < port->n_vlans; vlan_id++) {
- register_ip_to_ctrl_plane(tbase->l3.tmaster, rte_be_to_cpu_32(port->ip_addr[vlan_id].ip), tbase->l3.reachable_port_id, targ->lconf->id, targ->id);
+ if (port->ip_addr[vlan_id].ip)
+ register_ip_to_ctrl_plane(tbase->l3.tmaster, rte_be_to_cpu_32(port->ip_addr[vlan_id].ip), tbase->l3.reachable_port_id, targ->lconf->id, targ->id);
}
if (strcmp(targ->route_table, "") != 0) {
struct lpm4 *lpm;