Contiki 2.7 Bugs

From Glacsweb Wiki
Jump to: navigation, search

This is a list of bugs that we have found in the Contiki 2.7 release and when noted have fixed in [[1]] These are not being pushed upstream because in an email from Nicolas Tsiftes we have been told

Please also make the pull request for the master branch -- we do not change release-2-7 any longer.

Z1SP Compiled file not excluded from git FIXED

  • *.z1sp has been added to the .gitignore so that it doesn't prompt to upload this file

Z1SP test-potentiometer.c FIXED

  • It tried to print a non-existant variable v instead of value in file examples/z1sp/test-potentiometer.c so failed to compiled

MSP430F2xxx UART1.c


  • This has been copied and pasted from uart0 but register names have not been updated to reflect the new uart...
  • ubr variable is not used so baud rate cannot be controlled from else where. This will affect the baud rate of UART0 if this file is included & init'ed & the previous bug hasn't been fixed


  • core/dev/mac/contikimac.c
    • The if statement on line 656 has no effect on several platforms as all of the code in the if statement is enclosed within a single pre-processor #if WITH_PHASE_OPTIMIZATION.
    • The minimum-packet-length padding on lines 632 to 640 has no effect as the padded length is not saved. This means that small packets can be below the size that can be reliably detected and received by Contikimac. FIXED
    • Security Issue: Padding occurs before NETSTACK_ENCRYPT on line 646. This means that the resultant cypher text is potentially vulnerable to cryptanalysis as repeated, known data is added to the packet before encryption. Encryption should occur before padding and CRC. FIXED
    • Potential bug: Line 789, full inter-packet interval is waited BEFORE checking to see if an ack has been received. Contiki then waits for the full after-ack-detected-time despite the requirement that the transmission of an ack start after 12 symbols, which is much shorter than the inter-packet time.
    • Line 445: CCA checks are not done in RX if RDC_CONF_HARDWARE_CSMA is set. This means that CCA checks are not done when determining whether to keep the radio on.