Commit graph

2744 commits

Author SHA1 Message Date
Simon Duquennoy b0f936263e Added IEEE 802.15.4e TSCH (TimeSlotted Channel Hopping) MAC layer 2015-12-04 15:21:52 +01:00
Simon Duquennoy 1e0adbbf24 New radio interface parameters: Rx poll mode, last packet timestamp, last packet rssi, last packet lqi. Implementation of these parameters for cc2420, with, in addition, runtime configuration of CCA before Tx, auto-ack and frame filtering 2015-12-04 15:21:51 +01:00
Simon Duquennoy ecba49c282 Add support for IEEE 802.15.4e Information Elements (IEs). All IEs used by TSCH are currently included. 2015-12-04 15:21:50 +01:00
Simon Duquennoy 5cf9871d5b Added support for IEEE 802.15.4 frame version 2 2015-12-04 15:21:50 +01:00
Simon Duquennoy f86494c6aa Added missing include (needed for type uip_ipaddr_t) 2015-12-04 15:21:49 +01:00
Simon Duquennoy dfd61b6cc9 uip-ds6-route: make nbr_routes global 2015-12-04 15:21:48 +01:00
Simon Duquennoy 77d8322da8 uip-ds6-route: added callback for next hop addition and removal 2015-12-04 15:21:47 +01:00
Simon Duquennoy 08bcfd6972 RPL: added callback for parent switches 2015-12-04 15:21:46 +01:00
Simon Duquennoy b6d599b712 RPL: added callback for DIO interval update 2015-12-04 15:21:45 +01:00
Simon Duquennoy 2112dff217 Added ringbufindex module 2015-12-04 15:21:44 +01:00
Simon Duquennoy 8780bd2ce0 Rime Chameleon fix for 32-bit platforms: use BITOPT_HDR_SIZE rather than sizeof(struct bitopt_hdr) 2015-12-04 10:18:24 +01:00
Atis Elsts b5d17bb620 ContikiMAC: use RTIMER_GUARD_TIME #define to avoid accidentally scheduling a rtimer in the past on platforms with fast rtimer ticks 2015-12-03 17:37:26 +01:00
Nicolas Tsiftes 35fb0614de Merge pull request #1406 from simonduq/pr/fix-rpl-multi-dag
RPL multiple DAG bugfix
2015-12-02 11:19:37 +01:00
Simon Duquennoy 94c26b90d0 Merge pull request #1091 from simonduq/rpl-loop-repair
Enhanced RPL loop repair
2015-12-01 15:36:53 +01:00
Simon Duquennoy 27fd590b51 Merge pull request #1228 from bkozak-scanimetrics/contikimac_replace_function_pointer_cast
Replaced function pointer cast in contikimac
2015-12-01 15:35:28 +01:00
Nicolas Tsiftes 064a431bb8 Merge pull request #1381 from simonduq/pr/rpl-dao-debug
Improved RPL debugging
2015-12-01 09:41:33 +01:00
Simon Duquennoy ebc8d9fb1c Merge pull request #1344 from tsparber/fix-doxygen
doxygen: Fixed all warnings
2015-11-30 22:07:15 +01:00
Simon Duquennoy ecc16645ad RPL: do not return from rpl_process_dio after adding a DAG 2015-11-30 19:21:18 +01:00
Amit Geron 1b8c889e41 Add route_discovery_explicit_open()
For route discovery connections, 2 logical channels are used:
One channel for netflood messages, and one for unicast.
When opening a route discovery connection using
route_discovery_open(), only the netflood channel number is
specified, and the unicast channel number is hard-coded to be the
next channel (+1).
This commit adds an alternative function for opening
route-discovery connections, allowing the user to specify both
channels independently, to gain improved control and readability.
2015-11-30 11:13:32 +02:00
Simon Duquennoy c679046d7a RPL: improved debug messages for No-Path DAOs 2015-11-26 11:36:05 +01:00
Simon Duquennoy 298ff6db76 uip-ds6-route: fix debug annotation of removed routes 2015-11-26 11:36:03 +01:00
Pablo Corbalán 588e170eb1 Improved log output in IPv6 modules 2015-11-25 15:39:27 +00:00
Antonio Lignan d31ba8dfdc Replaced tabs leftover in previous commit 2015-11-24 10:21:23 +01:00
Antonio Lignan e2cf8f9868 Made ContikiMAC more configurable (on uknoblic behalf) 2015-11-23 14:03:51 +01:00
George Oikonomou 41ea0308a3 Merge pull request #1390 from tsparber/fix-doxygen-whitespace
Cleanup some trailing spaces and convert tabs to spaces
2015-11-22 11:53:01 +00:00
Simon Duquennoy 8369ee3ce5 Merge pull request #1194 from atiselsts/rime_chameleon_bit_endian
Fix Rime attribute serialization in chameleon-bitopts for big endian systems
2015-11-21 00:19:04 +01:00
Simon Duquennoy 92840e7adc Simplify uip-ds6-nbr module further when NDP is disabled. Avoids known issue https://github.com/contiki-os/contiki/issues/1380 of neighbors in non-REACHABLE state. 2015-11-20 22:40:19 +01:00
Simon Duquennoy 33f8db0dd3 RPL: clearer naming and documentation of DAO delay constants 2015-11-18 14:06:18 +01:00
Tommy Sparber 938a425949 Cleanup trailing spaces and convert tabs to spaces
This commit removes trailing spaces and converts
tabs to spaces in all files affected by fix-doxygen PR.
2015-11-18 11:09:43 +11:00
Tommy Sparber 938d17576b doxygen: Fix many warnings
This commit fixes nearly all of the reported doxygen warnings.

I tried to not clutter the log with removed trailing spaces.
Removed whitespace and converted tab/spaces for all files affected by this commit
are in a separate branch.
2015-11-18 11:07:58 +11:00
Nicolas Tsiftes e642dfc671 Merge pull request #1311 from arurke/dis-config
Add configuration of DIS start delay and interval in RPL conf.
2015-11-17 17:48:18 +01:00
Simon Duquennoy 79c436ac03 rpl_verify_header: sanity-check 'sender' before updating rank 2015-11-16 11:15:36 +01:00
Simon Duquennoy 586f4a4ae3 sicslowpan.c: warning-free compilation even with fragmentation disabled 2015-11-11 11:46:18 +01:00
Simon Duquennoy fbd78a7e3b Merge pull request #1293 from simonduq/pr/fix-warnings
Fix a number of compiler warnings and enable -Werror in Travis
2015-11-10 08:49:11 +01:00
Tommy Sparber 0e0bf33d31 uIP Stats: Count sent ICMP6 packets
The sent ICMP6 packets (for example from RPL) are currently
not counted towards the sum of sent ip and icmp packets.

Is there any reason behind this or is it just a bug?
Looking at the code I found no side effects of adding these two lines.

Debug output:
```
uip_stat.ip .recv 10 .sent 23 .forwared 0 .drop 0
uip_stat.icmp .recv 10 .sent 11 .drop 0
uip_stat.udp .recv 0 .sent 12 .drop 0
```
(Sum of ip.sent matches icmp.sent and udp.sent)
2015-11-03 15:10:22 +11:00
Andreas Urke 857d69a338 Remove stray stars in comments 2015-11-02 13:23:40 +01:00
Andreas Urke 8159297bfd Add configuration of DIS interval and DIS start delay to rpl-conf.h
Make a define for configuration of DIS start delay and move it + existing DIS interval conf into RPL-conf.h
2015-11-02 13:23:33 +01:00
Oliver Schmidt 1639b712bb Removed CC_FASTCALL.
CC_FASTCALL was introduced many years ago for the cc65 tool chain. It was never used for another tool chain. With a798b1d648 the cc65 tool chain doesn't need CC_FASTCALL anymore.
2015-11-01 18:10:17 +01:00
Valentin Sawadski fbc5b5300d trims resolv.c by removing unrequired static declarations
Closes https://github.com/contiki-os/contiki/issues/1333
2015-10-28 14:58:52 +01:00
Simon Duquennoy b979beb075 Merge pull request #1167 from bkozak-scanimetrics/contikimac_fix_qsend_list_packetbuf_pending
Fix Mishandling of PENDING/Queued Packets at ContikiMAC and CSMA
2015-10-23 10:52:17 +02:00
Simon Duquennoy 1e1241f075 Merge pull request #1156 from amitgeron/stunicast-timer-fix
Stunicast timer fix
2015-10-23 10:51:40 +02:00
Adam Dunkels 5e08b15b0a Merge pull request #1313 from tadodotcom/tmp-remove-uip-is-addr-link-local
Removes duplicate of uip_is_addr_linklocal
2015-10-21 08:16:27 +02:00
Simon Duquennoy 2daa3d7377 Merge pull request #1269 from tadodotcom/tmp-uip-fallback-iface
More flexibility for the fallback interface
2015-10-20 11:33:14 +02:00
Valentin Sawadski b0c7dabf4c Removes duplicate of uip_is_addr_linklocal
A simple search and replace of `uip_is_addr_link_local` to ensure the more
commonly used `uip_is_addr_linklocal` is used consistently.
2015-10-20 11:18:46 +02:00
Oliver Schmidt a29502ed0d Changed 'data' casting for 'ctk_signal_keypress'.
In these cases data was set as `process_post_synch(window->owner, ctk_signal_keypress, (process_data_t)(size_t)c);` so it seems reasonable to cast "back" to `size_t`. Additionally the comparison can be limited to `char`. See i.e. calcc for reference:
```
if(ev == ctk_signal_keypress) {
  if((char)(size_t)data >= '0' &&
     (char)(size_t)data <= '9') {
```
2015-10-20 10:11:51 +02:00
Simon Duquennoy 48ae0d2ba0 anti-replay.c: fix undefined behavior on big-endian platforms 2015-10-20 10:11:44 +02:00
Adam Dunkels 01996eb62a Fix compiler warnings 2015-10-20 10:11:32 +02:00
Adam Dunkels 2d203cc713 Fix compiler warnings 2015-10-20 10:11:31 +02:00
Adam Dunkels c262eafe97 Fix compiler warnings 2015-10-20 10:11:30 +02:00
Simon Duquennoy 5dd6261fef Nullrdc: added missing include for cooja nodes 2015-10-20 10:11:15 +02:00
Simon Duquennoy d6f63e1746 uip6.c: declare uip_add32 symbol if UIP_ARCH_ADD32 is set 2015-10-20 09:37:11 +02:00
Simon Duquennoy 9c15d1c42f Merge pull request #1063 from simonduq/configure-na
Default NDP configuration
2015-10-18 20:26:55 +02:00
Simon Duquennoy c1797e0ffe Merge pull request #912 from cetic/pr-dag-lifetime
Add DODAG lifetime, update of parent rank when switching dag and multi dodag non-regression test
2015-10-18 20:26:37 +02:00
kkrentz 9500be8916 llsec: Declared aead static 2015-10-14 08:22:44 -07:00
Konrad Krentz 1a12ef3334 llsec: Unsecuring within parse 2015-10-14 08:22:44 -07:00
Konrad Krentz 0a6b1cb646 llsec: Added AEAD mode to CCM* 2015-10-14 08:22:44 -07:00
Konrad Krentz c656a4d1c5 llsec: Fixed style issues in CCM* 2015-10-14 08:22:44 -07:00
Konrad Krentz b522c042ec llsec: Replaced bootstrap function with a simple init function 2015-10-14 08:21:40 -07:00
Konrad Krentz 2059b6559e llsec: Let llsec_drivers define their own framer 2015-10-14 08:21:40 -07:00
Oliver Schmidt 6b29e4b30d Merge pull request #1303 from oliverschmidt/master
Initialize acknowledgment no. on establishment of outgoing TCP connection.
2015-10-10 19:55:28 +02:00
Oliver Schmidt 7d38c48a8b Initialize acknowledgment number on establishment of outgoing TCP connection.
Ported change 2432a8ee7d (set expected reception sequence no to zero - to get initial connection to avoid having ack-number other than zero) from uIPv6 to uIPv4.
2015-10-10 17:41:56 +02:00
Valentin Sawadski 44b3cd4e09 Fixes a possible unsafe memcpy in uip_udp_packet_send
If the buffers overlap, memcpy must not be used as it might have arbitrary
results. memmove() on the other hand is safe to use.
2015-10-09 08:30:49 +02:00
Simon Duquennoy 7ce817ab4c Better documentation of the UIP_CONF_ND6_SEND_NA flag. 2015-10-06 16:40:53 +02:00
Florian von Zabiensky feba89a3f7 fixed memory bug 2015-10-06 11:25:12 +02:00
Laurent Deru 15bc0c6daa Update rank of parent when it has changed DODAG 2015-09-30 15:48:36 +02:00
Laurent Deru 34126173b4 Add DAG lifetime 2015-09-30 15:48:36 +02:00
Laurent Deru c5b563f8e1 Estimated fragments should take into account 802.15.4 header size 2015-09-30 09:02:42 +02:00
Nicolas Tsiftes 0a648df3c3 Merge pull request #1207 from simonduq/fix-nd6-alignement
ND6 alignment bugfix
2015-09-29 22:01:37 +02:00
Nicolas Tsiftes 881cd25484 Merge pull request #1288 from joakimeriksson/rpl-early-ocp-check
RPL: check if objective function is supported before creating dag.
2015-09-29 21:56:55 +02:00
Joakim Eriksson 24a38a3aa8 check if objective function is supported before adding as parent and creating a dag 2015-09-29 21:10:03 +02:00
Simon Duquennoy d65b3e1ab6 Merge pull request #1090 from rajithr/patch-1
Protection against possible buffer overflow
2015-09-28 13:29:45 +02:00
Simon Duquennoy 1a6681a09d Merge pull request #987 from ioannisg/send-ns-in-tcpip_ipv6_output
Send the first NS attempt inside tcpip_ipv6_output()
2015-09-28 13:29:04 +02:00
Simon Duquennoy ee37b4b293 Merge pull request #884 from cmorty/pull/ringbuf-order
Ensure that the data in ringbuff is accessed in the right order
2015-09-28 13:24:44 +02:00
Simon Duquennoy ef176bad33 Merge pull request #716 from hexluthor/isr-safe-pt-sem
Make protothread semaphores interrupt-safe.
2015-09-28 13:20:24 +02:00
Simon Duquennoy 3d7d5d3a45 uip-nd6.c: added function extract_lladdr_aligned for clarity 2015-09-25 19:03:39 +02:00
Nicolas Tsiftes 222a75426a Merge pull request #1256 from tadodotcom/tmp-refactor-tcpip-packet-input
Refactor tcpip.c packet input
2015-09-25 16:18:42 +02:00
Nicolas Tsiftes a536801e24 Merge pull request #657 from atiselsts/networking_patches
Phase RDC memory allocation bugfix
2015-09-24 16:50:00 +02:00
Nicolas Tsiftes 3fcff231ec Merge pull request #1132 from tpetry/master
LRU deletion strategy for rime routes
2015-09-24 14:27:14 +02:00
Simon Duquennoy db60906e99 Merge pull request #1121 from uknoblic/ip64
ip64: Streamlined configuration parameters
2015-09-24 11:24:18 +02:00
Ulf Knoblich c6db6b171a ip64: Streamlined configuration parameters 2015-09-24 09:27:11 +02:00
Valentin Sawadski 5b818d5a39 Fixed formatting of documentation 2015-09-23 09:25:31 +02:00
Valentin Sawadski 056f58ae1e Updates IP64 Fallback Interfaces to return ints 2015-09-23 09:20:31 +02:00
Billy Kozak 8e5f0bc36a Defining gcc specific macros in seperate header 2015-09-22 14:17:10 -06:00
lebrush b3f6019924 More flexibility for the fallback interface.
When there's a failure to send a packet in the fallback interface the
destination is unreachable and therefore the source should be notified.
2015-09-22 12:53:04 +02:00
Moritz 'Morty' Strübe d68cbb2980 Ensure that the data in ringbuff is accessed in the right order 2015-09-21 09:38:45 +02:00
Billy Kozak 467f28286c The CSMA driver no longer throttles queued packets
Fix for #1166

Updated the CSMA driver so it no longer applies a time delay for
sending queued packets which were sent without error.
2015-09-18 09:35:29 -06:00
Billy Kozak 32e668ae2a Fix for #1165
It is possible that packetbuf is modified by the call to
mac_call_sent_callback. If this occurs ContikiMAC will not be able to
recognize that a packet is pending.

This fixes this problem by storing pending status in a local variable before
calling mac_call_sent_callback.
2015-09-18 09:33:10 -06:00
Valentin Sawadski cad1c37fb3 Better prints of ::FFFF: prefixed IPv4-mapped addresses
IPv4-mapped Address [1] are now printed accoriding to the text representation
mixed IPv4 and IPv6 networks as specified in [2]

[1] https://tools.ietf.org/html/rfc6890#page-14
[2] https://tools.ietf.org/html/rfc3513#page-5
2015-09-18 14:57:01 +02:00
Simon Duquennoy 66ec94fd74 Minor improvements to RPL probing 2015-09-17 22:54:38 +02:00
Simon Duquennoy a7ce312ee3 Enhanced RPL loop repair: send unicast DIO to source when detecting a loop from ext header, update rank along the path (when rank error is signaled) 2015-09-17 22:53:12 +02:00
Valentin Sawadski 43770a934d Refactor tcpip.c packet input
The UIP_CONF_FORWARD is now handled in a better way that the general structure
of packet_input can be clearer seen.
2015-09-15 09:31:43 +02:00
Nicolas Tsiftes 70b3585f76 Merge pull request #1249 from simonduq/fix-rpl-icmp-warnings
Fix compiler warnings in rpl-icmp6.c
2015-09-10 14:44:04 +02:00
Simon Duquennoy 5329c42034 Remove unused variables 2015-09-08 23:38:43 +02:00
Simon Duquennoy 63ddba93a9 Merge pull request #1169 from feshie/pr-warnings-fix
Fix multiple warnings (TCPIP, coap-observe, msp430, z1/tmp102, ContikiMAC)
2015-09-08 09:05:44 +02:00
Arthur Fabre e8cbf2e5fb Fix warning in TCPIP
When disabling TCP support, the following warning is triggered:
../..//core/net/ip/tcpip.c:159:1: warning: ‘start_periodic_tcp_timer’
defined but not used [-Wunused-function]
An added ifdef guard now only defines this function when TCP support is
enabled.
2015-09-07 17:52:22 +01:00
Atis Elsts eac1973073 Introduce ENERGEST_SWITCH macro. It allows to switch between energest modes without running into the risk of losing a tick in the process 2015-09-04 11:49:02 +02:00
Adam Dunkels 92c1a68b94 Merge pull request #1215 from joakimeriksson/rpl-child-locking
Move locking of neighbors / children from RPL to uip-ds6-route module
2015-09-02 19:42:45 +02:00
Billy Kozak 7b27ad64ca Replaced function pointer cast in contikimac
Replaced a cast of the funciton pointer to powercycle with a
wrapper calling powercycle which has the correct signature.

The previous implementation was an instance of undefined behaviour
according to the C standard.
2015-09-01 10:16:43 -06:00
Nicolas Tsiftes b8cccb6d3c Merge pull request #1183 from simonduq/galois_mul2
galois_mul2 conditional-free implementation
2015-08-31 14:41:17 +02:00
rajithr 2a2acf62ed Fix for out of bounds access
Fix for out of bounds access by limiting the printing to the size limit of the buffer
2015-08-31 16:10:00 +05:30
Valentin Sawadski 2cd74d043d CTIMER API extension to explictly state the process a ctimer belongs to 2015-08-31 10:31:36 +02:00
Simon Duquennoy ddf970d3db Merge pull request #695 from sdefauw/contiki
IPv6 prefix bug
2015-08-29 20:27:50 +02:00
Joakim Eriksson 9e16d93278 removed pointer to next parent since it is not used anymore 2015-08-28 19:15:23 +02:00
Antonio Lignan 37470bbc1b Merge pull request #1055 from sumanpanchal/msp430x-elfloader
Added MSP430x ELFLOADER support to load image with large memory model.
2015-08-27 21:19:27 +02:00
Joakim Eriksson 4d5c749cf7 removed locking of rpl-parent since it was never unlocked - moved to routing module 2015-08-27 18:45:06 +02:00
Joakim Eriksson 5dee80a253 added locking of nexthop for routes to avoid the risk of nexthop removal 2015-08-27 18:45:06 +02:00
Joakim Eriksson 7c2bff0462 added debug print for nbr-table-module 2015-08-27 18:45:06 +02:00
Fredrik Österlind c3f61e2c79 Merge pull request #563 from cmorty/etimer_reset_set
Add function etimer_reset_set.
2015-08-27 13:08:37 +02:00
Adam Dunkels 2b549f3789 Bugfix: need to explictly drop RPL packets by setting uip_len = 0, otherwise those packets are forwarded, with the wrong link layer address as a sender, causing the mesh to create false routes 2015-08-27 10:28:54 +02:00
Adam Dunkels 9cd84563cb Send a no-path DAO when becoming feather mode, so that the network can drop routes to us, which are no longer needed 2015-08-27 10:27:56 +02:00
Adam Dunkels bfb29d2f11 Merge pull request #1116 from cetic/pr-uip-clear-buffer
Add uip_clear_buf() macro and replace all instances of uip_len = 0
2015-08-27 10:27:08 +02:00
Moritz 'Morty' Strübe 9b77aac542 Add function etimer_reset_set.
This new function is similar to reset, but allows to also set a new
timeout. Thus long-term accuracy with changing timeouts is now possible.
2015-08-25 17:03:44 +02:00
Oliver Schmidt 12fd559244 Fixed DHCP client.
RFC2131 states on page 36 regarding DHCPREQUEST: " 'xid' from server DHCPOFFER message "

As the DHCPOFFER message uses the 'xid' from the DHCPDISCOVER message this means that the DHCP client is supposed to re-use the 'xid' from its DHCPDISCOVER for the DHCPREQUEST.
2015-08-25 16:24:37 +02:00
Simon Duquennoy 04106a0d53 ND6: make sure the second parameter of uip_ds6_nbr_add is word-aligned, which is required as the parameter is directly accessed as uip_lladdr_t* (not as a byte array) 2015-08-20 17:06:03 +02:00
Atis Elsts b75f673801 RDC phase optimization: correct the behavior in case of memory allocation failure
phase_wait did not check whether queuebuf_new_from_packetbuf() returns NULL. This potentially causes send_packet to behave incorrectly; the proper packet would not be sent out (because queuebuf_to_packetbuf(NULL) is a no-op). Instead, whatever has been left in the packet buffer by its previous user will be sent out.
2015-08-14 16:37:00 +02:00
Atis Elsts 765ce0c22f Fix Rime attribute serialization in chameleon-bitopts.c for big endian systems 2015-08-14 16:16:46 +02:00
Billy Kozak 9cd439d8c0 changed tcpip static temporaries to stack vars
A number of local variables in tcpip.c were declared with static
storage for no good reason (they do not ever preserve state between
function calls).

This patch removes static declaration from these variables.
2015-08-12 09:51:26 -06:00
Nicolas Tsiftes a410f0cd23 Merge pull request #1179 from pablocorbalan/rpl-nbr-state
Changed RPL IPv6 NBR Callback Print Statement
2015-08-06 09:54:20 +02:00
Pablo Corbalán aa04f8afbf Changed RPL IPv6 NBR Callback print statement 2015-08-04 19:54:32 +01:00
Simon Duquennoy dc4de9d001 Merge pull request #1161 from g-oikonomou/contrib/contikimac-sw-ack
Implement TX of S/W ACKs with ContikiMAC
2015-08-04 13:15:03 +02:00
Simon Duquennoy bfba83ed16 galois_mul2 conditional-free implementation 2015-08-03 15:13:00 +02:00
George Oikonomou cf4e191593 Merge pull request #1172 from tim-ist/tm_fix
[multicast] Do not forward every incoming TM ICMP
2015-08-03 10:26:39 +01:00
Timofei Istomin b9aa88b504 [multicast] Do not forward every incoming TM ICMP
The Trickle Multicast ICMP packet handler was not resetting uip_len to zero,
so all incoming TM ICMP packets were forwarded overloading the network.
2015-07-17 20:04:15 +02:00
Arthur Fabre 8739113308 Fix warnings in ContikiMAC
../..//core/net/mac/contikimac/contikimac.c:503:11: warning: variable
‘seqno’ set but not used [-Wunused-but-set-variable]
../..//core/net/mac/contikimac/contikimac.c:496:7: warning: variable
‘len’ set but not used [-Wunused-but-set-variable]

Both of these variables are only used if RDC_CONF_HARDWARE_ACK is not
true.
Their definitions and use have been moved into #ifdef guards so they do
not appear if RDC_CONF_HARDWARE_ACK is set.
2015-07-16 13:49:31 +01:00
George Oikonomou 315f6fe535 Implement TX of S/W ACKs with ContikiMAC 2015-07-12 00:07:33 +01:00
George Oikonomou 503a992887 Make ContikiMAC more configurable
Allow the project / platform to provide values for CCA_SLEEP_TIME and LISTEN_TIME_AFTER_PACKET_DETECTED.

This is useful for sub-ghz operation.

This has been shamelessly stolen from the [Mountain Sensing project](https://github.com/feshie/contiki)

@heliosfa @kmartinez
2015-07-11 23:55:44 +01:00
Amit Geron bf3a5de75e Fix stunicast timer restart
Instead of hard coded setting the resend timer to CLOCK_SECOND,
restart it, so that the time between ANY following transmissions will
be as passed to stunicast_send_stubborn.
2015-07-09 12:03:55 +03:00
Amit Geron b1ef3fdf41 Fix indentation 2015-07-09 12:03:55 +03:00
Simon Duquennoy 3315d3069d Merge pull request #1108 from phoenix-frozen/generify-ccm-star
generalised CCM module into lib
2015-07-01 10:44:41 +02:00
Justin King-Lacroix 30704e5afc CCM* module now accepts fixed-size 13-byte nonces
also adjusted variable naming conventions in CCM* module
to use 'nonce' and 'iv' in line with RFC 3610 terminology
2015-06-29 22:51:00 +02:00
Antonio Lignan 8cc0a12a9f Merge pull request #1097 from bthebaudeau/cc2538-examples-fix-warnings
cc2538: examples: Fix build warnings
2015-06-24 11:39:24 +02:00
tpetry b3046f1537 remove rime routes in LRU mode if trying to add a new route to full route table 2015-06-19 16:32:19 +02:00
Laurent Deru c73cd66a92 Change all printf into PRINTA in uip-debug.c; remove compilation warning and move addr check after local variables definition in uip_debug_ipaddr_print 2015-06-18 15:14:46 +02:00
Nicolas Tsiftes d36e8adbdd Merge pull request #1123 from cetic/pr-fix-uip-debug-lladdr-print
Check pointer in uip_debug_lladdr_print
2015-06-18 14:19:37 +02:00
Laurent Deru 60784b40bd Check pointer in uip_debug_lladdr_print 2015-06-18 10:56:45 +02:00
Laurent Deru 49700c6a79 Merge pull request #1118 from phoenix-frozen/aes128-const-key
made AES-128.set_key's argument const
2015-06-16 10:30:35 +02:00
Justin King-Lacroix db15647c2b made AES-128.set_key's argument const 2015-06-15 20:20:07 +01:00
Sumankumar Panchal db4df30366 Added MSP430X ELFLOADER support to load image with large memory model. 2015-06-15 17:53:18 +05:30
Laurent Deru 1784338b2e Add uip_clear_buf() macro and replace all instances of uip_len = 0; with it 2015-06-15 11:10:51 +02:00
Oliver Schmidt 35becbbcb5 Merge remote-tracking branch 'upstream/master'
Conflicts:
	core/net/ip/uip-nameserver.c
2015-06-14 16:33:23 +02:00
Oliver Schmidt a0d9f028d6 Made first uip_nameserver_update() parameter const.
Both apps/dhcp/dhcp.c:dhcpc_configured() and cpu/6502/ipconfig/ipconfig.c:dhcpc_configured() presume the first parameter of uip_nameserver_update() to be const. As there's no reason for it to be not const just make it const.
2015-06-14 16:27:39 +02:00
Oliver Schmidt adc744ef30 Avoid compiler warning because of unused variable. (reverted from commit a9c6d59da3) 2015-06-14 15:24:38 +02:00
Justin King-Lacroix 3ce8f26eea generalised CCM module into lib
introduced convenience functions for LLSEC modules
2015-06-10 18:07:41 +01:00
Benoît Thébaudeau 66acf74612 cc2538: examples: Fix build warnings
Toolchain used:
arm-none-eabi-gcc (GNU Tools for ARM Embedded Processors) 4.9.3 20150303
(release) [ARM/embedded-4_9-branch revision 221220]

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-06-02 01:38:11 +02:00
rajithr 08503a20be Protection against possible buffer overflow 2015-05-27 19:06:19 +05:30
Nicolas Tsiftes 5a26d25647 Merge pull request #918 from cetic/pr-multi-dodag-support
Multi DODAG support
2015-05-26 16:32:10 +02:00
Nicolas Tsiftes be891c0554 Merge pull request #915 from cetic/pr-rpl-default-route-infinite
Allow rpl default route lifetime to be infinite
2015-05-26 16:26:58 +02:00
Laurent Deru 9782a760b1 rpl_process_dio: Update parent rank 2015-05-22 17:21:53 +02:00
Laurent Deru ccd3c58280 rpl_select_parent: Update dag rank according to new parent 2015-05-22 17:21:53 +02:00
Laurent Deru fc8415e1ad Allow rpl default route lifetime to be infinite 2015-05-22 13:00:06 +02:00
rajithr 0d8de9022c Remove redundant assignment 2015-05-20 15:37:32 +05:30
Adam Dunkels 730bda2001 Merge pull request #883 from cmorty/pull/global-macros
Move MAX, MIN and ABS to contiki-macros
2015-05-18 21:33:00 +02:00
Ulf Knoblich a388a1bcd7 CC2538: added support for SSI1 2015-05-18 10:02:55 +02:00
Moritz 'Morty' Strübe 0dab6926b3 Move MAX, MIN and ABS to sys/cc.h 2015-05-18 08:53:17 +02:00
Simon Duquennoy fc178dab87 rpl_print_neighbor_list(): cast clock_time_t to unsigned for portable printout 2015-05-13 09:03:40 +02:00
George Oikonomou 11a5e0a49a Merge pull request #1051 from simonduq/fix-warning
Fixed a number of compiler warnings
2015-05-13 00:52:40 +01:00
Simon Duquennoy 5294cafd14 petsciiconv.c: move variables from global to local 2015-05-12 09:25:22 +02:00
Simon Duquennoy 259c473372 Disable RA and NA by default when RPL is used 2015-05-10 19:56:37 +02:00
Nicolas Tsiftes 05d2d843da Merge pull request #1053 from simonduq/rpl-probing
RPL probing
2015-05-10 17:22:10 +02:00
Nicolas Tsiftes 71427ed4cc Merge pull request #1016 from cetic/pr-cleanup-dodag-when-root
Remove all the DODAG from the instance when the node is set as Root
2015-05-10 17:15:25 +02:00
Nicolas Tsiftes 44af0fa66b Merge pull request #1003 from adamdunkels/pr/http-socket-dns64-tcp-socket
New HTTP socket, DNS64, IP64 Cooja tests
2015-05-10 17:14:31 +02:00
Nicolas Tsiftes f8e13758e3 Merge pull request #1017 from cetic/pr-dont-delete-instance
Do not delete instance when a new DODAG can not be created
2015-05-10 15:09:59 +02:00
Simon Duquennoy 9ced5b7bac RPL: when no probing target is found, probe least recently updated parent 2015-05-10 13:28:00 +02:00
Simon Duquennoy 832a4d3e01 Make probing expiration time configurable 2015-05-10 13:19:56 +02:00
Adam Dunkels e9f180e756 Made the first argument to uip_connect() const, to ensure it isn't altered 2015-05-10 10:51:13 +02:00
Adam Dunkels daef1ea252 Cast the addresses when copying IPv4 and IPv6 addresses using the IPv4 and IPv6 copy macros. 2015-05-10 10:51:13 +02:00
Adam Dunkels c06e6ae74d Explicitly use the IPv6 address copy macro when copying IPv6 addresses 2015-05-10 10:51:12 +02:00
Adam Dunkels b85fdfd2ae Move the ip64-addr code into the core/net/ip directory, to make it available on all platforms without having to explicitly include the core/net/ip64-addr module 2015-05-10 10:51:12 +02:00
Adam Dunkels 4bd725130c Code for starting a RPL DAG root with a delay, to allow any existing RPL networks to be joined first 2015-05-10 10:51:12 +02:00
Adam Dunkels 06daa08ffc Added a function for getting the default RPL instance 2015-05-10 10:51:11 +02:00
Adam Dunkels 33372945a3 HTTP socket code with support for GET and POST 2015-05-10 10:51:11 +02:00
Adam Dunkels ba409cce57 Treat multicast transmissions as recyclable 2015-05-10 10:36:50 +02:00
Adam Dunkels 269188846c Added support for DNS64 translation of DNS queries for IPv6 addresses to IPv4 addresses, and the translation of responses from IPv4 to IPv6 2015-05-10 10:36:50 +02:00
Adam Dunkels 251813a6dd Maintain stats about how many packets have been translated from IPv4 to IPv6 and vice versa 2015-05-10 10:36:50 +02:00
Adam Dunkels 191a57d06c Minor copyright header fix 2015-05-10 10:36:50 +02:00
Adam Dunkels 0f1f12fdc7 Bugfix in tcp-socket: there were a few corner cases when the tcp-socket state would be messed up, which is fixed with this patch 2015-05-10 10:36:50 +02:00
Simon Duquennoy 6a5f238255 RPL probing: make delay function user-configurable 2015-05-10 09:47:04 +02:00
George Oikonomou bd5e35c968 Merge pull request #1052 from simonduq/packetbuf-cleanup
Packetbuf cleanup
2015-05-09 22:30:21 +01:00
Simon Duquennoy 2dd182f4a8 Modified the default RPL probing selection process. Will now probe the least recently updated parent from time to time 2015-05-08 14:32:52 +02:00
Simon Duquennoy 47ba4c0c4b Implement RPL probing 2015-05-08 14:32:00 +02:00
Simon Duquennoy 529376be77 Added rpl_print_neighbor_list function for RPL state monitoring 2015-05-08 14:29:26 +02:00
Simon Duquennoy be47673d40 Fix debug message 2015-05-08 14:28:38 +02:00
Simon Duquennoy 4a93f5148d Fixed a number of compiler warnings 2015-05-08 09:07:20 +02:00
Simon Duquennoy 8344290e08 Added missing sanity check in uip-ds6-route.c 2015-05-07 16:58:23 +02:00
Simon Duquennoy 333e076b24 Disable PACKETBUF_ATTR_PACKET_TYPE in the non-Rime case by default 2015-05-06 16:36:15 +02:00
Simon Duquennoy 290fc829ea Consistently use PACKETBUF_ATTR_MAC_SEQNO for MAC sequence number, both input and output. Disable PACKETBUF_ATTR_PACKET_ID in the non-Rime case. 2015-05-06 16:34:44 +02:00
Simon Duquennoy bb76bb8beb Remove unused flag SICSLOWPAN_CONF_ACK_ALL. Include packetbuf attribute PACKETBUF_ATTR_RELIABLE only when RIME is compiled. 2015-05-06 16:34:26 +02:00
Nicolas Tsiftes f7ca4b41a9 Merge pull request #1001 from adamdunkels/pr/queuebuf-no-ref
Cleanup: remove the obsolete reference packetbuf
2015-05-03 16:35:17 +02:00
Oliver Schmidt a9c6d59da3 Avoid compiler warning because of unused variable. 2015-05-02 00:37:46 +02:00
Nicolas Tsiftes 7d06494331 Merge pull request #917 from cetic/pr-hbh-user-conf
Allow user configuration of RPL hop-by-hop option
2015-04-03 22:19:51 +02:00
Laurent Deru 0efa9f2046 Allow user configuration of RPL hop-by-hop option 2015-04-03 09:52:36 +02:00
Adam Dunkels 7acf747c1a 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
Adam Dunkels c9c6688524 Remove the unused reference queuebufs, as they only make the code more complex than it needs to be 2015-04-01 10:01:57 +02:00
Nicolas Tsiftes 8f50d9709d Merge pull request #999 from adamdunkels/lebrush-rdnss-support-rebased
RDNSS support, again
2015-03-30 17:21:23 +02:00
Nicolas Tsiftes 793ed65cba Merge pull request #1013 from g-oikonomou/contrib/remove-uip-guard
Remove unnecessary #if guards
2015-03-30 16:59:23 +02:00
George Oikonomou aedffb6c87 Merge pull request #767 from ejoerns/pull-req/timer-note
Note that timer_reset() must not be executed before timer expired
2015-03-29 00:46:30 +00:00
George Oikonomou ff118be070 Remove unnecessary #if guards
ipv4/uip.c will not even be include in the list of sources in the first place if we are building with NETSTACK_CONF_WITH_IPV6 (CONTIKI_WITH_IPV6). Thus, there is no longer a need to wrap the entire source code in an #if guard.

Closes #935
2015-03-28 23:50:19 +00:00
Ioannis Glaropoulos 8552fb1ead Send the first NS attempt inside tcpip_ipv6_output() 2015-03-09 19:41:25 +01:00
Nicolas Tsiftes 2734c97234 Merge pull request #914 from cetic/pr-always-send-no-path-dao
Send no-path DAO only when the dag has a preferred parent
2015-03-06 14:33:07 +01:00
Laurent Deru 9d94c4efae Remove all the DODAG from the instance when the node is set as Root 2015-03-04 09:55:11 +01:00