PCAUSA NDIS Interface Impariment Generator Release Notes Printing Communications Associates, Inc. 4201 Brunswick Court Smyrna, GA 30080 USA TEL: (770) 432-4580 (Primary) FAX: (770) 436-7246 E-Mail: tdivine@pcausa.com ====================================================================== Component Name : PCAUSA NDIS Interface Impariment Generator ====================================================================== Component Version : 1.00.00.13 Release Date : November 16, 2010 1.) Eliminated tokenring and fddi from NDIS 5 INF FilterMediaTypes. 2.) Per non-customer user request: Increased delay limit from 100 millisec to 500 millisec. ====================================================================== Component Version : 1.00.00.12 Release Date : August 12, 2010 1.) Increased size of buffer used to fetch filter's binding list. ====================================================================== Component Version : 1.00.00.11 Release Date : August 8, 2010 1.) Eliminated a few PREfast warnings. 2.) Eliminated need to disable NDIS Checksum Task Offload for NDIS 6 driver. 3.) Fixed nasty bug that could cause BSOD or severe memory leak when adapter enters the resource-limited state when making receive indications. Basically NBL/NB modifications were not freed properly when the indicated NBL was resource limited. ====================================================================== Component Version : 1.00.00.10 Release Date : August 5, 2010 1.) Making some improvements on NDIS 5 driver. Now same as NDIS 6 _EXCEPT_ that delay is not yet implemented. Includes support for "-r" flow selection. 2.) Added packet delay capability to NDIS 5 driver. ====================================================================== Component Version : 1.00.00.09 Release Date : August 3, 2010 ATTENTION!!! This is a breaking change that requires the driver and applications to be updated to V1.00.00.09. If you already have a prior version of the driver installed, simply copy the appropriate .SYS file to the \Window\System32\Drivers folder and reboot. Then use the IfImp.exe application from this release. 1.) Possibly improved reconstruction of clone NetBufferList NB list in NDIS 6 FreeCloneNetBufferList routine. 2.) Fixed bug when impairing ICMP sends. Previous versions only impaired ICMP echo requests. Now impair ICMP echo replies as well. 3.) Added "-r" option to specify a remote host IP address. If this option is used impairments will be applied only to a single "flow" instead of being applied to the entire interface. ====================================================================== Component Version : 1.00.00.08 Release Date : July 30, 2010 1.) Fixed uninitialized variable associated with setting TTL. Uninitialized variable resulted in random setting of TTL which sometimes broke connectivity. ====================================================================== Component Version : 1.00.00.07 Release Date : July 28, 2010 1.) Eliminated the 0xDEAD packet being sent for dropped packets. ====================================================================== Component Version : 1.00.00.06 Release Date : July 23, 2010 *** Limited release for external testing. *** ATTENTION!!! This is a breaking change that requires the driver and applications to be updated to V1.00.00.06. 1.) Fix to send/receive packet statistics. 2.) Revised packet drop implementation. Instead of dropping entire NetBufferLists it edits the EtherType of individual NetBuffers to 0xDEAD. "Dropped packet" is still sent or indicated, but must be ignored. This is not the best long term fix. 3.) Fix to receive drop control fields. A copy-paste error resulted in receive drop mechansim using send drop settings. Verified that after the change they are independent. 4.) Eliminated duplicate code in IPv4/IPv6 send/receive loops. 5.) Performed limited edge-condition tests: "Long term" (1 hour) continuous operation under heavy two-way TCP load. FilterDetach under heavy two-way TCP load. FilterAddach after FilterDetach. Shutdown under heavy two-way TCP load. 6.) Changed NDIS 6 INF FilterClass from compression to diagnostic. This moves the driver lower in the filter stack. ====================================================================== Component Version : 1.00.00.05 Release Date : July 22, 2010 *** Limited release for external testing. *** ATTENTION!!! This is a breaking change that requires the driver and applications to be updated to V1.00.00.05. 1.) Now disable NDIS task offload on NDIS 6 drivers. 2.) Added IPv6 support. 3.) Fixed bug in Ndf_GetFlatDataPointerFromNetBuffer. 4.) Now correctly set TTL/hop limit in all matching packets. 5.) At this point "packet drop" is not implemented correctly. Currently the drop check is made once for each call to send or receive a list of packets. If the decision is made to "drop" the entire list of packets is dropped. In simple cases like ICMP echo the list contains only one packet, so the statistics are correct. However, in the case of TCP the list may contain multiple packets loosely related to the number of packets needed to satisfy a socket send call. All of these packets will be dropped. ====================================================================== Component Version : 1.00.00.04 Release Date : July 14, 2010 *** Limited release for external testing. *** ATTENTION!!! This is a breaking change that requires the driver and applications to be updated to V1.00.00.04. 1.) Revised TTL implementation. With -t option: Positive Value: TTL will be set to this value on send. Negative Value: TTL will be decremented by this value on send. ====================================================================== Component Version : 1.00.00.03 Release Date : July 7, 2010 *** Limited release for external testing. *** ATTENTION!!! This is a breaking change that requires the driver and applications to be updated to V1.00.00.03. 1.) Fixed bug of omission in Ndf_GetMetaDataFromReceiveIndication. It did not handle ICMP. 2.) Implemented NDIS 5 IM filter driver with send/receive random drop and transmit TTL set functionality. At this point the NDIS 5 and NDIS 6 drivers have same functionality. 3.) Initial implementation of packet delay facility. ====================================================================== Component Version : 1.00.00.02 Release Date : July 4, 2010 *** Limited release for external testing. *** ATTENTION!!! This is a breaking change that requires the driver and applications to be updated to V1.00.00.02. 1.) Addition of filter module enumeration command. 2.) Revised command line syntax. 3.) TTL option now sets send packet TTL instead of decrementing it. TTL option does nothing on received packets. 3.) Statistics now 64-bits. 4.) Beginning development of packet delay facility. ====================================================================== Component Version : 1.00.00.01 Release Date : July 7, 2010 *** Limited release for external testing. *** 1.) Initial release.