]> git.meshlink.io Git - utcp/blobdiff - utcp.c
Only call the poll callback when state is ESTABLISHED or CLOSE_WAIT.
[utcp] / utcp.c
diff --git a/utcp.c b/utcp.c
index f48460d6f7aa6bf1686fec55cb6841139b62070f..3206cd74b4a054776e799e636b028d4ea5cc9757 100644 (file)
--- a/utcp.c
+++ b/utcp.c
@@ -1055,7 +1055,7 @@ int utcp_timeout(struct utcp *utcp) {
                        retransmit(c);
                }
 
-               if(c->poll && c->sndbufsize < c->maxsndbufsize / 2)
+               if(c->poll && c->sndbufsize < c->maxsndbufsize / 2 && (c->state == ESTABLISHED || c->state == CLOSE_WAIT))
                        c->poll(c, c->maxsndbufsize - c->sndbufsize);
 
                if(timerisset(&c->conn_timeout) && timercmp(&c->conn_timeout, &next, <))