In case ((ntohs(uh->source) & LOWPAN_NHC_UDP_8BIT_MASK) the order of
uncompression is wrong. It's always first source port then destionation
port as second.
See:
http://tools.ietf.org/html/rfc6282#section-4.3.3
"Fields carried in-line (in part or in whole) appear in the same order
as they do in t
The current implementation does many copies of the sk_buff for
increasing headroom which are not necessary.
This patch increases the headroom in the maclayer for a worst case
scenario of (sizeof(struct ipv6hdr) + sizeof(struct udphdr)).
Signed-off-by: Alexander Aring
---
net/ieee802154/6lowpan.
Sometimes a nullpointer dereferencing occurs because of using a wrong
pointer arithmetic in udp_uncompression.
This patch changes "**(hc06_ptr + 3)" to the right one "*(*hc06_ptr +
3)". Dereferencing like "**(hc06_ptr + 3)" works in a random case only.
Signed-off-by: Alexander Aring
---
net/iee
This will add support to skip bytes from skb with the lowpan_fetch_skb
function.
This is necessary for upcomming patches.
Signed-off-by: Alexander Aring
---
net/ieee802154/6lowpan.h | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/net/ieee802154/6lowpan.h b/net/ieee802154/
This patch fixes the fragmentation of receiving 6lowpan packets.
The current fragmentation isn't rfc4944 compatible.
Add support for fragmentation frame match with source and destination
addresses, instead of using tag id of fragmentation header only.
Signed-off-by: Alexander Aring
---
net/ieee
Cleanup code to handle both calculation in the same way.
Signed-off-by: Alexander Aring
---
net/ieee802154/6lowpan.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/ieee802154/6lowpan.c b/net/ieee802154/6lowpan.c
index 4ef6b39..d054da6 100644
--- a/net/ieee802154/6lowpan.
This patch fix the fragmentation on sending side according to rfc4944.
Also add improvement to use the full payload of a PDU which calculate the
nearest divided to 8 payload length for the fragmentation datagram
offset attribute.
Signed-off-by: Alexander Aring
---
include/net/ieee802154_netdev.
This is a race condition fix if the timer expire occurs when the last
frame is arrived otherwise we cleanup the list entry twice.
Signed-off-by: Alexander Aring
---
net/ieee802154/6lowpan.c | 5 -
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/net/ieee802154/6lowpan.c b/net/iee
This patch series fixes the fragmentation implementation according to rfc4944.
So ping (with fragmentation) to contiki(or other rfc4944 compatible 6lowpan
stacks) comes possible.
I wanted to made a fragmentation implementation with the internal fragmentation
api(include/net/inet_frag.h). The curre
The incoming udp header in lowpan_compress_udp_header function is
already in network byte order.
Everytime we read this values for source and destination port we need
to convert this value to host byte order.
In the outcoming header we need to set this value in network byteorder
which the upcomin
Set the mac header length while creating the 802.15.4 mac header.
Drop the function for recalculate mac header length in upper layers
which was static and works for intra pan communication only.
Signed-off-by: Alexander Aring
---
net/ieee802154/6lowpan.c | 13 +
net/mac802154/wpan.c
Cleanup the lowpan_uncompress_udp_header function to use the
lowpan_fetch_skb function.
Signed-off-by: Alexander Aring
---
net/ieee802154/6lowpan.c | 46 --
1 file changed, 20 insertions(+), 26 deletions(-)
diff --git a/net/ieee802154/6lowpan.c b/net/
If the timer expire on fragmentation handling we need to hold the
flist_lock spinlock while accessing fraglist.
Signed-off-by: Alexander Aring
---
net/ieee802154/6lowpan.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/net/ieee802154/6lowpan.c b/net/ieee802154/6lowpan.c
index 93a44a8..af3
This patch replaces a redundant open-coded calculation
with the already defined MAC802154_FRAME_HARD_HEADER_LEN.
Also replace a magic number with the already defined
IEEE802154_MFR_SIZE.
Signed-off-by: Alexander Aring
---
net/ieee802154/6lowpan.c | 6 +++---
1 file changed, 3 insertions(+), 3 d
Bit 5 of "UDP LOWPAN_NHC Format" indicate that the checksum can be elided.
The host need to calculate the udp checksum afterwards but this isn't
supported right now.
See:
http://tools.ietf.org/html/rfc6282#section-4.3.3
Signed-off-by: Alexander Aring
---
net/ieee802154/6lowpan.c | 11 ---
Signed-off-by: Alexander Aring
---
net/ieee802154/6lowpan.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/net/ieee802154/6lowpan.c b/net/ieee802154/6lowpan.c
index d054da6..93a44a8 100644
--- a/net/ieee802154/6lowpan.c
+++ b/net/ieee802154/6lowpan.c
@@ -442,7 +442,6 @@ lowpan_uncompress_udp_
Hi,
On Wed, Oct 09, 2013 at 07:06:14PM +0200, Alexander Aring wrote:
> This patch fix the fragmentation on sending side according to rfc4944.
>
> Also add improvement to use the full payload of a PDU which calculate the
> nearest divided to 8 payload length for the fragmentation datagram
> offset
17 matches
Mail list logo