summaryrefslogtreecommitdiffstats
path: root/src/plugins/nat/nat_reass.h
diff options
context:
space:
mode:
authorMatus Fabian <matfabia@cisco.com>2017-12-07 23:22:51 -0800
committerOle Trøan <otroan@employees.org>2017-12-13 14:15:35 +0000
commit51e759fd0655b6089360e1ccf2f5341704549fd4 (patch)
tree125a66214683c3aae9b1ddec253ef7910b3e38d8 /src/plugins/nat/nat_reass.h
parent331acc632477ed2da1c9c0b90915a227b5e343d5 (diff)
NAT64: multi-thread support (VPP-891)
Change-Id: Iebf859b6d86482e4465423bad598eecf87e53ec4 Signed-off-by: Matus Fabian <matfabia@cisco.com>
Diffstat (limited to 'src/plugins/nat/nat_reass.h')
-rw-r--r--src/plugins/nat/nat_reass.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/plugins/nat/nat_reass.h b/src/plugins/nat/nat_reass.h
index ae14a9604aa..4a9137e3255 100644
--- a/src/plugins/nat/nat_reass.h
+++ b/src/plugins/nat/nat_reass.h
@@ -53,6 +53,7 @@ typedef CLIB_PACKED(struct
nat_reass_ip4_key_t key;
u32 lru_list_index;
u32 sess_index;
+ u32 thread_index;
f64 last_heard;
u32 frags_per_reass_list_head_index;
u8 frag_n;
@@ -185,6 +186,20 @@ u8 nat_reass_is_drop_frag (u8 is_ip6);
clib_error_t *nat_reass_init (vlib_main_t * vm);
/**
+ * @brief Find reassembly.
+ *
+ * @param src Source IPv4 address.
+ * @param dst Destination IPv4 address.
+ * @param frag_id Fragment ID.
+ * @param proto L4 protocol.
+ *
+ * @returns Reassembly data or 0 if not found.
+ */
+nat_reass_ip4_t *nat_ip4_reass_find (ip4_address_t src,
+ ip4_address_t dst,
+ u16 frag_id, u8 proto);
+
+/**
* @brief Find or create reassembly.
*
* @param src Source IPv4 address.
@@ -201,6 +216,7 @@ nat_reass_ip4_t *nat_ip4_reass_find_or_create (ip4_address_t src,
u16 frag_id, u8 proto,
u8 reset_timeout,
u32 ** bi_to_drop);
+
/**
* @brief Cache fragment.
*