These actions aren't very similar but until now they both had the same
action structure.  These structures are going to diverge in an upcoming
commit, so separate them now.

Signed-off-by: Ben Pfaff <b...@ovn.org>
---
 include/ovn/actions.h | 10 ++++++++--
 ovn/lib/actions.c     | 11 ++++++++---
 2 files changed, 16 insertions(+), 5 deletions(-)

diff --git a/include/ovn/actions.h b/include/ovn/actions.h
index a1b6b90..92c8888 100644
--- a/include/ovn/actions.h
+++ b/include/ovn/actions.h
@@ -55,7 +55,7 @@ struct simap;
     OVNACT(MOVE,          ovnact_move)              \
     OVNACT(EXCHANGE,      ovnact_move)              \
     OVNACT(DEC_TTL,       ovnact_null)              \
-    OVNACT(CT_NEXT,       ovnact_next)              \
+    OVNACT(CT_NEXT,       ovnact_ct_next)           \
     OVNACT(CT_COMMIT,     ovnact_ct_commit)         \
     OVNACT(CT_DNAT,       ovnact_ct_nat)            \
     OVNACT(CT_SNAT,       ovnact_ct_nat)            \
@@ -140,7 +140,7 @@ struct ovnact_null {
     struct ovnact ovnact;
 };
 
-/* OVNACT_NEXT, OVNACT_CT_NEXT. */
+/* OVNACT_NEXT. */
 struct ovnact_next {
     struct ovnact ovnact;
     uint8_t ltable;             /* Logical table ID of next table. */
@@ -160,6 +160,12 @@ struct ovnact_move {
     struct expr_field rhs;
 };
 
+/* OVNACT_CT_NEXT. */
+struct ovnact_ct_next {
+    struct ovnact ovnact;
+    uint8_t ltable;                /* Logical table ID of next table. */
+};
+
 /* OVNACT_CT_COMMIT. */
 struct ovnact_ct_commit {
     struct ovnact ovnact;
diff --git a/ovn/lib/actions.c b/ovn/lib/actions.c
index 213e22e..2162dad 100644
--- a/ovn/lib/actions.c
+++ b/ovn/lib/actions.c
@@ -530,24 +530,29 @@ parse_CT_NEXT(struct action_context *ctx)
 }
 
 static void
-format_CT_NEXT(const struct ovnact_next *next OVS_UNUSED, struct ds *s)
+format_CT_NEXT(const struct ovnact_ct_next *ct_next OVS_UNUSED, struct ds *s)
 {
     ds_put_cstr(s, "ct_next;");
 }
 
 static void
-encode_CT_NEXT(const struct ovnact_next *next,
+encode_CT_NEXT(const struct ovnact_ct_next *ct_next,
                 const struct ovnact_encode_params *ep,
                 struct ofpbuf *ofpacts)
 {
     struct ofpact_conntrack *ct = ofpact_put_CT(ofpacts);
-    ct->recirc_table = ep->first_ptable + next->ltable;
+    ct->recirc_table = ep->first_ptable + ct_next->ltable;
     ct->zone_src.field = ep->is_switch ? mf_from_id(MFF_LOG_CT_ZONE)
                             : mf_from_id(MFF_LOG_DNAT_ZONE);
     ct->zone_src.ofs = 0;
     ct->zone_src.n_bits = 16;
     ofpact_finish(ofpacts, &ct->ofpact);
 }
+
+static void
+ovnact_ct_next_free(struct ovnact_ct_next *a OVS_UNUSED)
+{
+}
 
 static void
 parse_ct_commit_arg(struct action_context *ctx,
-- 
2.10.2

_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to