From: Alexander Aring <[email protected]>
Date: Fri, 21 Feb 2014 19:58:58 +0100
> + err = lowpan_fragment_xmit(skb, head, header_length,
> + frag_plen + lowpan_size, 0,
> + LOWPAN_DISPATCH_FRAG1);
> if (err) {
> pr_debug("%s unable to send FRAG1 packet (tag: %d)",
> __func__, tag);
> goto exit;
> }
>
> - offset = LOWPAN_FRAG_SIZE;
> + offset = lowpan_size + frag_plen;
> + dgram_offset = mac_cb(skb)->frag_info.d_offset + frag_plen;
This isn't going to work.
Once you call dev_queue_xmit(), the skb control block can be reused by
other layers. In particular the device qdisc layer is going to
scramble the control block on you.
Once a packet travels from one layer to another, SKB control block
is likewise transferred.
------------------------------------------------------------------------------
Flow-based real-time traffic analytics software. Cisco certified tool.
Monitor traffic, SLAs, QoS, Medianet, WAAS etc. with NetFlow Analyzer
Customize your own dashboards, set traffic alerts and generate reports.
Network behavioral analysis & security monitoring. All-in-one tool.
http://pubads.g.doubleclick.net/gampad/clk?id=126839071&iu=/4140/ostg.clktrk
_______________________________________________
Linux-zigbee-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-zigbee-devel