udp: support close with data

Also adds connection flags.

Type: feature

Change-Id: I76f21eb88ab203076149b7c03dc31c22fc0f342e
Signed-off-by: Florin Coras <fcoras@cisco.com>
diff --git a/src/vnet/udp/udp_input.c b/src/vnet/udp/udp_input.c
index cc5ae2b..f6d89dc 100644
--- a/src/vnet/udp/udp_input.c
+++ b/src/vnet/udp/udp_input.c
@@ -162,7 +162,7 @@
 	       */
 	      tc0 = session_get_transport (s0);
 	      uc0 = udp_get_connection_from_transport (tc0);
-	      if (uc0->is_connected)
+	      if (uc0->flags & UDP_CONN_F_CONNECTED)
 		{
 		  /*
 		   * Clone the transport. It will be cleaned up with the
@@ -190,7 +190,7 @@
 	    {
 	      tc0 = listen_session_get_transport (s0);
 	      uc0 = udp_get_connection_from_transport (tc0);
-	      if (uc0->is_connected)
+	      if (uc0->flags & UDP_CONN_F_CONNECTED)
 		{
 		  child0 = udp_connection_alloc (my_thread_index);
 		  if (is_ip4)
@@ -207,7 +207,7 @@
 		  child0->c_rmt_port = udp0->src_port;
 		  child0->c_is_ip4 = is_ip4;
 		  child0->c_fib_index = tc0->fib_index;
-		  child0->is_connected = 1;
+		  child0->flags |= UDP_CONN_F_CONNECTED;
 
 		  if (session_stream_accept (&child0->connection,
 					     tc0->s_index, tc0->thread_index,