Hey all,
I'm intending to add a security feature to the RPL implementation in RIOT. For this we're (at HAW) are currently trying to get RPL in RIOT on the MSB-A2 boards to work. We are running into some errors at Sixlowpan. We are trying to fix these errors and wanted to ask whether these are known errors and if somebody is already working on that.
Just a brief description of the sixlowpan parts and errors we're looking at (mainly in file lowpan.c):
1) it seems as if the etx beaconings (or all frames) are buffered in the lowpan FIFO but are not processed, so that the nodes run out of memory after while. And in case of RPL, the DIOs are not delivered to RPL process.
2) when a node receives a frame it gets the error "context not found" in function lowpan_iphc_decoding, so something goes wrong here
This is not a thorough description because we're still a little in the dark, but we're working on that and if somebody has quick hint, we'd be thankful!
Thanks and regards,
Heiner
Hi all,
we managed to workaround the violating memory access of lowpan_reas_buf_t (1).
This has been caused by receiving and keeping packets that are no further processed,
e.g. when packets contained not distinctable context information in the 6lowpan header (UNSPECIFIED address flag).
Unfortunately the workaround just prevents the illegal access on the unallocated address,
it does not clean up the stuffed buffer.
Additionally we found and fixed a bug preventing a right lowpan context distinction (2).
It turned out that querying if an IPv6 address is a link local one had a typo accessing the address bytes.
This resulted ipv6_iface_get_best_src_addr(...) to always set the source IP address to 0s and the
UNSPECIFIED address flag (SAM) in the 6lowpan header.
both changes can be pulled by:
git pull https://github.com/BytesGalore/RIOT sixlopan_fixes
Best regards,
Martin
Hi Martin,
thanks for your bug report and fixes.
both changes can be pulled by:
git pull https://github.com/BytesGalore/RIOT sixlopan_fixes
Could you please make a Pull Request, so that your changes can be reviewed and
commented on Github? Thanks!
Cheers,
Oleg