vcl: fix vcl_session_write_ready when connecting 89/32889/2
authorliuyacan <liuyacan@corp.netease.com>
Thu, 24 Jun 2021 12:39:02 +0000 (20:39 +0800)
committerFlorin Coras <florin.coras@gmail.com>
Thu, 24 Jun 2021 14:37:17 +0000 (14:37 +0000)
Applications like curl will poll the fd after a non-blocking
connect, so we need to avoid returning the wrong event.

Type: fix

Signed-off-by: liuyacan <liuyacan@corp.netease.com>
Change-Id: I7ea146fc954fda631b3d88b46bb80adfbcdf137c

src/vcl/vcl_private.c

index 95a45ff..3ed376e 100644 (file)
@@ -317,6 +317,10 @@ vcl_session_write_ready (vcl_session_t * s)
       else
        return VPPCOM_EBADFD;
     }
+  else if (s->session_state == VCL_STATE_UPDATED)
+    {
+      return 0;
+    }
   else
     {
       return (s->session_state == VCL_STATE_DISCONNECT) ?