andy0207 发表于 2014-11-30 11:59

急求大家帮助

typedef        struct        GNU_PACKED _RXINFO_STRUC {
        UINT32                BA:1;
        UINT32                DATA:1;
        UINT32                NULLDATA:1;
        UINT32                FRAG:1;
        UINT32                U2M:1;            // 1: this RX frame is unicast to me
        UINT32                Mcast:1;            // 1: this is a multicast frame
        UINT32                Bcast:1;            // 1: this is a broadcast frame       
        UINT32                MyBss:1;        // 1: this frame belongs to the same BSSID       
        UINT32                Crc:1;            // 1: CRC error
        UINT32                IcvErr:1;      
        UINT32                MicErr:1;      
        UINT32                AMSDU:1;                // rx with 802.3 header, not 802.11 header.
        UINT32                HTC:1;
        UINT32                RSSI:1;
        UINT32                L2PAD:1;
        UINT32                AMPDU:1;                // To be moved
        UINT32                Decrypted:1;
        UINT32                Bssidx3:1;
        UINT32                WapiKeyId:1;
        UINT32                PaddingLen:3;
        UINT32                Resrv:6;
        UINT32                TcpChksumPass:1;       
        UINT32                IpChksumPass:1;
        UINT32                TcpChksumErr:1;       
        UINT32                IpChksumErr:1;       
}        RXINFO_STRUC, *PRXINFO_STRUC;


BOOLEAN STARxDoneInterruptHandle(
        pBD_t pBufDesc)
{
        PHEADER_802_11        pHeader;
        RX_BLK                        RxCell;
        PRXWI_STRUC   pRxWI;
        NDIS_STATUS   Status;
        PRXINFO_STRUC   pRxINFO;
        PUCHAR          pBuff;
        BYTE* p=0;
       
        if (pBufDesc->Length <= sizeof(HEADER_802_11) +RXINFO_SIZE +RXWI_SIZE){ // invalid packet length
                DBGPRINT(RT_DEBUG_TRACE,("len=%d\n", pBufDesc->Length));
      Printf_High("invalid packet length,time:%d\n",kal_get_systime());
                return FALSE;
        }       
        /* RX_FCEINFO*/
        /* RXINFO      */
        /* RXWI      */
        /* Payload   */
       
        /* check MIC error by pRxD attribute */
        /* single frame MIC is calculated by HW */
        pBuff   = (PUCHAR)pBufDesc->pBuf;
        pRxINFO = (PRXINFO_STRUC)(pBuff);
        pRxWI   = (PRXWI_STRUC) (pBuff +RXINFO_SIZE);
        pHeader = (PHEADER_802_11) (pBuff +RXINFO_SIZE +RXWI_SIZE);
        StorePhyMode(pRxWI->PHYMode);
。。。。。。
我想问问各位专家那个RXINFO和RXWI都是什么呀,802.11 Mac帧结构也没有提到有这些东西。
页: [1]
查看完整版本: 急求大家帮助