From c75423981ad2d44c4f2abc5dbe69d6a1a9930d1e Mon Sep 17 00:00:00 2001 From: Florin Coras Date: Mon, 22 Jul 2019 08:08:43 -0700 Subject: udp: support close with data Also adds connection flags. Type: feature Change-Id: I76f21eb88ab203076149b7c03dc31c22fc0f342e Signed-off-by: Florin Coras --- src/vnet/udp/udp.h | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'src/vnet/udp/udp.h') diff --git a/src/vnet/udp/udp.h b/src/vnet/udp/udp.h index f5efbbca0ff..88a46db277e 100644 --- a/src/vnet/udp/udp.h +++ b/src/vnet/udp/udp.h @@ -34,14 +34,20 @@ typedef enum UDP_N_ERROR, } udp_error_t; +typedef enum +{ + UDP_CONN_F_CONNECTED, /**< connected mode */ + UDP_CONN_F_OWNS_PORT, /**< port belong to conn (UDPC) */ + UDP_CONN_F_CLOSING, /**< conn closed with data */ +} udp_conn_flags_t; + typedef struct { /** Required for pool_get_aligned */ CLIB_CACHE_LINE_ALIGN_MARK (cacheline0); transport_connection_t connection; /**< must be first */ clib_spinlock_t rx_lock; /**< rx fifo lock */ - u8 is_connected; /**< connected mode */ - u8 owns_port; /**< does port belong to conn (UDPC) */ + u8 flags; /**< connection flags */ } udp_connection_t; #define foreach_udp4_dst_port \ @@ -235,7 +241,6 @@ udp_connection_clone_safe (u32 connection_index, u32 thread_index) udp_pool_remove_peeker (thread_index); new_c->c_thread_index = current_thread_index; new_c->c_c_index = udp_connection_index (new_c); - new_c->is_connected = old_c->is_connected; new_c->c_fib_index = old_c->c_fib_index; return new_c; } -- cgit 1.2.3-korg