diff options
author | Adrian Moreno <amorenoz@redhat.com> | 2021-11-04 15:39:46 -0400 |
---|---|---|
committer | Ilya Maximets <i.maximets@ovn.org> | 2021-11-29 22:45:48 +0100 |
commit | f88ee78e0a3f2939d246bf0ff55946d50216eff6 (patch) | |
tree | e975ac1b1e48c7e30257fe7ba631f169a5b3d940 /lib/match.c | |
parent | 59622fd1bc5ce92d01eae19b321695ee56ddec53 (diff) | |
download | openvswitch-f88ee78e0a3f2939d246bf0ff55946d50216eff6.tar.gz |
match: Do not print "igmp" match keyword.
The match keyword "igmp" is not supported in ofp-parse, which means
that flow dumps cannot be restored. Previously a workaround was
added to ovs-save to avoid changing output in stable branches.
This patch changes the output to print igmp match in the accepted
ofp-parse format (ip,nw_proto=2) and print igmp_type/code as generic
tp_src/dst. Tests are added, and NEWS is updated to reflect this change.
The workaround in ovs-save is still included to ensure that flows
can be restored when upgrading an older ovs-vswitchd. This workaround
should be removed in later versions.
Signed-off-by: Adrian Moreno <amorenoz@redhat.com>
Signed-off-by: Salvatore Daniele <sdaniele@redhat.com>
Co-authored-by: Salvatore Daniele <sdaniele@redhat.com>
Acked-by: Mike Pattrick <mkp@redhat.com>
Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
Diffstat (limited to 'lib/match.c')
-rw-r--r-- | lib/match.c | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/lib/match.c b/lib/match.c index ba716579d..2ad03e044 100644 --- a/lib/match.c +++ b/lib/match.c @@ -1556,8 +1556,6 @@ match_format(const struct match *match, skip_proto = true; if (f->nw_proto == IPPROTO_ICMP) { ds_put_format(s, "%sicmp%s,", colors.value, colors.end); - } else if (f->nw_proto == IPPROTO_IGMP) { - ds_put_format(s, "%sigmp%s,", colors.value, colors.end); } else if (f->nw_proto == IPPROTO_TCP) { ds_put_format(s, "%stcp%s,", colors.value, colors.end); } else if (f->nw_proto == IPPROTO_UDP) { @@ -1761,10 +1759,6 @@ match_format(const struct match *match, f->nw_proto == IPPROTO_ICMP) { format_be16_masked(s, "icmp_type", f->tp_src, wc->masks.tp_src); format_be16_masked(s, "icmp_code", f->tp_dst, wc->masks.tp_dst); - } else if (dl_type == htons(ETH_TYPE_IP) && - f->nw_proto == IPPROTO_IGMP) { - format_be16_masked(s, "igmp_type", f->tp_src, wc->masks.tp_src); - format_be16_masked(s, "igmp_code", f->tp_dst, wc->masks.tp_dst); } else if (dl_type == htons(ETH_TYPE_IPV6) && f->nw_proto == IPPROTO_ICMPV6) { format_be16_masked(s, "icmp_type", f->tp_src, wc->masks.tp_src); |