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
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
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
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
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
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
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