X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=lib%2Fofp-print.c;h=3c5c34a3223a864d80b78eabc9f1222fa60c2c35;hb=816fd533f85923c03cf8d9d6450bd9a0845d5160;hp=7bc26c9ddc3541c91a8d285fc5faf93399332cf0;hpb=6cc7ea5ea05a71f01526577439ebedcc133f99cd;p=sliver-openvswitch.git diff --git a/lib/ofp-print.c b/lib/ofp-print.c index 7bc26c9dd..3c5c34a32 100644 --- a/lib/ofp-print.c +++ b/lib/ofp-print.c @@ -33,6 +33,7 @@ #include "flow.h" #include "learn.h" #include "multipath.h" +#include "meta-flow.h" #include "nx-match.h" #include "ofp-errors.h" #include "ofp-util.h" @@ -187,6 +188,7 @@ ofp_print_action(struct ds *s, const union ofp_action *a, const struct nx_action_multipath *nam; const struct nx_action_autopath *naa; const struct nx_action_output_reg *naor; + struct mf_subfield subfield; uint16_t port; switch (code) { @@ -319,9 +321,8 @@ ofp_print_action(struct ds *s, const union ofp_action *a, case OFPUTIL_NXAST_AUTOPATH: naa = (const struct nx_action_autopath *)a; ds_put_format(s, "autopath(%u,", ntohl(naa->id)); - nxm_format_field_bits(s, ntohl(naa->dst), - nxm_decode_ofs(naa->ofs_nbits), - nxm_decode_n_bits(naa->ofs_nbits)); + nxm_decode(&subfield, naa->dst, naa->ofs_nbits); + mf_format_subfield(&subfield, s); ds_put_char(s, ')'); break; @@ -333,9 +334,8 @@ ofp_print_action(struct ds *s, const union ofp_action *a, case OFPUTIL_NXAST_OUTPUT_REG: naor = (const struct nx_action_output_reg *) a; ds_put_cstr(s, "output:"); - nxm_format_field_bits(s, ntohl(naor->src), - nxm_decode_ofs(naor->ofs_nbits), - nxm_decode_n_bits(naor->ofs_nbits)); + nxm_decode(&subfield, naor->src, naor->ofs_nbits); + mf_format_subfield(&subfield, s); break; case OFPUTIL_NXAST_LEARN: