Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Do not create new flows for ICMP errors
Bug fix for 1556363 have reintroduced the issue of creating new flows
for ICMP errors. It looks like a cherry-pick/merge problem, since the
issue is present only in the mainline branch.

The process of forming the flow key is a recursive call for ICMP error,
since we look into the inner packet that caused the ICMP error. Once we
process the inner packet and form the flow key, we should return
immediately rather than continuing with the parent function, since the
parent will start using the ICMP error packet for formation of the flow
key.

Change-Id: I41c92ad44477c771e694661e625c39ff529bbe4a
Closes-BUG: #1556363
  • Loading branch information
anandhk-juniper committed Jul 7, 2016
1 parent e16710a commit 354f7e2
Showing 1 changed file with 1 addition and 2 deletions.
3 changes: 1 addition & 2 deletions dp-core/vr_proto_ip.c
Expand Up @@ -868,8 +868,7 @@ vr_inet_proto_flow(struct vrouter *router, unsigned short vrf,
return -1;
}

sport = flow_p->flow4_sport;
dport = flow_p->flow4_dport;
return 0;
} else if (vr_icmp_echo(icmph)) {
sport = icmph->icmp_eid;
dport = VR_ICMP_TYPE_ECHO_REPLY;
Expand Down

0 comments on commit 354f7e2

Please sign in to comment.