diff --git a/src/vcl/vppcom.c b/src/vcl/vppcom.c
index f56c02b..72ec4f4 100644
--- a/src/vcl/vppcom.c
+++ b/src/vcl/vppcom.c
@@ -1590,10 +1590,14 @@
 	clib_net_to_host_u16 (session->transport.rmt_port),
 	vppcom_proto_str (session->session_type));
 
-  /*
-   * Send connect request and wait for reply from vpp
-   */
   vcl_send_session_connect (wrk, session);
+
+  if (VCL_SESS_ATTR_TEST (session->attr, VCL_SESS_ATTR_NONBLOCK))
+    return VPPCOM_EINPROGRESS;
+
+  /*
+   * Wait for reply from vpp if blocking
+   */
   rv = vppcom_wait_for_session_state_change (session_index, STATE_CONNECT,
 					     vcm->cfg.session_timeout);
 
@@ -2033,7 +2037,14 @@
       break;
     case SESSION_CTRL_EVT_CONNECTED:
       connected_msg = (session_connected_msg_t *) e->data;
-      vcl_session_connected_handler (wrk, connected_msg);
+      sid = vcl_session_connected_handler (wrk, connected_msg);
+      if (sid == VCL_INVALID_SESSION_INDEX)
+	break;
+      if (sid < n_bits && write_map)
+	{
+	  clib_bitmap_set_no_check ((uword *) write_map, sid, 1);
+	  *bits_set += 1;
+	}
       break;
     case SESSION_CTRL_EVT_DISCONNECTED:
       disconnected_msg = (session_disconnected_msg_t *) e->data;
diff --git a/src/vcl/vppcom.h b/src/vcl/vppcom.h
index 90bec31..6281509 100644
--- a/src/vcl/vppcom.h
+++ b/src/vcl/vppcom.h
@@ -18,6 +18,7 @@
 
 #include <netdb.h>
 #include <errno.h>
+#include <sys/fcntl.h>
 #include <sys/poll.h>
 #include <sys/epoll.h>
 
@@ -115,6 +116,7 @@
   VPPCOM_OK = 0,
   VPPCOM_EAGAIN = -EAGAIN,
   VPPCOM_EWOULDBLOCK = -EWOULDBLOCK,
+  VPPCOM_EINPROGRESS = -EINPROGRESS,
   VPPCOM_EFAULT = -EFAULT,
   VPPCOM_ENOMEM = -ENOMEM,
   VPPCOM_EINVAL = -EINVAL,
