Commit Graph

3012 Commits

Author SHA1 Message Date
Yasuyuki Tanaka
fbf9bb9e64 ringbufindex: explain return values by the APIs 2017-03-09 16:47:24 +09:00
Yasuyuki Tanaka
baaa3da23e ringbufindex: fix a typo in a comment 2017-03-09 16:47:24 +09:00
andrewbrannan
0a85ccdc56 prevent the rpl root from dropping packets bound for outside the dodag while in NS mode 2017-03-08 14:34:25 +00:00
Laurent Deru
9b6ba3c009 Make frame fcf creation and parsing standalone functions 2017-03-08 15:25:55 +01:00
Simon Duquennoy
c37e7cfb0e Merge pull request #2108 from yatch/pr/poc-tsch-queue-flush-nbr-queue
TSCH: POC of a bug in tsch_queue_flush_nbr_queue()
2017-03-08 10:18:41 +01:00
Oliver Schmidt
a38cfc889e Merge pull request #2118 from oliverschmidt/master
Made rest of Microsoft-specific chat optional.
2017-02-24 20:53:55 +01:00
Oliver Schmidt
be9711d92e Made rest of Microsoft-specific chat optional.
Made code rest of the code in the SLIP driver optional that takes care of the Microsoft-specific CLIENT / SERVER / CLIENTSERVER chat.
2017-02-23 21:43:51 +01:00
Antonio Lignan
f5f13c968c Merge pull request #2061 from cetic/pr-nat64-small-updates
Various updates for NAT64
2017-02-21 21:52:18 +01:00
Yasuyuki Tanaka
effdc6e212 TSCH: add debug messages to track queued packet addresses 2017-02-10 16:56:14 +01:00
Yasuyuki Tanaka
25ac43dae9 RPL: move a debug message for RPL_LEAF_ONLY to a correct place 2017-02-08 00:02:26 +01:00
Oliver Schmidt
6463c91a4f Removed artifacts of former uip_appdata handling.
Adam Dunkels writes on 2/5/2017 on the Contiki mailing list:
[...] the original idea was that the application could just point the uip_appdata pointer to wherever the data was, but we then changed it so that the data actually had to be copied into the uip_aligned_buf buffer. So, yes, the network device driver should only need to read from this buffer. [...]

This change removes comments on the possibility of uip_appdata pointing somewhere outside the uip_aligned_buf. And it removes code in the SLIP drivers not necessary anymore.

Additionally it makes code in a SLIP driver optional that takes care of the Microsoft-specific CLIENT / SERVER / CLIENTSERVER chat.
2017-02-05 23:20:39 +01:00
Nicolas Tsiftes
5eb2ac15ff Merge pull request #2073 from cetic/pr-fix-send-na
Fix semantic of UIP_ND6_SEND_NA and add UIP_ND6_SEND_NS
2017-01-20 13:18:43 +01:00
Nicolas Tsiftes
0cfda4c026 Merge pull request #2053 from cetic/pr-fix-dag-lifetime
Use RPL_DAG_LIFETIME when computing dag lifetime
2017-01-20 11:08:43 +01:00
Nicolas Tsiftes
2e754c7832 Merge pull request #2063 from cetic/pr-ndp-config
Make all NDP configuration parameters user configurable
2017-01-17 08:22:52 +01:00
Nicolas Tsiftes
f80f673e21 Merge pull request #2062 from cetic/pr-add-defrt_list_head
Adding uip_ds6_defrt_list_head()
2017-01-17 08:21:50 +01:00
Laurent Deru
0fb597f2fa Use RPL_DAG_LIFETIME when computing dag lifetime 2017-01-16 16:56:22 +01:00
Laurent Deru
12c930893c Fix semantic of UIP_ND6_SEND_NA and add UIP_ND6_SEND_NS 2017-01-16 15:48:14 +01:00
Laurent Deru
e5a604552e Allow modification of IP64 prefix 2017-01-16 14:38:35 +01:00
Laurent Deru
10be59cc15 Update nameserver using DHCP info 2017-01-16 14:38:35 +01:00
Laurent Deru
37fe6a2fa6 Use uip-debug in ip64-ipv4-dhcp.c 2017-01-16 14:37:52 +01:00
Laurent Deru
63ac4d2a3d Adding uip_ds6_defrt_head() 2017-01-16 13:54:36 +01:00
Laurent Deru
88d0003b75 Make all NDP configuration parameters user configurable 2017-01-16 13:50:56 +01:00
Antonio Lignan
3d40056f4f Merge pull request #2054 from cetic/pr-check-incoming-rank
Reject parents with invalid rank
2017-01-13 16:08:00 +01:00
Laurent Deru
0da6e128eb Remove servername from DHCP request 2017-01-13 13:35:25 +01:00
Laurent Deru
f9ffa252f6 Reject parents with invalid rank 2017-01-13 12:32:33 +01:00
Laurent Deru
d866e6bd34 Make RPL route lifetime RFC compliant 2017-01-13 10:54:06 +01:00
Yasuyuki Tanaka
1d5fc88ae9 TSCH: fix indentation in tsch-packet.c 2017-01-10 11:45:59 +01:00
Yasuyuki Tanaka
3dc74dc632 TSCH: fix a wrong return value
tsch_security_secure_frame() returns the length of MIC in case of
success. Otherwise, it is supposed to return 0. There was one case where
it returns 1 in an error handling block.
2017-01-10 11:45:59 +01:00
Yasuyuki Tanaka
35a1701236 TSCH: handle error cases returning -1 properly
- tsch_send_eb_process() in tsch-slot-operation.c
- tsch_rx_slot()         in tsch.c
2017-01-10 11:45:59 +01:00
Yasuyuki Tanaka
0b81c0de18 TSCH: make *dest_addr const (tsch_packet_create_eack) 2017-01-10 11:45:59 +01:00
Yasuyuki Tanaka
667dd6a210 TSCH: put tsch_ prefix to definitions in the global scope
struct asn_t         -> struct tsch_asn_t
  struct asn_divisor_t -> tsch_asn_divisor_t
  ASN_ macros          -> TSCH_ASN_ macros
  current_asn          -> tsch_current_asn
2017-01-10 11:45:59 +01:00
Antonio Lignan
7d9134757f Merge pull request #2004 from yatch/pr/tsch-security-update
Trivial Updates on tsch-security.[ch]
2017-01-10 11:23:55 +01:00
Antonio Lignan
82f3ce392e Merge pull request #2028 from joakimeriksson/minimal-net-ND-fix
added support for 6-bytes link-layer address
2017-01-10 09:07:50 +01:00
Antonio Lignan
bfef0b5d6a Merge pull request #2032 from simonduq/pr/tsch-ka-fix
TSCH bugfix: reset keep-alive timeout when switching time source
2017-01-10 08:47:30 +01:00
Nicolas Tsiftes
1537488e74 Merge pull request #2035 from simonduq/pr/csma-fix
CSMA bugfix: do not use field on a struct that may have been deallocated
2017-01-09 08:45:49 +01:00
Simon Duquennoy
0de3563ddb CSMA bugfix: do not use field on a struct that may have been deallocated 2017-01-05 10:47:11 +01:00
Antonio Lignan
53efcec1fa Merge pull request #1994 from yatch/pr/bugfix-framer802154-sender-addr
Bugfix on source address setting in framer_802154.create()
2017-01-04 14:10:57 +01:00
Simon Duquennoy
fe99f1144a TSCH bugfix: reset keep-alive timeout when switching time source 2017-01-04 11:01:46 +01:00
Joakim Eriksson
cbf4a843e2 fixed comment. 2016-12-29 22:49:01 +01:00
Yasuyuki Tanaka
4faf139523 TSCH: change the return type of the APIs (tsch-security.h)
The return type is changed to "int" to "unsigned int" because APIs
provided by tsch-security are supposed to return an integer larger than
or equal to zero. This change clarifies that.
2016-12-15 19:32:22 +01:00
Yasuyuki Tanaka
da853386a6 TSCH: fix indentation in tsch-packet.c 2016-12-15 19:32:04 +01:00
Yasuyuki Tanaka
38ff8e5283 TSCH: add brief API explanations (tsch-security.h) 2016-12-15 19:16:28 +01:00
Yasuyuki Tanaka
5186fa2ef1 TSCH: set PACKETBUF_ADDR_SENDER before NETSTACK_framer.create() 2016-12-15 15:10:15 +01:00
Yasuyuki Tanaka
da29a5f8e3 ContikiMAC: set PACKET_ADDR_SENDER in qsend_list() 2016-12-15 15:10:15 +01:00
Yasuyuki Tanaka
586fb9a7fe framer-802154: bugfix on source address setting 2016-12-15 15:10:15 +01:00
Yasuyuki Tanaka
aa1f408825 packetbuf: add packetbuf_remaininglen()
packetbuf_freelen() returns the length of free space in packetbuf.
2016-12-14 14:19:46 +01:00
Yasuyuki Tanaka
c48cfb6b9d Fix indentation in packetbuf.h 2016-12-14 14:16:55 +01:00
Yasuyuki Tanaka
a3417b82b0 Fix indentation in packetbuf.c 2016-12-14 14:16:55 +01:00
Nicolas Tsiftes
9bb6286bb2 Merge pull request #1982 from nvt/coffee-io-semantics
Always enable the I/O semantics function in Coffee.
2016-12-09 16:09:32 +01:00
Nicolas Tsiftes
1249d9cf8d Merge pull request #1855 from MohamedSeliem/patch-5
DAD: Remove useless "if" that tests if the source address is unspecified
2016-12-08 20:08:58 +01:00
Nicolas Tsiftes
d133ed898f Merge pull request #1914 from yatch/pr/802154-panid-handling
frame802154: comply with IEEE 802.15.4-2015 on PAN ID Field Handling
2016-12-08 18:37:58 +01:00
Yasuyuki Tanaka
5fdd731166 frame802154: fix a typo in a comment 2016-12-05 22:45:07 +01:00
Yasuyuki Tanaka
3872965362 frame802154: comply with IEEE 802.15.4-2015 on PAN ID Field Handling
This patch changes the behaviors of frame802154_has_panid() for frames
of frame version 0b10 so that it complies with the PAN ID Field Handling
specification in IEEE 802.15.4-2015. For the other frame versions, 0b00
and 0b01, no change is made in frame802154_has_panid().

For more information, please refer to:
https://github.com/contiki-os/contiki/pull/1914/
2016-12-05 22:45:07 +01:00
Nicolas Tsiftes
f09e84976a Merge pull request #1950 from yatch/pr/update-for-tsch-cooja-mote
Miscellaneous updates for tsch-cooja-mote
2016-12-05 18:40:28 +01:00
Antonio Lignan
95f69d92a8 Merge pull request #1918 from adamdunkels/pr-websocket-2
Contiki websocket client
2016-12-05 06:46:43 +01:00
George Oikonomou
d6656ccde1 Fix minor typo 2016-12-03 23:26:25 +00:00
Nicolas Tsiftes
238e8b4dcf Merge pull request #1949 from simonduq/pr/non-storing-fix-dtsn
RPL non-storing: more conservative DTSN update
2016-12-01 16:27:38 +01:00
Simon Duquennoy
7bb50da178 Merge pull request #1271 from drugo72/pr-rpl
RPL: fix clock_time_t calculations
2016-12-01 16:22:43 +01:00
Yasuyuki Tanaka
106731cec1 TSCH: update README.md
- add cooja / Cooja mote as supported platform
- correct Rx mode requirements
2016-11-26 11:47:59 +01:00
George Oikonomou
610eefc2ff Merge pull request #1741 from simonduq/pr/tsch-adaptive-control-traffic
TSCH adaptive control traffic
2016-11-25 15:53:32 +00:00
Simon Duquennoy
3e00adacc0 RPL non-storing: more conservative DTSN update, as per RFC 6550, section 9.6. 2016-11-25 16:30:08 +01:00
Nicolas Tsiftes
edf3a27920 Merge pull request #1879 from pernin/master
Change on DIO trickle timer condition for DIO sending
2016-11-25 16:15:08 +01:00
Nicolas Tsiftes
5281908018 Always enable the I/O semantics function in Coffee. 2016-11-25 16:02:44 +01:00
Benoît Thébaudeau
81805129f8 mt: Fix preemption
Preemption was supposed to be supported, but it had no means of safely
updating the state of a thread, so mt_exec() could fail to resume a
preempted thread.

mt_exec() is allowed to be called only from the main Contiki thread, so
the mt threads passed to it may be only ready or exited, not running.
Consequently, there is no need for a distinction between the ready and
running states, so merge them as a started state, which avoids having to
update the state of a thread upon preemption.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2016-11-24 22:30:26 +01:00
Benoît Thébaudeau
927e9b8150 mt: Fix missing call to mtarch_pstop()
If mt_yield() needs it, then mt_exit() too. A thread could indeed be
preempted while calling mt_exit().

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2016-11-24 22:30:26 +01:00
Benoît Thébaudeau
82afa72c13 mt: Remove unused code
Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2016-11-24 22:30:26 +01:00
Luca Pernini
5803971adc Changing DIO timer condition - merge 2016-11-24 10:52:10 +01:00
Simon Duquennoy
86dbd590db Merge pull request #1400 from pablocorbalan/nud-with-acks
Refresh nbr reachable state after received IPv6 unicast message
2016-11-23 12:00:13 +01:00
Simon Duquennoy
ecd1d57eec Merge pull request #1661 from yatch/pr-tsch-cooja-mote
TSCH on Cooja mote
2016-11-23 11:59:29 +01:00
Cristiano De Alti
1bdec853e1 Prevent interger overflow on the AVR
Compiling examples/er-rest-example for the avr-raven gives:

  integer overflow in expression [-Woverflow]

On the AVR int is 16 bit and some calculations may overflow.
This happens for example with multiplications involving
CLOCK_SECOND where all the operands are of type int.
Casting one of the operands to clock_time_t forces
the arithmetic to clock_time_t without increasing the size
of the program (the calculation is performed at compile time).
2016-11-05 22:46:42 +01:00
Adam Dunkels
36afb693b0 Removed left-over debug printout 2016-11-02 21:54:15 +01:00
Adam Dunkels
869df3bc36 Updated copyright statements 2016-11-02 21:54:02 +01:00
Adam Dunkels
937fddbedf Removed blanks 2016-11-02 21:53:43 +01:00
Adam Dunkels
c484ee4998 Added comments 2016-11-02 21:53:31 +01:00
Adam Dunkels
ae4801bba6 Bugfix: make sure the TCP connection is polled immediately after tcp_socket_send() is called so that the TCP segment goes out directly 2016-11-02 15:16:00 +01:00
Adam Dunkels
f11d344d4d Add a tcp_socket_queuelen() function that returns the length of the current TCP output queue 2016-11-02 15:16:00 +01:00
Adam Dunkels
6ab9822fc2 Make debug printouts be PRINTF() statements to avoid including them in non-debug builds 2016-11-02 15:16:00 +01:00
Adam Dunkels
bb071a7fba Contiki websocket HTTP client code 2016-11-02 15:16:00 +01:00
Adam Dunkels
a7cbbe496f Contiki websocket client code 2016-11-02 15:16:00 +01:00
Oliver Schmidt
d864e73579 Added directory functions to the Commodore Platform File System.
They reduce the Telnet server's run size by 1231 bytes.
2016-10-15 18:36:54 +02:00
Garret Kelly
42c4cb94e0 rpl: fix debugging PRINTF in find_removable_dio 2016-09-22 10:54:55 -04:00
George Oikonomou
be1f19ad73 Merge pull request #1851 from kqorany/patch-1
Improve multicast documentation
2016-09-14 06:53:14 +01:00
Mohamed Seliem
f6795b4972 Neighbor Solicitation Processing (ns_input)
In the newest version of contiki, the function uip_nd6_ns_input() is obsolete.
ns_input function is defined static to be restrictively used in uip-nd6.c file, so removing the obsolete function requires moving the function description to the new function
2016-09-13 09:24:46 +02:00
Nicolas Tsiftes
2d49edfc57 Merge pull request #1849 from MohamedSeliem/patch3
Make UIP_CONF_DS6_ROUTE_NBU and DS6_NBR_NBU, DS6_ROUTE_NBU obsolete
2016-09-12 14:25:59 +02:00
Mohamed Seliem
675d9325b9 DAD: Remove useless "if" that tests if the source address is unspecified
No need to do the unspecified address twice.

#if UIP_ND6_DEF_MAXDADNS > 0
    if(uip_is_addr_unspecified(&UIP_IP_BUF->srcipaddr)) {
      /* DAD CASE */
       ..........
#else /* UIP_ND6_DEF_MAXDADNS > 0 */
    if(uip_is_addr_unspecified(&UIP_IP_BUF->srcipaddr)) {
      /* DAD CASE */
      goto discard; 
#endif /* UIP_ND6_DEF_MAXDADNS > 0 */

this logic will bring confusion, especially if you analyze the other ND functions (NUD, address resolution)  .
2016-09-10 10:56:19 +02:00
Nicolas Tsiftes
2c5c7d4f26 Merge pull request #1719 from jcook/master
RPL: Remove useless `else' block as def_route will be removed before if ex…
2016-09-09 16:48:01 +02:00
Yasuyuki Tanaka
0ff474e393 Fix indentation in nullrdc.c 2016-09-06 15:14:10 +02:00
Yasuyuki Tanaka
6869dc7004 Yield inside busywaiting loops under cooja-ip64 (nullrdc.c)
The while loops waiting ACK_WAIT_TIME and AFTER_ACK_DETECTED_WAIT_TIME
cause infinite loop under the cooja-ip64 platform. This is because
RTIMER_NOW(), rtimer_arch_now(), has been changed not to call
cooja_mt_yield() in it since rtimer was reimplemented as a higher
resolution timer.

In order to avoid the infinite loop, cooja_mt_yield() needs to be
called inside the while loops under the platform as well as the cooja
platform.
2016-09-06 15:14:10 +02:00
Yasuyuki Tanaka
0201208664 TSCH: manage busy waiting on Cooja motes 2016-09-06 15:14:10 +02:00
Khaled Qorany
ddae68bce3 Referring to the ESMRF engine that was recently merged 2016-09-06 11:24:17 +02:00
Simon Duquennoy
406e517d52 Merge pull request #1848 from afonsomota/noprobingfix
fix misplaced bracket causing compilation error when probing is disabled
2016-09-06 08:50:08 +02:00
Mohamed Seliem
1d32a00ebd Fix uip-ds.h table configuration comment
this PR to update uip-ds.h comments, this small change is made to ease the track of Tables implementation places

remove definition of UIP_CONF_DS6_ROUTE_NBU

retire 2 old macros DS6_NBR_NBU, DS6_ROUTE_NBU

Update uip-ds6.h

Update contiki-conf.h

Update contiki-conf.h

Update contiki-conf.h

fix doxygen comment

Update uip-ds6.h
2016-09-05 20:59:36 +02:00
Afonso Oliveira
0217776d6e fixed identantion on code below alteration 2016-09-05 16:24:55 +01:00
Nicolas Tsiftes
8e0ecf9b3a Merge pull request #1802 from marcas756/PullReq-SWITCH_BITS_IN_BYTE_STATIC
Make set_bits_in_byte() static (like for get_bits_in_byte)
2016-09-05 16:50:25 +02:00
Nicolas Tsiftes
7cfbbe97af Merge pull request #1740 from simonduq/pr/tsch-minor
TSCH minor enhancements
2016-09-05 16:33:48 +02:00
Afonso Oliveira
4c5b70e628 fix misplaced bracket causing compilation error when probing is deactivated (RPL_WITH_PROBING=0) 2016-09-05 14:49:41 +01:00
Joakim Eriksson
616b65c962 added support for 6-bytes link-layer address 2016-08-27 22:30:32 +02:00
Nicolas Tsiftes
4c7d8d0214 Merge pull request #1739 from simonduq/pr/tsch-seqno
Improved TSCH sequence number handling
2016-08-16 14:49:21 +02:00
Nicolas Tsiftes
9fa777d4f4 Merge pull request #1738 from simonduq/pr/mac-seqno-timeout
mac-seqno: add a lifetime to sequence numbers in history
2016-08-16 14:48:21 +02:00
Nicolas Tsiftes
d43f2e2a34 Merge pull request #1797 from gebart/pr/rpl-func-prototype
core/net/rpl: Fix function declaration isn’t a prototype
2016-08-08 11:38:38 +02:00