Bugfix: don't send packets if they are shorter than the link layer header length
This commit is contained in:
parent
e06a30fdb0
commit
d9d3f7b6b5
|
@ -279,18 +279,20 @@ void mac_ethernetToLowpan(uint8_t * ethHeader)
|
||||||
}
|
}
|
||||||
|
|
||||||
//Remove header from length before passing onward
|
//Remove header from length before passing onward
|
||||||
uip_len -= UIP_LLH_LEN;
|
if(uip_len > UIP_LLH_LEN) {
|
||||||
|
uip_len -= UIP_LLH_LEN;
|
||||||
|
|
||||||
//Some IP packets have link layer in them, need to change them around!
|
//Some IP packets have link layer in them, need to change them around!
|
||||||
if (usbstick_mode.translate) {
|
if (usbstick_mode.translate) {
|
||||||
/* uint8_t transReturn = */
|
/* uint8_t transReturn = */
|
||||||
mac_translateIPLinkLayer(ll_802154_type);
|
mac_translateIPLinkLayer(ll_802154_type);
|
||||||
PRINTF("IPTranslation: returns %d\n", transReturn);
|
PRINTF("IPTranslation: returns %d\n", transReturn);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (usbstick_mode.sendToRf){
|
if (usbstick_mode.sendToRf){
|
||||||
tcpip_output(destAddrPtr);
|
tcpip_output(destAddrPtr);
|
||||||
/* rndis_stat.txok++; */
|
/* rndis_stat.txok++; */
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
uip_len = 0;
|
uip_len = 0;
|
||||||
|
|
Loading…
Reference in a new issue