Implement serializing the state of packet traversal in "continuations".
[cascardo/ovs.git] / ofproto / ofproto-dpif-xlate.h
index a135d8f..640ed4b 100644 (file)
@@ -140,9 +140,8 @@ struct xlate_in {
      * set. */
     struct flow_wildcards *wc;
 
-    /* The recirculation context related to this translation, as returned by
-     * xlate_lookup. */
-    const struct recirc_id_node *recirc;
+    /* The frozen state to be resumed, as returned by xlate_lookup(). */
+    const struct frozen_state *frozen_state;
 };
 
 void xlate_ofproto_set(struct ofproto_dpif *, const char *name, struct dpif *,
@@ -202,6 +201,10 @@ void xlate_in_init(struct xlate_in *, struct ofproto_dpif *,
 void xlate_out_uninit(struct xlate_out *);
 void xlate_actions_for_side_effects(struct xlate_in *);
 
+enum ofperr xlate_resume(struct ofproto_dpif *,
+                         const struct ofputil_packet_in_private *,
+                         struct ofpbuf *odp_actions, enum slow_path_reason *);
+
 int xlate_send_packet(const struct ofport_dpif *, struct dp_packet *);
 
 struct xlate_cache *xlate_cache_new(void);