Commit Graph

2983 Commits

Author SHA1 Message Date
Simon Duquennoy
15dc86aeb1 TSCH: reduce keep-alive traffic as we get more accurate drift estimates 2016-06-23 22:39:44 +02:00
Simon Duquennoy
beb532e7e8 TSCH: use sequence number only for unicast data frames 2016-06-23 22:36:00 +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
Simon Duquennoy
ab706a6f33 TSCH: map RPL trickle interval to TSCH EB period 2016-06-23 18:48:01 +02:00
Simon Duquennoy
ee60355c9c TSCH: implement off() 2016-06-23 18:38:12 +02:00
Simon Duquennoy
b1dc8205f0 TSCH: minor logging enhancement 2016-06-23 18:37:42 +02:00
Simon Duquennoy
5a1a8e84d8 TSCH: start scheduling keep-alives only after tsch_is_associated is set 2016-06-23 18:36:04 +02:00
Simon Duquennoy
1acb69e280 TSCH: keep track of Rx channel as packetbuf attribute 2016-06-23 18:35:16 +02:00
Simon Duquennoy
f1922c13b6 TSCH: use standard-compliant mac-squence module rather than custom duplicate detection 2016-06-23 18:21:05 +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
Nicolas Tsiftes
a8989f9f1c Merge pull request #1724 from nvt/coffee-simplify
Coffee: minor enhancements
2016-06-15 18:56:10 +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
Nicolas Tsiftes
a06110e5ed Renamed the internal dummy_space variable, since it contains useful information. 2016-06-14 21:08:01 +02:00
Nicolas Tsiftes
5010309005 Make the I/O semantics functionality in Coffee unconditional so that the API becomes consistent across platforms.
Change certain CPP conditionals into C conditionals, which should be possible for the compiler to optimize at runtime. This makes the source code easier to read.
2016-06-14 21:08:00 +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
Tiago Koji Castro Shibata
c2a0f739f7 Compilation targeting c64
Adds some casts required by cc65 compiler and small fixes
2016-06-12 21:16:01 -03:00
Pablo Corbalán
910f828975 Remove unneeded state refresh and set reachable timer upon adding a nbr 2016-06-12 18:40:13 +01:00
Pablo Corbalán
373e5653e6 uIPv6: Make sure dest address is not multicast before refreshing the state of a neighbor 2016-06-12 18:40:12 +01:00
Pablo Corbalán
0fb47d0a2d Refresh nbr reachable state after received IPv6 unicast message 2016-06-12 18:40:04 +01:00
Sumankumar Panchal
373fda46f7 TSCH port for Zolertia ReMote/Zoul. 2016-06-12 16:37:01 +05:30
jcook
d52cf767e5 Remove useless `else' block as def_route will be removed before if existed. 2016-06-12 06:45:04 +02:00
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
Simon Duquennoy
d5e74b9579 Code style 2016-06-08 14:05:37 +02:00
Simon Duquennoy
0f5e3413fa Simplify dao_input 2016-06-08 14:04:47 +02:00
Simon Duquennoy
6c4d5312ae uip-icmp6.c: call rpl_insert_header only when UIP_CONF_IPV6_RPL is set 2016-06-08 14:03:28 +02:00
Simon Duquennoy
4208973017 Fix DAO-ACK support for non-storing 2016-06-08 14:03:27 +02:00
Simon Duquennoy
6cdec70798 rpl_verify_header: do not select DAG in storing mode after updating neighbor rank, as this may result in a No-Path DAO being sent, which will drop the current packet. 2016-06-08 14:03:26 +02:00
Simon Duquennoy
343c274359 RPL: re-enable RPL_DIO_REFRESH_DAO_ROUTES by default as it is needed with DAO-ACK disabled. Now increments the DTSN only at the root 2016-06-08 14:03:25 +02:00
Simon Duquennoy
ded71a7400 RPL: add neighbor to cache on incoming DIO also at the root 2016-06-08 14:03:23 +02:00
Simon Duquennoy
1a7133bbf2 Simplified configuration of RPL non-storing mode 2016-06-08 14:03:21 +02:00
Simon Duquennoy
f26ea34c61 Run RPL regression tests in non-storing mode 2016-06-08 14:03:19 +02:00
Yasuyuki Tanaka
eef233ceab Clear the uIP buffer before calling dao_ack_output() 2016-06-08 14:02:52 +02:00
Yasuyuki Tanaka
bb69e35c76 Fix typos causing compilation errors in rpl_srh_get_next_hop() 2016-06-08 14:02:51 +02:00
Yasuyuki Tanaka
f53bae6225 Remove a debug message showing "SRH Next Hop" in insert_srh_header() 2016-06-08 14:02:50 +02:00
Yasuyuki Tanaka
2abf27a6f7 Remove an unnecessary NULL-check in insert_srh_header() 2016-06-08 14:02:49 +02:00
Yasuyuki Tanaka
97a362acdc Use a stricter check in rpl_srh_get_next_hop() 2016-06-08 14:02:48 +02:00
Yasuyuki Tanaka
0be30628ce Enable the root to send back a DAO-ACK 2016-06-08 14:02:47 +02:00
Simon Duquennoy
b3e31e1456 Implement RPL non-storing mode 2016-06-08 14:02:45 +02:00
Simon Duquennoy
d14b76d869 RPL: logging fixes 2016-06-08 14:02:44 +02:00
Khaled Qorany
37360aae51 Implementation of the ESMRF engine 2016-06-07 23:08:40 +02:00
Billy Kozak
72b4d38ab3 Put some uip6 temporaries on the stack
Some "temporary" variables were declared with static storage duration
for no good reason.

Replaced them with local stack variables wherever they were used.

There are still some variables that are unecesarily given static
duration which I have left alone.
2016-06-07 09:59:46 -06:00
Billy Kozak
ac6a1c5255 Fixed wrong first cycle_start
The first time that powercycle() runs, cycle_start is incremented
by CHECK_TIME twice which causes the second cycle to be late.

This commit fixes this.
2016-06-07 08:13:18 -06:00
Simon Duquennoy
8cdff8c21b Merge pull request #1696 from momote-io/fixes
fix ipv6 http socket host handling as in RFC2732
2016-06-05 12:46:59 +02:00
Marco Casaroli
47df9c4e6e code style 2016-06-04 16:47:52 -03:00
Simon Duquennoy
223a69cef5 Merge pull request #1535 from bkozak-scanimetrics/fix_strcasecmp_warning
Fix warning about missing strcasecmp definition
2016-06-04 15:05:06 +02:00
Antonio Lignan
9dc1e57c85 Merge pull request #1683 from msolters/patch-1
Fix IPv6 HTTP URL parsing
2016-06-04 07:59:50 +02:00
Simon Duquennoy
797bead5e5 RPL: if a neighbor is unreachable, remove routes via this neighbor 2016-06-03 18:43:36 +02:00
Simon Duquennoy
b73b6082fc link_stats_input_callback: do not use EWMA when initializing RSSI 2016-06-03 18:43:35 +02:00
Simon Duquennoy
8ae00caea8 RPL: more robust configuration of mrhof in the squared ETX case 2016-06-03 18:43:35 +02:00
Simon Duquennoy
e6cd029090 rpl_remove_routes_by_nexthop: expire routes rather than remove then directly. The routes will be removed later and No-path DAOs sent accordingly in rpl_purge_routes 2016-06-03 18:43:28 +02:00
Marco Casaroli
19e08de0e2 use memchr instead of strchr for checking if host is ipv6 2016-06-03 12:12:24 -03:00
Marco Casaroli
e657ca40e9 return error if host does not fit in host string 2016-06-03 12:11:51 -03:00
Marco Casaroli
cade3c7699 Merge branch 'master' of https://github.com/contiki-os/contiki into fixes 2016-06-03 11:49:04 -03:00
Simon Duquennoy
d008bf8a76 Fix rpl_select_parent in the non-probing case 2016-06-03 16:44:14 +02:00
Simon Duquennoy
43b01b3236 RPL: if the best parent is not fresh, use the best fresh instead and utilize urgent probing to update link estimates 2016-06-03 16:44:14 +02:00
Simon Duquennoy
b42b12d7c8 Adsjut dao_ack_callback to new OFs 2016-06-03 16:44:13 +02:00
Simon Duquennoy
bddf8207ed Link-stats: use new nbr table API 2016-06-03 16:44:12 +02:00
Simon Duquennoy
f18a4fdd7b Adjust RPL neighbor policy to new OF interface 2016-06-03 16:44:12 +02:00
Simon Duquennoy
75967438e3 RPL ext header: check if sender is closer only after updating its rank 2016-06-03 16:44:11 +02:00
Simon Duquennoy
36dd282eb7 RPL: reset Trickle timer on incoming DIOs with INFINITE_RANK only if the DIO is from the preferred parent 2016-06-03 16:44:10 +02:00
Simon Duquennoy
65b854fcee RPL: trigger a local repair only the first time no parent is found in a DODAG 2016-06-03 16:44:09 +02:00
Simon Duquennoy
b176991a06 Compile out code related to RPL probing when probing is disabled 2016-06-03 16:44:09 +02:00
Simon Duquennoy
6349019384 Fine tuning of link stats and RPL OFs 2016-06-03 16:44:08 +02:00
Simon Duquennoy
0d7e1e8be4 Fix PRINTF statement in rpl-timers.c 2016-06-03 16:44:07 +02:00
Simon Duquennoy
64679642f2 Saving ROM and RAM 2016-06-03 16:44:06 +02:00
Simon Duquennoy
7855ba20ba RPL: Check acceptable_rank even after first obtaining a parent. Added comment on a slight departure from RFC6550. 2016-06-03 16:44:05 +02:00
Simon Duquennoy
d53a3a3df2 RPL: logging fixes 2016-06-03 16:43:58 +02:00
Simon Duquennoy
cd76b4b1c2 RPL: support for run-time selection of the OF. RPL_OF_OCP defines the OF to be advertised at the root, while RPL_SUPPORTED_OFS defines the set of supported OFs 2016-06-03 15:46:08 +02:00
Simon Duquennoy
c5cf8608e9 RPL probing: now using link-stats to first prioritize probing of non-fresh parents, and to support urgent probing (fast probing of a potential new preferred parent 2016-06-03 15:46:07 +02:00
Simon Duquennoy
426e10c3ed Rehauling of RPL OFs, both MRHOF and OF0. Fixed compliance with RFC6551, 6552, 6719. Now using the link-stats module. 2016-06-03 15:46:06 +02:00
Simon Duquennoy
2fa239ee8d Added link-stats module to keep strack of link statistics and their freshness 2016-06-03 15:46:04 +02:00
Simon Duquennoy
4e9b027141 rpl.h: updated constants and comments to match the standard 2016-06-03 15:46:03 +02:00
Simon Duquennoy
b3ea124958 Merge pull request #1394 from joakimeriksson/nbrtable-nd6-fix
Removed memcpy that cause inconsistency in nbr-table when adding nd6 neighbors.
2016-06-03 14:44:54 +02:00
Simon Duquennoy
43c7b43adf Merge pull request #1679 from tidyjiang8/bug_chameleon_raw_hdrsize
fix the bug about chameleon raw hdrsize
2016-06-03 14:40:12 +02:00
Simon Duquennoy
84b51461e9 Merge pull request #1597 from rgrr/remove_static_from_process_c
Removed some unnecessary statics in do_event() and process_post().
2016-06-03 14:16:14 +02:00
Simon Duquennoy
26bf33c762 Merge pull request #1550 from thomas-ha/tsch-cc2538-port
Port of TSCH for CC2538
2016-06-02 21:33:55 +02:00
Antonio Lignan
34af72c047 Merge pull request #1609 from simonduq/pr/net-debug
Added net-debug.[ch] to provide debug functions even in the non-IP case
2016-06-01 23:52:34 +02:00
Antonio Lignan
9e1c378919 Merge pull request #1469 from wbober/nrf52dk-pr
Add support for nRF52 DK platform
2016-06-01 23:11:39 +02:00
Antonio Lignan
f065971efc Merge pull request #1619 from simonduq/pr/tsch-rtimer16-fix
Fix bug in TSCH for platforms with 16-bit rtimer
2016-06-01 23:03:50 +02:00
thomas-ha
8a7b1f07d1 add cc2538dk 2016-06-01 17:58:57 +02:00
thomas-ha
e537a2ea92 Add CC2538DK 2016-06-01 16:01:58 +02:00
Marco Casaroli
03ca795bd6 fix ipv6 http socket host handling as in RFC2732 2016-06-01 09:26:12 -03:00
Benoît Thébaudeau
d70c75914a cfs-coffee: Fix build warning
Fix this build warning, which is generated if micro logs are enabled:

In file included from ../../core/cfs/cfs-coffee.c:59:0:
../../core/cfs/cfs-coffee.c: In function 'read_log_page':
../../cpu/cc2538/./cfs-coffee-arch.h:145:24: warning: passing argument 1 of 'cfs_coffee_arch_read' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   cfs_coffee_arch_read((buf), (size), (offset))
                        ^
../../core/cfs/cfs-coffee.c:757:3: note: in expansion of macro 'COFFEE_READ'
   COFFEE_READ(lp->buf, lp->size, base);
   ^
../../cpu/cc2538/./cfs-coffee-arch.h:176:6: note: expected 'void *' but argument is of type 'const char *'
 void cfs_coffee_arch_read(void *buf, unsigned int size, cfs_offset_t offset);
      ^

COFFEE_READ() needs to write to lp->buf, so the target type of this
pointer cannot be qualified as "const".

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2016-05-30 23:05:11 +02:00
Mark Solters
65632cb086 Fix IPv6 HTTP URL parsing
Currently, http-socket uses a `parse_url` method which only works correctly with IPv4 hosts (e.g. `http://192.168.1.1:3000`).  When using an IPv6 host (e.g. `http://[abcd::1]:3000`), the port number is not parsed due to a pointer increment error, which leads to the algorithm assuming a default port of 80 even when the user code has specified otherwise.  This fix provides full URL parsing for IPv6 hosts, and does not break IPv4 functionality.
2016-05-26 22:42:53 -04:00
Antonio Lignan
8d6a290382 Merge pull request #1682 from simonduq/pr/fix-tsch-log
Fix tsch-log bug
2016-05-25 18:02:36 +02:00
Simon Duquennoy
2299a763d0 Fix tsch-log bug 2016-05-25 17:38:10 +02:00
Kitty(chun hua) Jiang
f5919a2a45 fix the bug about chalemeon raw hdrsize 2016-05-25 10:28:47 +08:00
Joakim Nohlgård
19550f9f7f core/cfs: Disallow seeking past the end of a file if it is not writable 2016-05-03 07:10:35 +02:00
Nicolas Tsiftes
0e9234dce6 Merge pull request #1636 from frank-freihube-rmcan-com/fixTrailingZeros
Trailing zeros in file leading to unexpected file length get set in destination buffer
2016-05-02 13:52:13 +02:00
Frank Freihube
59727ede70 fixup! make changes configurable through io_semantics() 2016-04-29 08:12:55 +02:00
Frank Freihube
5bd7fc86c3 make changes configurable through io_semantics() 2016-04-29 08:07:27 +02:00
Simon Duquennoy
1cd06a291e Merge pull request #1639 from yatch/pr-tsch-log-link-null
Handle the case when log->link is NULL in tsch_log_process_pending
2016-04-28 18:12:34 +02:00
Nicolas Tsiftes
70abb211e3 Merge pull request #1635 from simonduq/pr/dao-no-k-flag-in-nopath
RPL: do not add K flag to no-path DAO as we discard the ACK anyway
2016-04-28 14:45:01 +02:00
Nicolas Tsiftes
4d67a48d3d Merge pull request #1625 from kkrentz/llsec-fix
Fix for "LLSEC802154_CONF_ENABLED undefined"
2016-04-28 12:01:15 +02:00
Antonio Lignan
4251539237 Merge pull request #1579 from bkozak-scanimetrics/fix_csma_backoff
Use collisions for csma backoff and retry
2016-04-28 10:24:55 +02:00
Antonio Lignan
a4dfb0b660 Merge pull request #1618 from simonduq/pr/tcpip-code-style
Fixes indent in tcpip.c and uip6.c
2016-04-28 00:12:23 +02:00
Antonio Lignan
6afd56e0ee Merge pull request #1634 from simonduq/pr/daoack-fix
DAO ACK fix
2016-04-27 23:47:07 +02:00
Yasuyuki Tanaka
763c63f428 Handle the case when log->link is NULL in tsch_log_process_pending 2016-04-27 20:35:05 +02:00
Simon Duquennoy
24449e9cba Merge pull request #1637 from simonduq/pr/rpl-default-lifetime
RPL default lifetime
2016-04-27 18:18:47 +02:00
Simon Duquennoy
ace607a32d Fix RPL default lifetime 2016-04-27 17:04:29 +02:00
Simon Duquennoy
4392507019 RPL: do not add K flag to no-path DAO as we discard the ACK anyway 2016-04-27 14:20:39 +02:00
Simon Duquennoy
bb5e5d5c6b TSCH: use RTIMER_CLOCK_DIFF to compute estimated drift, fixing a bug that would occur on 16-bit rtimer platforms 2016-04-27 14:13:33 +02:00
Simon Duquennoy
0379398d7c RPL DAO ACK: increment DAO seqno before storing it to my_dao_seqno 2016-04-27 14:05:16 +02:00
Simon Duquennoy
f47c0f579d RPL DAO ACK: improve logging 2016-04-27 14:05:08 +02:00
Frank Freihube
7ba5b0d150 Trailing zeros in file leading to unexpected file length get set in destination buffer 2016-04-27 10:39:05 +02:00
Simon Duquennoy
abf08a7167 Added net-debug.[ch] to provide debug functions even in the non-IP case 2016-04-26 16:08:10 +02:00
Simon Duquennoy
90b886aa71 Csma: comply with IEEE 802.15.4 2016-04-25 08:52:48 -06:00
Billy Kozak
ca0f32f45b Use collisions for csma backoff and retry
The collision count is now used in the calculation fot the CSMA
backoff and transmission will fail after a certain number of
collisisons.
2016-04-25 08:00:56 -06:00
kkrentz
39921f1231 rdc.h: Read LLSEC802154_ENABLED instead of LLSEC802154_CONF_ENABLED 2016-04-25 03:10:42 -07:00
Simon Duquennoy
e1ea4955c7 TSCH: remove 'not for us' log 2016-04-25 11:51:43 +02:00
Simon Duquennoy
f0f13fa58b Indent uip6.c 2016-04-25 11:50:14 +02:00
Simon Duquennoy
0296e6aba0 Indent tcpip.c 2016-04-25 11:50:14 +02:00
Simon Duquennoy
f8c4d1155f Disable RPL DAO ACK by default 2016-04-23 07:54:32 +02:00
Joakim Eriksson
186138f6af added error check for extraction of aligned llao 2016-04-22 15:03:03 +02:00
Nicolas Tsiftes
86733e8702 Clarified and cleaned up Coffee's documentation and the debug statements. Formatted some source code for easier reading. 2016-04-20 14:34:17 +02:00
Nicolas Tsiftes
7f700c9564 Remove the protected memory code associated with sensornet checkpointing because this functionality has been removed from Contiki. 2016-04-20 12:47:37 +02:00
Simon Duquennoy
d828557563 Merge pull request #1425 from kkrentz/llsec-fixes
random LLSEC fixes
2016-04-19 17:29:00 +02:00
Joakim Eriksson
e9e31e9fd1 replaced add/remove ds6-nbr with an nbr-module controlled update of lladdress to avoid loss of other state information 2016-04-19 13:41:13 +02:00
Joakim Eriksson
2e852f758b added a null check on the lladdr before the memcmp. 2016-04-19 13:36:43 +02:00
Joakim Eriksson
223f002676 fixed the case when the lladdr did not change but the LLAO is there and it is not an override. 2016-04-19 13:36:43 +02:00
Joakim Eriksson
6f271bf853 fixed so that the comparison of old lladdr and llao lladdr is compared instead of two llaos - and improved code style on surrounding code 2016-04-19 13:36:43 +02:00
Joakim Eriksson
b2f72fc996 replaces with aligned lladdress and also fixed the second memcpy to avoid risk of inconsistency when nodes change MAC address 2016-04-19 13:36:43 +02:00
Joakim Eriksson
510fc9e51e removed memcpy that cause inconsistency in nbr-table when adding nd6 neighbor with NS/NA. 2016-04-19 13:36:43 +02:00
kkrentz
6fb6fd5bb9 packetbuf: No more splitting of header and data 2016-04-15 03:12:40 -07:00
kkrentz
0af4a18c09 packetbuf: Use MIN macro 2016-04-13 09:20:29 -07:00
kkrentz
3d79292e44 packetbuf: Simplified packetbuf_attr_clear 2016-04-13 09:20:29 -07:00
kkrentz
1014018c2d packetbuf: Removed debugging stuff 2016-04-13 09:20:29 -07:00
kkrentz
11c03eef79 packetbuf: Removed function prototypes 2016-04-13 09:20:29 -07:00
kkrentz
a1b91d8b59 packetbuf: Removed commented code 2016-04-13 09:20:29 -07:00
Konrad Krentz
d478c0f7f1 packetbuf: Deleted functions that are never called 2016-04-13 09:20:29 -07:00
kkrentz
7353829c72 llsec: Fix for Issue #1537 2016-04-13 09:16:09 -07:00
kkrentz
4a88e9e537 llsec: Removed TSCH_SECURITY_CONF_LEVEL and TSCH_SECURITY_LEVEL 2016-04-13 09:16:08 -07:00
kkrentz
431530bf6b llsec: Added READMEs 2016-04-13 09:16:07 -07:00
Hardy
b3f2bba3ec Removed some unnecessary statics in do_event() and process_post().
This allows the optimizer to put the corresponding variables into registers.
See also discussion about other static variables:
https://sourceforge.net/p/contiki/mailman/message/35010460/
2016-04-13 18:12:47 +02:00
kkrentz
403d332555 llsec: Make decorated framer configurable 2016-04-13 07:54:46 -07:00
kkrentz
10d8b05bc6 llsec: Permit dynamic security levels 2016-04-13 07:54:46 -07:00
kkrentz
0379af3624 llsec: Do not define surrogates in packetbuf.h, as otherwise configuration errors go unnoticed 2016-04-13 07:54:46 -07:00
Antonio Lignan
c9baf0cb57 Merge pull request #1192 from bkozak-scanimetrics/tcpip_put_temporaries_on_stack
changed tcpip static temporaries to stack vars
2016-04-13 09:30:33 +02:00
Antonio Lignan
8f064511d3 Merge pull request #1213 from joakimeriksson/dao_ack_handling
End-to-End DAO and DAO ACK handling for Contiki RPL.
2016-04-11 18:53:43 +02:00
Iván Briano
8211db64ae Allow creating connections on unspecified local port
If the given local port is 0, we get no replies.
2016-04-07 10:39:48 -03:00
thomas-ha
2a69999214 space instead of tab 2016-04-05 17:12:48 +02:00
thomas-ha
871c725144 spaces instead of tabs 2016-03-31 11:24:57 +02:00
Carlo Vallati
855703e936 Fixed a bug into tsch-schedule - tsch_schedule_add_link that causes deadlock if a new link cannot be created 2016-03-31 10:35:19 +02:00
Oliver Schmidt
111a976f1e Explicitly mark constant as 'unsigned' to avoid unnecessary promotion to 'long'.
Long constants trigger the performance warning "Constant is long" with cc65.
2016-03-28 14:39:16 +02:00
Joakim Eriksson
12a75c3e43 fixed codestyle, improved APIs, and cleaned up comments 2016-03-26 20:12:52 +01:00
Joakim Eriksson
12ac02650b fixed a bug in nbr policy and DAO retransmission handling and added new wismote simulation 2016-03-26 09:45:39 +01:00
Joakim Eriksson
ffb10094ab added init value of locked variable 2016-03-26 09:45:39 +01:00
Simon Duquennoy
e1f9369a09 RPL DAO-ACK: move initialization of current ougoing DAO from da_output to dao_output_target_seq 2016-03-26 09:45:38 +01:00
Simon Duquennoy
19b04098d5 Improved RPL debug logs 2016-03-26 09:45:38 +01:00
Simon Duquennoy
6fa3479aa8 RPL: improved debug messages for No-Path DAOs
Conflicts:
	core/net/rpl/rpl-icmp6.c
2016-03-26 09:45:38 +01:00
Joakim Eriksson
09c624dcd3 fixed clearing of state flag and avoid starting retransmission timer 2016-03-26 09:45:38 +01:00
Joakim Eriksson
8afe3fb9b7 fixed so that DAO NACK now is either for the path or for RPL root - if from root then do not try to switch parent since that will not help 2016-03-26 09:45:38 +01:00
Joakim Eriksson
13b8c04c6f fixed so that nbr policy for RPL Root do not save room for parents 2016-03-26 09:45:38 +01:00
Joakim Eriksson
1fcef0f90d added function for checking downward route and added configuration for DAO NACK repair - default off 2016-03-26 09:45:38 +01:00
Joakim Eriksson
4246a8fbe6 updated more nbr_add calls 2016-03-26 09:45:37 +01:00
Joakim Eriksson
444015df67 refactored the rpl-nbr-policy to be called from nbr-table module 2016-03-26 09:45:37 +01:00
Joakim Eriksson
be81d1d2c6 added uip_clear_buf to avoid the risk of sending received packets 2016-03-26 09:45:37 +01:00
Joakim Eriksson
01930d4a64 changed default configuration of RPL route lifetime 2016-03-26 09:45:37 +01:00
Joakim Eriksson
cd98b8b40e added periodic debug printout of number of used neighbors and routes 2016-03-26 09:45:36 +01:00
Joakim Eriksson
fa1b70b723 added configuration of DAO route refresh for broadcast DIOs 2016-03-26 09:45:36 +01:00
Joakim Eriksson
3fd8c4db2d added nbr policy for Contiki RPL that avoids thrashing the nbr table with new entries all the time 2016-03-26 09:45:36 +01:00
Joakim Eriksson
d181bd9e6f added config for enabling/disabling removal of oldest route and added support function for checking if lladdress is used as nexthop 2016-03-26 09:28:09 +01:00
Joakim Eriksson
513393db54 added return value so that caller know if a nbr was removed or not 2016-03-26 09:28:09 +01:00
Joakim Eriksson
946be77248 Added support for end-to-end DAO ACK for Contiki RPL.
This is a fix for Contiki RPL so that it fully supports DAO ACK in
an end-to-end fashion. When DAO is sent it will be forwarded upwards
as before. DAO ACK will be forwarded downwards until it reach the node
that initiated the DAO ACK and unlike before it is not a single-hop
DAO ACK but it is fully reaching the RPL ROOT before any DAO ACK is
sent back. DAO ACK also now fully support different status messages
(success / fail).
2016-03-26 09:28:08 +01:00
thomas-ha
2d9b53667f not leaving promiscuous mode anymore if TSCH_HW_FRAME_FILTERING disabled 2016-03-16 12:24:49 +01:00
Simon Duquennoy
3057cb3363 TSCH: reset now also flushes all queues and resets backoff exponents 2016-03-15 16:24:04 +01:00
Simon Duquennoy
4b4ea36e9b TSCH: substract RADIO_DELAY_BEFORE_DETECT from ACK timestamp (more accurate timeout for the following busy wait) 2016-03-15 16:23:57 +01:00
Simon Duquennoy
0fd097f821 TSCH: bound max packet size to the system's packetbuf size 2016-03-15 16:23:57 +01:00
Simon Duquennoy
0aa36eaa0a TSCH: explicitly turn radio off after ACK tx 2016-03-15 16:23:57 +01:00
Simon Duquennoy
5e5904d10e Merge pull request #1387 from simonduq/pr/ndfree-rpl-fix
NDP disabled: also disable uip_ds6_neighbor_periodic
2016-03-14 16:42:45 +01:00
Simon Duquennoy
bbefd4ab4e Merge pull request #1334 from tadodotcom/1333-resolv-fat-camp
trims resolv.c by removing unrequired static declarations
2016-03-14 16:41:33 +01:00
Simon Duquennoy
cd981b23d5 Merge pull request #1297 from simonduq/pr/default-prefix
Change the default IPv6 prefix from aaaa::/64 to fd00::/64
2016-03-13 20:39:16 +01:00
Nicolas Tsiftes
c476194004 Merge pull request #1548 from simonduq/pr/traceroute
uip6, icmp6 and ext header handling fixes: traceroute now working!
2016-03-11 14:14:26 +01:00
Simon Duquennoy
3fa25eac8c uip6: fix bug that caused the payload of ICMPv6 messages not to match that of the original packet 2016-03-10 12:22:23 +01:00
Simon Duquennoy
06e984a02e uip6: enable sending of "port unreachable" ICMPv6 message 2016-03-10 12:22:15 +01:00
Simon Duquennoy
5886bdea31 uip_icmp6_error_output: remove and add RPL ext header instead of inverting it, so that the payload of the returned ICMP error matches the original packet 2016-03-10 12:22:05 +01:00
Simon Duquennoy
9930756d7c uip6: restore proto after calling remove_ext_hdr 2016-03-10 12:21:55 +01:00