X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=lib%2Fofp-print.c;h=f0c134fa8bc73338676aca0b43c6b1d8ac4238c6;hb=a993007bee69e581b0b0a5c6abb2ad0e6ef24881;hp=b1c6f97b2f3a9053689d8528feac8f3f829c69b4;hpb=c6a93eb711322474e0e8db07a6c53e1f6c61c56b;p=sliver-openvswitch.git diff --git a/lib/ofp-print.c b/lib/ofp-print.c index b1c6f97b2..f0c134fa8 100644 --- a/lib/ofp-print.c +++ b/lib/ofp-print.c @@ -836,7 +836,22 @@ ofp_print_flow_mod(struct ds *s, const struct ofp_header *oh, ds_put_format(s, "buf:0x%"PRIx32" ", fm.buffer_id); } if (fm.flags != 0) { - ds_put_format(s, "flags:0x%"PRIx16" ", fm.flags); + uint16_t flags = fm.flags; + + if (flags & OFPFF_SEND_FLOW_REM) { + ds_put_cstr(s, "send_flow_rem "); + } + if (flags & OFPFF_CHECK_OVERLAP) { + ds_put_cstr(s, "check_overlap "); + } + if (flags & OFPFF_EMERG) { + ds_put_cstr(s, "emerg "); + } + + flags &= ~(OFPFF_SEND_FLOW_REM | OFPFF_CHECK_OVERLAP | OFPFF_EMERG); + if (flags) { + ds_put_format(s, "flags:0x%"PRIx16" ", flags); + } } ofp_print_actions(s, fm.actions, fm.n_actions);