]> git.meshlink.io Git - utcp/blobdiff - utcp.c
Add a function to check for active connections.
[utcp] / utcp.c
diff --git a/utcp.c b/utcp.c
index 062cc5af09380d4c2fe1d46496dae4200b6bf48b..c63def15cfc7845ce324d8b2ec36f6a0455ed280 100644 (file)
--- a/utcp.c
+++ b/utcp.c
@@ -1154,6 +1154,17 @@ struct timeval utcp_timeout(struct utcp *utcp) {
        return diff;
 }
 
+bool utcp_is_active(struct utcp *utcp) {
+       if(!utcp)
+               return false;
+
+       for(int i = 0; i < utcp->nconnections; i++)
+               if(utcp->connections[i]->state != CLOSED && utcp->connections[i]->state != TIME_WAIT)
+                       return true;
+
+       return false;
+}
+
 struct utcp *utcp_init(utcp_accept_t accept, utcp_pre_accept_t pre_accept, utcp_send_t send, void *priv) {
        struct utcp *utcp = calloc(1, sizeof *utcp);
        if(!utcp)