Send delayed ACKs after 200ms instead of 2500ms
[reactos.git] / reactos / drivers / lib / ip / transport / tcp / if.c
index e85e9c4..9821d36 100644 (file)
@@ -1,13 +1,13 @@
 /*
  * Copyright (c) 1997-1998 University of Utah and the Flux Group.
  * All rights reserved.
- * 
+ *
  * This file is part of the Flux OSKit.  The OSKit is free software, also known
  * as "open source;" you can redistribute it and/or modify it under the terms
  * of the GNU General Public License (GPL), version 2, as published by the Free
  * Software Foundation (FSF).  To explore alternate licensing terms, contact
  * the University of Utah at csl-dist@cs.utah.edu or +1-801-585-3271.
- * 
+ *
  * The OSKit is distributed in the hope that it will be useful, but WITHOUT ANY
  * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
  * FOR A PARTICULAR PURPOSE.  See the GPL for more details.  You should have
@@ -38,33 +38,37 @@ PVOID TCPPrepareInterface( PIP_INTERFACE IF ) {
     struct sockaddr_in *dstaddr_in = (struct sockaddr_in *)&addr_in[1];
     if( !ifaddr ) return NULL;
 
-    TI_DbgPrint(MID_TRACE,("Called\n"));
+    TI_DbgPrint(DEBUG_TCPIF,("Called\n"));
 
     ifaddr->ifa_dstaddr = (struct sockaddr *)dstaddr_in;
     /* XXX - Point-to-point interfaces not supported yet */
     memset( &ifaddr->ifa_dstaddr, 0, sizeof( struct sockaddr ) );
-    
+
     ifaddr->ifa_addr = (struct sockaddr *)addr_in;
     Status = GetInterfaceIPv4Address( IF,
                                      ADE_UNICAST,
                                      (PULONG)&addr_in->sin_addr.s_addr );
-    
+
     if( !NT_SUCCESS(Status) )
        addr_in->sin_addr.s_addr = 0;
 
-    TI_DbgPrint(MID_TRACE,("Prepare interface %x : addr %x\n",
+    TI_DbgPrint(DEBUG_TCPIF,("Prepare interface %x : addr %x\n",
                           IF, addr_in->sin_addr.s_addr));
-    
+
     ifaddr->ifa_flags = 0; /* XXX what goes here? */
     ifaddr->ifa_refcnt = 0; /* Anachronistic */
     ifaddr->ifa_metric = 1; /* We can get it like in ninfo.c, if we want */
     ifaddr->ifa_mtu = IF->MTU;
 
-    TI_DbgPrint(MID_TRACE,("Leaving\n"));
+    TI_DbgPrint(DEBUG_TCPIF,("Leaving\n"));
 
     return ifaddr;
 }
 
+VOID TCPDisposeInterfaceData( PVOID Ptr ) {
+    exFreePool( Ptr );
+}
+
 POSK_IFADDR TCPFindInterface( void *ClientData,
                              OSK_UINT AddrType,
                              OSK_UINT FindType,
@@ -73,36 +77,36 @@ POSK_IFADDR TCPFindInterface( void *ClientData,
     PNEIGHBOR_CACHE_ENTRY NCE;
     IP_ADDRESS Destination;
     struct sockaddr_in *addr_in = (struct sockaddr_in *)ReqAddr;
-    
-    TI_DbgPrint(MID_TRACE,("called for type %d\n", FindType));
+
+    TI_DbgPrint(DEBUG_TCPIF,("called for type %d\n", FindType));
 
     if( !ReqAddr ) {
-       TI_DbgPrint(MID_TRACE,("no addr or no ifaddr (%x)\n", ReqAddr));
+       TI_DbgPrint(DEBUG_TCPIF,("no addr or no ifaddr (%x)\n", ReqAddr));
        return NULL;
     }
 
     Destination.Type = IP_ADDRESS_V4;
     Destination.Address.IPv4Address = addr_in->sin_addr.s_addr;
 
-    TI_DbgPrint(MID_TRACE,("Address is %x\n", addr_in->sin_addr.s_addr));
+    TI_DbgPrint(DEBUG_TCPIF,("Address is %x\n", addr_in->sin_addr.s_addr));
 
-    NCE = RouterGetRoute(&Destination);
+    NCE = RouteGetRouteToDestination(&Destination);
 
     if( !NCE || !NCE->Interface ) {
-       TI_DbgPrint(MID_TRACE,("no neighbor cache or no interface (%x %x)\n",
+       TI_DbgPrint(DEBUG_TCPIF,("no neighbor cache or no interface (%x %x)\n",
                               NCE, NCE ? NCE->Interface : 0));
        return NULL;
     }
 
-    TI_DbgPrint(MID_TRACE,("NCE: %x\n", NCE));
-    TI_DbgPrint(MID_TRACE,("NCE->Interface: %x\n", NCE->Interface));
-    TI_DbgPrint(MID_TRACE,("NCE->Interface->TCPContext: %x\n", 
+    TI_DbgPrint(DEBUG_TCPIF,("NCE: %x\n", NCE));
+    TI_DbgPrint(DEBUG_TCPIF,("NCE->Interface: %x\n", NCE->Interface));
+    TI_DbgPrint(DEBUG_TCPIF,("NCE->Interface->TCPContext: %x\n",
                           NCE->Interface->TCPContext));
 
     addr_in = (struct sockaddr_in *)
        ((POSK_IFADDR)NCE->Interface->TCPContext)->ifa_addr;
-    TI_DbgPrint(MID_TRACE,("returning addr %x\n", addr_in->sin_addr.s_addr));
-    
+    TI_DbgPrint(DEBUG_TCPIF,("returning addr %x\n", addr_in->sin_addr.s_addr));
+
     return NCE->Interface->TCPContext;
 }