buglwIP - A Lightweight TCP/IP stack - Bugs: bug #50739, 6lowpan - IPHC de-compression bug

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #50739: 6lowpan - IPHC de-compression bug

Submitter:  Aigner B. <aignerb>
Submitted:  Thu 06 Apr 2017 12:34:52 PM UTC
   
 
Category:  IPv6 Severity:  3 - Normal
Item Group:  Faulty Behaviour Status:  Fixed
Privacy:  Public Assigned to:  None
Open/Closed:  Closed Planned Release:  None
lwIP version:  2.0.2

Fri 21 Apr 2017 08:30:55 PM UTC, comment #3: 

Thanks for the fix!

Dirk Ziegelmeier <dziegel>
Group administrator
Fri 07 Apr 2017 06:26:20 AM UTC, comment #2: 

As I said, I'm working on a different netif, but it uses the same IPHC than 6lowpan.
So regarding the 6lowpan.c: this was only by reading
Regarding my implementation: I changed it and it worked :-)

I will deliver you patches for 6lowpan ASAP and whenever I find a new bug.


Aigner B. <aignerb>
Thu 06 Apr 2017 06:11:30 PM UTC, comment #1: 

Did you see the other bugs for 6lowpan? Unfortunately, the 6lowpan netif driver does not seem to be very actively maintained. I don't know how good it is tested against other implementations... I'm happy for patches :-)

Unfortunately, I can't comment on your change. Have you changed it and fixed your connection or does this come from reading the code only?

Also, did you have to make other changes to get it working? Which hardware do you use to test against?

Simon Goldschmidt <goldsimon>
Group administrator
Thu 06 Apr 2017 12:34:52 PM UTC, original submission:  

Hi @all,

I'm working on a RFC7668 implementation on the ESP32 (6lowpan over Bluetooth LE).

I found a wrong implementation within the header decompression:

lowpan6.c:841

ip6hdr->dest.addr[0] = htonl(0xff000000UL | lowpan6_buffer[lowpan6_offset++]);

This line is the dest. address decompression for the settings Multicast=1, DAC=1, DAM=10.
According to RFC6282, page 9, following address format is used:

10:  32 bits.  The address takes the form ffXX::00XX:XXXX.

So, as I think, the line should be written as following:

ip6hdr->dest.addr[0] = htonl(0xff000000UL | (lowpan6_buffer[lowpan6_offset++]<<16));


Am I right?

Best wishes

Aigner B. <aignerb>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by dziegel (Posted a comment)
  • -email is unavailable- added by goldsimon (Posted a comment)
  • -email is unavailable- added by aignerb (Submitted the item)
  • -email is unavailable- added by aignerb
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

     

    Follow 3 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2017-04-21 dziegel StatusNone Fixed
        Open/ClosedOpen Closed
    2017-04-06 aignerb Carbon-Copy- Added -email is unavailable-

    Back to the top

    Powered by Savane 3.13-02a9.
    Corresponding source code