Ping works but 2c_CheckConnections fail on wireless lan setup.

Discussion in 'Windows Vista Drivers' started by Ashirwad, Sep 2, 2004.

  1. Ashirwad

    Ashirwad Guest

    Hi,

    I am doing 2C_Checkconnections WHQL test for my wireless lan driver.
    The test setup is 2 nic's , 2 AP's. I can ping between the nic's but
    2C_Checkconnections fail. Later I found that 2C_Checkconnections is
    sending IPX packets. I was adding SNAP header to all the packets but
    IPX packets already have SNAP when it comes from NDIS.

    When doing ping, NdisPackets that comes to my miniport for transmission has
    6bytes of dest addr, 6 bytes of source addr, ether type(0x0806/0800) followed
    by the tcp-ip packet. I convert eth header to 802.11mac header, add 6 bytes
    of snap and then transmit. I do reverse in rx. Ping works.

    When I run 2c_CheckConnections whql test, I see 14 bytes in first
    NdisBuffer. In next 2 NdisBuffers the snap of 6 bytes, 0x8137 for IPX and
    then the IPX header and data. (BTW, NDIS_GET_PACKET_PROTOCOL_TYPE() doesn't
    return NDIS_PROTOCOL_ID_IPX for these packets.)

    Contents of 1st NdisBuffer:
    0x0,0x32,0x0,0x0,0x3c,0x2d,0x1e,0xf,0x0,0x1,0x0,0x0,0x7,0x0

    Contents of 2nd NdisBuffer:
    0xaa,0xaa,0x3,0x0,0x0,0x0,0x81,0x37,0x4e,0x44,0x49,0x53,0x0,0xd1,0xe,0x0,0x98,
    0x7b,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x78,0xf7,0x7d,0xfe,0x9b,
    0x43,0x0,0x0

    Contents of 3rd NdisBuffer:
    0xd1,0xd2,0xd3,0xd4,0xd5,0xd6,0xd7,0xd8,0xd9,0xda,0xdb,0xdc,0xdd,0xde

    How should I translate IPX packet to 802.11mac packet and viceversa ?

    What are the contents of the 1st NdisBuffer ? What should be done with this
    buffer contents if only NdisBuffer2 and 3 is to go in air ?

    Are there any other protocols that my miniport should support ?

    I have been in touch with microsoft for WHQL and am receiving help from there
    but thought I will post my problem so that anybody who would have already
    gone through this can give me some pointers.

    Thanks in advance,
    Ashirwad.
     
    Ashirwad, Sep 2, 2004
    #1
    1. Advertisements

  2. Contents of 1st NdisBuffer:
    0x0,0x32,0x0,0x0,0x3c,0x2d
    0x1e,0xf,0x0,0x1,0x0,0x0
    0x7,0x0

    Looks like the first buffer is the 14-byte 802.3 Ethernet header, with the
    frame type being 0x0700.

    In Windows XP, all 802.11 adapters expose a 802.3 Ethernet frame on its
    upper edge. You wireless miniport would have to translate this 802.3
    header to an 802.11 header. The translated buffer should also "go into the
    air" as an 802.11 header.

    Bryan S. Burgin


    This posting is provided "AS IS" with no warranties, and confers no rights.
     
    Bryan S. Burgin [MSFT], Sep 4, 2004
    #2
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.