Commit graph

2086 commits

Author SHA1 Message Date
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
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