summaryrefslogtreecommitdiffstats
path: root/src/vnet/udp/udp.h
diff options
context:
space:
mode:
authorFlorin Coras <fcoras@cisco.com>2019-07-22 08:08:43 -0700
committerDave Barach <openvpp@barachs.net>2019-07-22 20:24:35 +0000
commitc75423981ad2d44c4f2abc5dbe69d6a1a9930d1e (patch)
tree418f837bca30ef2e68f66c20bff9c46a7b2f92d7 /src/vnet/udp/udp.h
parentd455e5a2ef1f6ef2bcf28fb5ad43c902bd6c787a (diff)
udp: support close with data
Also adds connection flags. Type: feature Change-Id: I76f21eb88ab203076149b7c03dc31c22fc0f342e Signed-off-by: Florin Coras <fcoras@cisco.com>
Diffstat (limited to 'src/vnet/udp/udp.h')
-rw-r--r--src/vnet/udp/udp.h11
1 files changed, 8 insertions, 3 deletions
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;
}