Структура M_PKT_HDR в VxWorks 7 - PullRequest
       6

Структура M_PKT_HDR в VxWorks 7

0 голосов
/ 30 января 2019

Может ли кто-нибудь подтвердить расположение M_PKT_HDR на VxWorks 7. Я написал следующий код, чтобы вывести получаемый 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, но у меня есть доступ только к заголовочным файлам с версии 6.6 или около того, и даже это несколько неполно.

...