NDIS and receiving locally generated packets

My NDIS driver is failing the NDIStest 2c_holdpackets test. It fails to
receive any packets during that test so it can’t hold any back.

According to the logs, the packets are sent to the local MAC address, so
either I’m reading the logs incorrectly, or it expects such packets to
be echo’d locally.

Is this the case? Should I be ‘receiving’ packets that I transmit
(assuming they pass the current filter)? My driver is for a virtual
Ethernet controller so I would have to simulate such a thing.

Thanks

James

I should probably go look at the test specifically but based on the 2c_
prefix is this not a test where the sender and receiver are on the same
machine yet are different NIC instances? So ‘echo’ is not really the term I
would use since I think the sender and receiver are on different ‘ports’ (so
to say) of the virtual switch.

What is the full path that a packet traverses for this case?

Regards,
Dave Cattley

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of James Harper
Sent: Friday, February 05, 2010 10:36 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] NDIS and receiving locally generated packets

My NDIS driver is failing the NDIStest 2c_holdpackets test. It fails to
receive any packets during that test so it can’t hold any back.

According to the logs, the packets are sent to the local MAC address, so
either I’m reading the logs incorrectly, or it expects such packets to
be echo’d locally.

Is this the case? Should I be ‘receiving’ packets that I transmit
(assuming they pass the current filter)? My driver is for a virtual
Ethernet controller so I would have to simulate such a thing.

Thanks

James


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

>

I should probably go look at the test specifically but based on the
2c_
prefix is this not a test where the sender and receiver are on the
same
machine yet are different NIC instances? So ‘echo’ is not really the
term I
would use since I think the sender and receiver are on different
‘ports’ (so
to say) of the virtual switch.

What is the full path that a packet traverses for this case?

Yes I think I was confusing myself. The two machines on my virtual
switch are WLK1 and WLK2.

WLK1 has MAC fe-fd-00-01-00-28
WLK2 has MAC fe-fd-00-01-00-29

The ndis ‘server’ logs were reporting destination address of
‘fe-fd-00-01-00-28’ which, because it was reported on the server, I
assumed it was sending to itself. You are right though that the 2c tests
are the ‘2 card’ tests so it must be that the ‘client’ is sending to the
‘server’ for the receive tests.

I just checked and the ‘2c_receivepackets’ test is also failing all over
the place, so there is something weird going on.

From memory, I can fire up ndistest without involving DTM and run the
tests in isolation… time to sniff some packets!

Thanks

James