- command void* Packet.getPayload(message_t* msg, uint8_t* len) {
- uint8_t* payload = call SubPacket.getPayload(msg, len);
- linkest_header_t *hdr;
- hdr = getHeader(msg);
- if (len != NULL) {
- *len = *len - sizeof(linkest_header_t) - sizeof(linkest_footer_t)*(NUM_ENTRIES_FLAG & hdr->flags);
+ command void* Packet.getPayload(message_t* msg, uint8_t len) {
+ linkest_header_t *hdr = getHeader(msg);
+ uint8_t footerLen = (hdr->flags & NUM_ENTRIES_FLAG) * sizeof(linkest_header_t);
+ void* payload = call SubPacket.getPayload(msg, len + footerLen);
+ if (payload != NULL) {
+ payload += sizeof(linkest_header_t);