The official git repository for OSD-Contiki, the open source OS for the Internet of Things
Find a file
Timofei Istomin eae25d622d Check the frame preamble and MPDU length before parsing
Due to errors in mspsim and/or radio drivers, packets of incorrect
length are sometimes transmitted. The length might be larger than
the 127-byte maximum (considered negative in the current code)
or not matching the actual number of transmitted bytes.
This leads to wrong packet delimiting when converting from
the mspsim-level stream of bytes to Cooja-level packets
causing unhandled exceptions that terminate the simulation.

This patch checks the frame preamble (0000007A) and the length field.
If they are wrong, no decoding attempt is done.

The transmitted bytes are still delivered to the receivers untouched.
The connection is terminated when the radio state is changed (which alway
s happens when TX is done).
2015-05-08 18:52:34 +02:00
apps Merge pull request #1001 from adamdunkels/pr/queuebuf-no-ref 2015-05-03 16:35:17 +02:00
core Added missing sanity check in uip-ds6-route.c 2015-05-07 16:58:23 +02:00
cpu Merge pull request #1031 from bthebaudeau/cc2538-gpio-irqs 2015-05-03 18:42:53 +01:00
dev IP64 bindings for the ENC28j60 Ethernet driver 2015-04-15 08:30:26 +02:00
doc Removed packetbuf references. This was a feature that is not used anymore and only made the code more complex. 2015-04-01 21:33:02 +02:00
examples Merge pull request #1001 from adamdunkels/pr/queuebuf-no-ref 2015-05-03 16:35:17 +02:00
platform Leverage the recently added exec() cmdline support in the cc65 C library for the Apple ][. 2015-04-26 21:45:33 +02:00
regression-tests Disable the websever6 compile test for the exp5438 platform 2015-04-01 21:33:27 +02:00
tools Check the frame preamble and MPDU length before parsing 2015-05-08 18:52:34 +02:00
.gitignore Add CC26xx build artifacts to .gitignore 2015-02-25 13:16:07 +01:00
.gitmodules Added the cc2538-bsl submodule to the tools dir 2014-03-07 15:44:29 +01:00
.travis.yml Add cc26xx travis tests 2015-02-25 13:16:27 +01:00
CONTRIBUTING.md Adding a CONTRIBUTING file to use github feature 2014-07-04 09:29:12 +02:00
LICENSE Removed the explicit year 2012 to make it more generic 2012-10-25 23:08:54 +02:00
Makefile.include Cleanup UIP_CONF_IPV6_RPL configuration 2014-12-02 12:38:55 +01:00
README-BUILDING.md Rename to md 2013-03-26 23:15:37 +01:00
README-EXAMPLES.md Several minor consistency improvements. 2013-07-31 00:55:31 +02:00
README.md Rename to md 2013-03-26 23:15:37 +01:00

The Contiki Operating System

Build Status

Contiki is an open source operating system that runs on tiny low-power microcontrollers and makes it possible to develop applications that make efficient use of the hardware while providing standardized low-power wireless communication for a range of hardware platforms.

Contiki is used in numerous commercial and non-commercial systems, such as city sound monitoring, street lights, networked electrical power meters, industrial monitoring, radiation monitoring, construction site monitoring, alarm systems, remote house monitoring, and so on.

For more information, see the Contiki website:

http://contiki-os.org