VxWorks 7中M_PKT_HDR的结构

时间:2019-01-29 22:45:29

标签: vxworks

任何人都可以确认VxWorks 7上M_PKT_HDR的布局。我编写了以下代码来转储我收到的M_BLK,但看起来好像没有正确对齐。

LOCAL void  mBlkPktHdr_Show(M_PKT_HDR * mPktHdr)
{
    printf("\trcvif:0x%x\n",mPktHdr->rcvif);
    printf("\tlen:0x%x\n",mPktHdr->len);
    printf("\theader:0x%p\n",mPktHdr->header);
    printf("\tcsum_flags:0x%x\n",mPktHdr->csum_flags);
    printf("\tcsum_data:0x%x\n",mPktHdr->csum_data);
    printf("\taux:0x%p\n",mPktHdr->aux);
    printf("\tqnum:0x%x\n",mPktHdr->qnum);
    printf("\tvlan:0x%x\n",mPktHdr->vlan);
    printf("\taltq_hdr:0x%p\n",mPktHdr->altq_hdr);
}

当我运行此命令时,我会得到这样的结果

rcvif:0x0
len:0x0
header:0x4a
csum_flags:0x3200
csum_data:0xffff
aux:0xc0000
qnum:0x0
vlan:0x0
altq_hdr:0x0

最让我吃惊的是标头下的值实际上是长度,还有aux下的值,我希望是vlan,因为它最终是vlan标签,但这也许是实现END驱动程序的方式。不幸的是,DKM im构建正在VxWorks 7上运行,但是我只能从v6.6左右访问头文件,甚至还有些不完整。

0 个答案:

没有答案