Modules/IPStack - Killing Threads_Yield
[tpg/acess2.git] / KernelLand / Modules / IPStack / tcp.h
index 6aa404f..42682ac 100644 (file)
@@ -7,6 +7,8 @@
 
 #include "ipstack.h"
 #include <adt.h>       // tRingBuffer
+#include <timers.h>    // tTimer
+#include <semaphore.h> // tSemaphore
 
 typedef struct sTCPHeader      tTCPHeader;
 typedef struct sTCPListener    tTCPListener;
@@ -68,6 +70,7 @@ struct sTCPListener
        tInterface      *Interface;     //!< Listening Interface
        tVFS_Node       Node;   //!< Server Directory node
         int    NextID;         //!< Name of the next connection
+       tSemaphore      WaitingConnections;
        tShortSpinlock  lConnections;   //!< Spinlock for connections
        tTCPConnection  *Connections;   //!< Connections (linked list)
        tTCPConnection  *volatile NewConnections;
@@ -113,7 +116,11 @@ struct sTCPConnection
        
        Uint32  NextSequenceSend;       //!< Next sequence value for outbound packets
        Uint32  NextSequenceRcv;        //!< Next expected sequence value for inbound
-       
+
+       // Deferred ACK handling
+       Uint32  LastACKSequence;
+       tTimer  *DeferredACKTimer;      
+
        #if 0
        /**
         * \brief Non-ACKed packets

UCC git Repository :: git.ucc.asn.au