Commit Graph

2102 Commits

Author SHA1 Message Date
Simon Duquennoy
21387b954f Merge pull request #1493 from simonduq/pr/add-missing-ext-hdr
Insert RPL ext header before sending ICMP, UDP and TCP messages
2016-07-25 14:56:25 +02:00
Simon Duquennoy
ff5a4751c8 Merge pull request #1610 from simonduq/pr/tsch-rime
TSCH with Rime
2016-07-25 14:55:37 +02:00
George Oikonomou
9d3e4bc591 Merge pull request #1789 from tidyjiang8/tidy.0718
Update comments: RFC3513 is obsoleted by RFC4921
2016-07-24 15:18:56 +01:00
Sumankumar Panchal
6dfd358821 TSCH port for CC2538 based platforms. 2016-07-22 09:38:25 +05:30
Kitty(chun hua) Jiang
b5bc140680 Update comments: RFC3513 is obsoleted by RFC4921 2016-07-18 17:29:16 +08:00
Atis Elsts
081ec100a4 TSCH: add RADIO_DELAY_BEFORE_DETECT to rx guard time when waiting for a packet to be received 2016-07-16 18:08:41 +01:00
Nicolas Tsiftes
8a5886dfa1 Merge pull request #1767 from simonduq/pr/missing-return
RPL: added missing return, to not join instances with unsupported MOP
2016-07-15 21:10:57 +02:00
Simon Duquennoy
80b9bfea93 Merge pull request #1723 from gebart/pr/ieee802154-addr-mode-bugfix
core/net/mac/frame802154: Fix typo in PAN ID compression condition
2016-07-05 18:10:21 +02:00
Simon Duquennoy
4ceaaba4bd RPL: added missing return, to not join instances with unsupported MOP 2016-07-05 12:13:46 +02:00
Joakim Nohlgård
6f8306a465 core/net/mac/frame802154: Fix typo in PAN ID compression condition 2016-07-04 18:18:55 +02:00
Mohamed Seliem
5d99008afb remove duplicate include
Update uip-ds6-nbr.h
2016-07-01 11:12:52 +02:00
Simon Duquennoy
00f2344b4a RPL insert_srh_header: return success when no SRH is needed because the destination is a direct child 2016-06-29 17:26:01 +02:00
Simon Duquennoy
d73b229624 Fix and cleanup RPL ext header handling 2016-06-29 17:26:01 +02:00
Simon Duquennoy
e584a54608 Insert RPL ext header in tcpip_ipv6_output for consistency 2016-06-29 17:25:10 +02:00
Simon Duquennoy
5eb022fdd8 Merge pull request #1750 from yatch/pr/improve-rpl-ext-hdr
Improve RPL extension headers handling
2016-06-29 10:38:17 +02:00
George Oikonomou
a509aa7136 Merge pull request #1689 from kqorany/kqorany-esmrf
A new multicast engine called ESMRF for RPL
2016-06-28 23:23:30 +01:00
George Oikonomou
5e66770aaf Merge pull request #1734 from yatch/pr/pr-fix-mcast6-macro
Fix the source address selection for multicast packets
2016-06-28 23:22:08 +01:00
Yasuyuki Tanaka
ffdc53718d RPL: code cleanup (rpl-ext-header.c) 2016-06-27 20:57:48 +02:00
Yasuyuki Tanaka
13f18fd842 RPL: update uip_ext_len whenever moving to next header (rpl-ext-header.c) 2016-06-27 20:57:48 +02:00
Yasuyuki Tanaka
5a79bad4b1 RPL: prevent unintended memory access (rpl_remove_header)
When it goes to the default label in the switch statement of
rpl_remove_header(), UIP_EXT_BUF does not always point to an IPv6 extension
header. "Move to next header" process should be done only in case of
UIP_PROTO_DESTO. Otherwise, it returns with doing nothing.
2016-06-27 20:57:48 +02:00
Yasuyuki Tanaka
e361c49f14 RPL non-storing: fix a bug causing an infinite loop
It falls into an infinite loop if it goes to the default label in the switch
statement of rpl_srh_get_next_hop() or rpl_process_srh_header().
2016-06-27 20:57:48 +02:00
Benoît Thébaudeau
8fd7719c07 noncoresec: Fix build errors with DEBUG set to 1
Fix these build errors, which are generated if DEBUG is set to 1:

../../core/net/llsec/noncoresec/noncoresec.c: In function 'parse':
../../core/net/llsec/noncoresec/noncoresec.c:198:54: error: expected ')' before 'PRIu32'
     PRINTF("noncoresec: received unauthentic frame %"PRIu32"\n",
                                                      ^
../../core/net/llsec/noncoresec/noncoresec.c:88:28: note: in definition of macro 'PRINTF'
 #define PRINTF(...) printf(__VA_ARGS__)
                            ^
../../core/net/llsec/noncoresec/noncoresec.c:198:12: warning: spurious trailing '%' in format [-Wformat=]
     PRINTF("noncoresec: received unauthentic frame %"PRIu32"\n",
            ^
../../core/net/llsec/noncoresec/noncoresec.c:88:28: note: in definition of macro 'PRINTF'
 #define PRINTF(...) printf(__VA_ARGS__)
                            ^
../../core/net/llsec/noncoresec/noncoresec.c:198:12: warning: spurious trailing '%' in format [-Wformat=]
     PRINTF("noncoresec: received unauthentic frame %"PRIu32"\n",
            ^
../../core/net/llsec/noncoresec/noncoresec.c:88:28: note: in definition of macro 'PRINTF'
 #define PRINTF(...) printf(__VA_ARGS__)
                            ^
../../core/net/llsec/noncoresec/noncoresec.c:231:54: error: expected ')' before 'PRIu32'
        PRINTF("noncoresec: received replayed frame %"PRIu32"\n",
                                                      ^
../../core/net/llsec/noncoresec/noncoresec.c:88:28: note: in definition of macro 'PRINTF'
 #define PRINTF(...) printf(__VA_ARGS__)
                            ^
../../core/net/llsec/noncoresec/noncoresec.c:231:15: warning: spurious trailing '%' in format [-Wformat=]
        PRINTF("noncoresec: received replayed frame %"PRIu32"\n",
               ^
../../core/net/llsec/noncoresec/noncoresec.c:88:28: note: in definition of macro 'PRINTF'
 #define PRINTF(...) printf(__VA_ARGS__)
                            ^
../../core/net/llsec/noncoresec/noncoresec.c:231:15: warning: spurious trailing '%' in format [-Wformat=]
        PRINTF("noncoresec: received replayed frame %"PRIu32"\n",
               ^
../../core/net/llsec/noncoresec/noncoresec.c:88:28: note: in definition of macro 'PRINTF'
 #define PRINTF(...) printf(__VA_ARGS__)
                            ^

PRIu32 is not defined, so replace it with a standard format directive.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2016-06-23 22:10:43 +02:00
Yasuyuki Tanaka
e5ac3df7e1 Include uip-mcast6.h to refer to UIP_IPV6_MULTICAST 2016-06-20 16:35:09 +02:00
Yasuyuki Tanaka
ca3a4726d1 Rename two macros related to multicast, which are not user configuration
- UIP_CONF_IPV6_MULTICAST -> UIP_IPV6_MULTICAST
- RPL_CONF_MULTICAST      -> RPL_WITH_MULTICAST
2016-06-20 16:35:09 +02:00
Yasuyuki Tanaka
704847db04 Fix a typo, UIP_IPV6_CONF_MULTICAST, in a comment with UIP_CONF_IPV6_MULTICAST 2016-06-20 16:35:09 +02:00
Yasuyuki Tanaka
b074e5c3e0 Replece UIP_IPV6_MULTICAST_RPL in a comment with RPL_CONF_MULTICAST 2016-06-20 16:35:09 +02:00
Antonio Lignan
fba37e0131 Merge pull request #1624 from cedric-d/prevent-uip-buffer-overread
Prevent uIP buffer over-read with big UDP packets
2016-06-15 13:08:45 +02:00
George Oikonomou
5fe95fc425 Merge pull request #1709 from atiselsts/cc26xx_tsch_port
TSCH port for CC26xx
2016-06-15 10:28:58 +01:00
cedric-d
67e0575bd3 Prevent uIP buffer over-read with big UDP packets
When an UDP packet too big to fit in the uIP packet buffer is to be sent, the part fitting in the uIP buffer is copied to it (so no buffer overflow occurs) but uIP actually sends a packet of the original size therefore a buffer over-read occurs.

This modification makes uIP discard the UDP packets that do not fit in the uIP packet buffer.
2016-06-15 10:51:20 +02:00
Simon Duquennoy
872146def0 Merge pull request #1720 from joakimeriksson/rpl_ns_periodic
Fix for compilation with clang - issue reported by Olaf Bergmann
2016-06-15 10:27:58 +02:00
Antonio Lignan
fa88122140 Merge pull request #1589 from ibriano/master
Allow creating connections on unspecified local port
2016-06-14 21:30:34 +02:00
Atis Elsts
6800f9502e Update the list of supported platforms in TSCH README file 2016-06-14 19:47:59 +03:00
Simon Duquennoy
30e820ffa5 Merge pull request #1708 from atiselsts/tsch_enhancements
TSCH enhancements
2016-06-13 20:58:02 +02:00
Joakim Eriksson
7853a7434b fix for compilation with clang - issue reported by Olaf Bergmann 2016-06-13 16:18:16 +02:00
Simon Duquennoy
4fd8f67053 Merge pull request #1715 from sumanpanchal/zoul-tsch
TSCH port for Zolertia ReMote/Zoul.
2016-06-13 09:03:16 +02:00
Sumankumar Panchal
373fda46f7 TSCH port for Zolertia ReMote/Zoul. 2016-06-12 16:37:01 +05:30
Simon Duquennoy
63565b109d Fix TSCH_AUTOSELECT_TIME_SOURCE to work with 2-byte addresses and with the new nbr_table_add_lladdr interface 2016-06-10 20:59:42 +02:00
Simon Duquennoy
ac16fb9e2b TSCH fixes for the short-address case 2016-06-10 20:58:40 +02:00
Atis Elsts
f0fcff2d1a TSCH: declare radio_rx_mode only when HW timestamps are enabled to avoid warnings 2016-06-10 15:04:07 +03:00
Atis Elsts
5b728691ad TSCH: add missing include 2016-06-10 15:04:07 +03:00
Atis Elsts
fbb66f9cd5 TSCH: allow to configure channel scanning duration during the join phase 2016-06-10 15:04:07 +03:00
Atis Elsts
b57009e564 TSCH: fix signedness in adaptive timesync 2016-06-10 15:04:07 +03:00
Atis Elsts
03d511c2be tsch-slot-operation.c: use ABS() instead of abs() for consistency with the rest of Contiki 2016-06-10 15:04:06 +03:00
Atis Elsts
f6967c1f58 read RADIO_PARAM_LAST_RSSI and RADIO_PARAM_LAST_PACKET_TIMESTAMP only after the last packet has been read in TSCH: reading the packet might update these values 2016-06-10 15:04:06 +03:00
Atis Elsts
45510f57fa TSCH: add option to not to turn off radio during active TSCH timeslots 2016-06-10 15:04:06 +03:00
Atis Elsts
723c7e1117 print TSCH clock drift ppm whenever updated 2016-06-10 15:04:06 +03:00
Atis Elsts
b3afd65b1d fix a few comments in TSCH 2016-06-10 15:04:06 +03:00
Atis Elsts
0cb222e6e1 add 2-channel TSCH hopping sequence 2016-06-10 15:04:06 +03:00
Tommy Sparber
27cceda1e8
rpl-ext-header: Use 8-octet unit for HBHO length
According to RFC 2460 the length field of the Hop-by-Hop options header
should use a 8-octet unit (multiple of 8 byte).

In a normal configuration the RPL_HOP_BY_HOP_LEN define is 8, so the
current implementation works, but if RPL_HOP_BY_HOP_LEN is a multiple
of 8 the length is not calculated correctly.
2016-06-08 17:37:59 +02:00
Simon Duquennoy
535ff25da2 RPL non-storing defensive link update: make sure the topology is loop-free at all times 2016-06-08 14:14:03 +02:00