WHQL NDIS test question.

WHQL NDIS test question.

Post by samuel_x » Wed, 16 Apr 2003 20:14:13



Maybe only Microsoft can answer this question about WHQL test .

       I found one problem that maybe was not covered in NDIS test document
about 2c_AddressChange test section.

       It is a manual test, so I only tested my driver of this
2c_AddressChange section. The version of NDIS test is 4.03.0029.

       My driver can pass the test of the current mac address changing test,
there is not "failed" and

warning about address changing. But there are some "failed" about the
receive status.

              NDIS test always reports: "[23081] Should not have received
any packets" of Variation #21, Variation #43, Variation #65

       I have read the script file of 2c_AddressChange.wsf.There is not a
line to report "Should not have received any packets" message.        I even
searched all the script files under "lan" directory, there are only
2c_14DayTest.wsf reports a warning of "Should not have received any
packets", while I do not test this section.

I guess in the Variation #19,ndis tester wants to set my Network adapter
filter to only DIRECTED mode. After the Variation #21,ndis tester restores
my Network adapter filter. I do get OID_GEN_CURRENT_PACKET_FILTER at the end
of  Variation #21,the content is 0x0B 0x00 0x00 0x00.The following OID is
OID_802_3_MULTICAST_LIST,content is 0x01 0x00 0x5E 0x00 0x00 0x01 0x01 0x00.
But my driver does not get the OID at Variation #19,where the log tells me
"SetPacketFilter is setting the packet filter to DIRECTED ".

    Why?

I also watched all the packets sent by miniportSend handle, there is not a
setup frame.

Could anyone tell me why my driver does not get any instruction, such as OID
in the Variation #19.And how can I conquer this "FAILED"?

Thank you very much!

Samuel

////////////////////////////////////////////////////////////////////////////
//////////

The following part is the debug output information. The failed information
is in line LOG: FAILED: [23081] Should not have received any packets.

Variation #19 Prepare to receive at old address SetPacketFilter is setting
the packet filter to DIRECTED

NdisRequest

- OpenId = 0x01010002

- OID = OID_GEN_CURRENT_PACKET_FILTER

StartReceive

- OpenId = 0x01010002

Variation #20 Send packets

SendPackets

- OpenId = 0x02010001

- DestinationAddress(0) = 00-00-09-c6-26-0d

- DestinationAddress(1) = 00-00-09-c6-26-0d

- DestinationAddress(2) = 00-00-09-c6-26-0d

- DestinationAddress(3) = 00-00-09-c6-26-0d

- PacketSize = 64

- BurstSize = 4

- NumBursts = 25

- TestDuration = 0 secs

- NoResends

[338468]NdtCore: NDTCore: CallServer() - Enter (ID = 3193, Command =
0x10000025)

[338468]NdtCore: NDTCore: CallServer: ulSendLength = 88, ulRecvLength = 1400

[338468]NdtCore: NDTCore: CallServer: ** Calling Back Channel to send Data
**

[339468]NdtCore: NDTCore: CallServer: ** Back Channel returned with recieve
data **

[339468]NdtCore: NDTCore: CallServer() - Exit

WaitSend

- OpenId = 0x02010001

[339468]NdtCore: NDTCore: CallServer() - Enter (ID = 3193, Command =
0x1000005d)

[339468]NdtCore: NDTCore: CallServer: ulSendLength = 8, ulRecvLength = 1400

[339468]NdtCore: NDTCore: CallServer: ** Calling Back Channel to send Data
**

[340468]NdtCore: NDTCore: CallServer: ** Back Channel returned with recieve
data **

[340468]NdtCore: NDTCore: CallServer() - Exit

GetSendResults

- OpenId = 0x02010001

- SEND_FAILURES_FORBIDDEN

[340468]NdtCore: NDTCore: CallServer() - Enter (ID = 3193, Command =
0x1000005e)

[340468]NdtCore: NDTCore: CallServer: ulSendLength = 8, ulRecvLength = 1400

[340468]NdtCore: NDTCore: CallServer: ** Calling Back Channel to send Data
**

[341468]NdtCore: NDTCore: CallServer: ** Back Channel returned with recieve
data **

[341468]NdtCore: NDTCore: CallServer() - Exit

Packets Successfully Sent =        100

Packets Sent              =        100

Packet Sends Pended       =        100

Packet Sends Completed    =        100

Variation #21 Receive results

-----------------------------------------------------

              StopReceive

              - OpenId = 0x01010002

              Test Adapter should receive 0 and resend 0

              GetReceiveResults

              - OpenId = 0x01010002

              ***** Per-Source-Address Packet reception data ****

              Source Address : 00-00-18-73-E0-04

              Packets Received            =        100  (Sum of next two
lines)

               -- Receive handler         =        100  (Ndis calls to
ProtocolReceive)

               -- ReceivePacket handler   =          0  (Ndis calls to
ProtocolReceivePacket)

              Packet Receives Complete    =        100  (Ndis calls to
ProtocolReceiveComplete)

              ***** Aggregated Packet reception data ****

              Total Packets Received            =        100  (Sum of next
two lines)

               -- Total Receive handler         =        100 (Ndis calls to
ProtocolReceive)

               -- Total ReceivePacket handler   =          0 (Ndis calls to
ProtocolReceivePacket)

              Total Packet Receives Complete    =        100 (Ndis calls to
ProtocolReceiveComplete)

              FAILED: [23081] Should not have received any packets

The following parts is the debug output.

LOG: Variation #19 Prepare to receive at old address

LOG: SetPacketFilter is setting the packet filter to DIRECTED

LOG: NdisRequest

LOG: - OpenId = 0x01010002

- OID = OID_GEN_CURRENT_PACKET_FILTER

NdisTest:

NdtDispatch: IRP_MJ_DEVICE_CONTROL.

NdisTest: Command            = ulNDISREQUEST

OpenHandle         = 81008020

RequestType        = 1

OID                = 0x0001010E

Buffer Size        = 4

BytesWritten       = 0

BytesNeeded        = 0

NdisTest: NdtDispatch: request PENDING in handler.

LOG: StartReceive

LOG: - OpenId = 0x01010002

NdisTest:

NdtDispatch: IRP_MJ_DEVICE_CONTROL.

NdisTest: Command = ulRECEIVE.

EndPoint = 80E262E8

NdisTest: NdtDispatch: request PENDING in handler.

LOG: Variation #20 Send packets

LOG: SendPackets

LOG: - OpenId = 0x02010001

LOG: - DestinationAddress(0) = 00-00-09-c6-26-0d

LOG: - DestinationAddress(1) = 00-00-09-c6-26-0d

LOG: - DestinationAddress(2) = 00-00-09-c6-26-0d

LOG: - DestinationAddress(3) = 00-00-09-c6-26-0d

LOG: - PacketSize = 64

- BurstSize = 4

- NumBursts = 25

- TestDuration = 0 secs

LOG: - NoResends

[338468]NdtCore: NDTCore: CallServer() - Enter (ID =

3193, Command = 0x10000025)

[338468]NdtCore: NDTCore: CallServer: ulSendLength =

88, ulRecvLength = 1400

[338468]NdtCore: NDTCore: CallServer: ** Calling Back

Channel to send Data **

[338468]NDTCOMM: Packet:         00A687D8

[338468]NDTCOMM: Packet:         00A687D8

[338468]NDTCOMM: **************** SENDING MESSAGE

***************

[338468]NDTCOMM: BC Version:     0x04030029

[338468]NDTCOMM: PacketID:       8

[338468]NDTCOMM: PacketLen:      244

[338468]NDTCOMM: Command:        0x10000025

[338468]NDTCOMM: SendLen:        88

[338468]NDTCOMM: RecvLen:        1400

[338468]NDTCOMM: Packet:         00A687D8

[338468]NDTCOMM:

************************************************

[339468]NDTCOMM: **************** RECEIVED REPLY

****************

[339468]NDTCOMM: PacketID:       8

[339468]NDTCOMM: PacketLen:      1556

[339468]NDTCOMM: Command:        0x10000025

[339468]NDTCOMM: SendLen:        1400

[339468]NDTCOMM: RecvLen:        0

[339468]NDTCOMM: Packet:         00A688D8

[339468]NDTCOMM: Error:          FALSE

[339468]NDTCOMM:

************************************************

[339468]NdtCore: NDTCore: CallServer: ** Back Channel

returned with recieve data **

[339468]NdtCore: NDTCore: CallServer() - Exit

LOG: WaitSend

LOG: - OpenId = 0x02010001

[339468]NdtCore: NDTCore: CallServer() - Enter (ID =

3193, Command = 0x1000005d)

[339468]NdtCore: NDTCore: CallServer: ulSendLength =

8, ulRecvLength = 1400

[339468]NdtCore: NDTCore: CallServer: ** Calling Back

Channel to send Data **

[339468]NDTCOMM: Packet:         00A685E8

[339468]NDTCOMM: Packet:         00A685E8

[339468]NDTCOMM: **************** SENDING MESSAGE

***************

[339468]NDTCOMM: BC Version:     0x04030029

[339468]NDTCOMM: PacketID:       9

[339468]NDTCOMM: PacketLen:      164

[339468]NDTCOMM: Command:        0x1000005d

[339468]NDTCOMM: SendLen:        8

[339468]NDTCOMM: RecvLen:        1400

[339468]NDTCOMM: Packet:         00A685E8

[339468]NDTCOMM:

************************************************

[340468]NDTCOMM: **************** RECEIVED REPLY

****************

[340468]NDTCOMM: PacketID:       9

[340468]NDTCOMM: PacketLen:      1556

[340468]NDTCOMM: Command:        0x1000005d

[340468]NDTCOMM: SendLen:        1400

[340468]NDTCOMM: RecvLen:        0

[340468]NDTCOMM: Packet:         00A688D8

[340468]NDTCOMM: Error:          FALSE

[340468]NDTCOMM:

************************************************

[340468]NdtCore: NDTCore: CallServer: ** Back Channel

returned with recieve data **

[340468]NdtCore: NDTCore: CallServer() - Exit

LOG: GetSendResults

LOG: - OpenId = 0x02010001

LOG: - SEND_FAILURES_FORBIDDEN

[340468]NdtCore: NDTCore: CallServer() - Enter (ID =

3193, Command = 0x1000005e)

[340468]NdtCore: NDTCore: CallServer: ulSendLength =

8, ulRecvLength = 1400

[340468]NdtCore: NDTCore: CallServer: ** Calling Back

Channel to send Data **

[340468]NDTCOMM: Packet:         00A685E8

[340468]NDTCOMM: Packet:         00A685E8

[340468]NDTCOMM: **************** SENDING MESSAGE

***************

[340468]NDTCOMM: BC Version:     0x04030029

[340468]NDTCOMM: PacketID:       10

[340468]NDTCOMM: PacketLen:      164

[340468]NDTCOMM: Command:        0x1000005e

[340468]NDTCOMM: SendLen:        8

[340468]NDTCOMM: RecvLen:        1400

[340468]NDTCOMM: Packet:         00A685E8

[340468]NDTCOMM:

************************************************

[341468]NDTCOMM: **************** RECEIVED REPLY

****************

[341468]NDTCOMM: PacketID:       10

[341468]NDTCOMM: PacketLen:      1556

[341468]NDTCOMM: Command:        0x1000005e

[341468]NDTCOMM: SendLen:        1400

[341468]NDTCOMM: RecvLen:        0

[341468]NDTCOMM: Packet:         00A688D8

[341468]NDTCOMM: Error:          FALSE

[341468]NDTCOMM:

************************************************

[341468]NdtCore: NDTCore: CallServer: ** Back Channel

returned with recieve data **

[341468]NdtCore: NDTCore: CallServer() - Exit

LOG: Packets Successfully Sent =        100

LOG: Packets Sent              =        100

LOG: Packet Sends Pended       =        100

Packet Sends Completed    =        100

LOG: Variation #21 Receive results

LOG: StopReceive

LOG: - OpenId = 0x01010002

NdisTest:

NdtDispatch: IRP_MJ_DEVICE_CONTROL.

NdisTest: Command = ulSTOPRECEIVE.

EndPoint  = 80E262E8

NdisTest: NdtDispatch: request COMPLETED by handler.

LOG: Test Adapter should receive 0 and resend 0

LOG: GetReceiveResults

LOG: - OpenId = 0x01010002

LOG:

***** Per-Source-Address Packet reception data ****

LOG: Source Address : 00-00-18-73-E0-04

LOG: Packets Received            =        100  (Sum of

next two lines)

 -- Receive handler         =        100  (Ndis calls

to ProtocolReceive)

 -- ReceivePacket handler   =          0  (Ndis calls

to ProtocolReceivePacket)

Packet Receives Complete    =        100  (Ndis calls

to ProtocolReceiveComplete)

LOG:

LOG: ***** Aggregated Packet reception data ****

LOG: Total Packets Received            =        100

(Sum of next two lines)

 -- Total Receive handler         =        100  (Ndis

calls to ProtocolReceive)

 -- Total ReceivePacket handler   =          0  (Ndis

calls to ProtocolReceivePacket)

Total Packet Receives Complete    =        100  (Ndis

calls to ProtocolReceiveComplete)

LOG: FAILED: [23081] Should not have received any packets

LOG: GetEvents

LOG: - OpenId = 0x01010002

NdisTest:

NdtDispatch: IRP_MJ_DEVICE_CONTROL.

NdisTest: Command = ulGETEVENTS.

Handle =   81008020

NdisTest: NdtDispatch: request COMPLETED by handler.

LOG: No events occured.

LOG: < Resets = 0

< Disconnects = 0

< Connects = 0

LOG: NdisClose

LOG: - OpenId = 0x01010002

NdisTest:

NdtDispatch: IRP_MJ_DEVICE_CONTROL.

NdisTest: Command = ulCLOSE.

OpenHandle =   81008020

NdisTest: NdtDispatch: request COMPLETED by handler.