Commit Graph

185 Commits

Author SHA1 Message Date
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
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
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
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
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
Simon Duquennoy
add5a8be67 Code style 2016-03-10 11:33:40 +01:00
Simon Duquennoy
dea04c67d7 Change the default IPv6 prefix from aaaa::/64 to fd00::/64 2016-03-07 17:47:44 +01:00
Joakim Nohlgård
2e47bf9cdc core/net/ipv6/sicslowpan.c: fix warning: function declaration isn't a prototype 2016-03-02 07:00:57 +01:00
Nicolas Tsiftes
65caef495a Merge pull request #1354 from tsparber/pr-count-icmp-stats
uIP Stats: Count sent ICMP6 packets
2016-02-26 15:16:35 +01:00
Wojciech Bober
803d170b55 Fixed unsused variable warning when SICSLOWPAN_CONF_FRAG is undefined 2016-02-15 09:37:38 +01:00
Wojciech Bober
1cc659d882 Allow for using a fixed frame header length.
When SICSLOWPAN_FRAMER_HDRLEN is defined its value is used
as a frame header length. This allows for using sicslowpan
without calling a framer. This is usefull if framer is not
used on a given platform or when header length is always
the same.

In addition this commit also fixes an inline define.
2016-02-15 09:37:38 +01:00
Nicolas Tsiftes
4dce5f6765 Merge pull request #1494 from simonduq/pr/uip6-debug
Minor debug output fixes
2016-02-04 13:09:21 +01:00
Simon Duquennoy
521cc7600d Minor debug output fixes 2016-02-03 17:10:24 +01:00
Simon Duquennoy
f0d1b6c5bb Fix PRINTF statement in sicslowpan 2016-02-02 17:18:45 +01:00
Joakim Eriksson
6ef8f47764 Style fixes, LLSEC.overhead and MAC_MAX_PAYLOAD 2016-01-19 19:54:27 +01:00
Joakim Eriksson
02e07607a7 removed old HC1 code since it is not expected to be used and removed NH_COMPRESSOR 2016-01-19 15:29:14 +01:00
Joakim Eriksson
d4dc45e096 updated sicslowpan documentation and platform configurations 2016-01-19 15:27:14 +01:00
Joakim Eriksson
d0448df3b8 added support for multiple reassemblies 2016-01-19 15:17:59 +01:00
George Oikonomou
fa40d2b1fc Remove documentation references to the Sensinode platform
This is part of a set of commits that will obsolete the Sensinode platform
2016-01-10 15:09:31 +00: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
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
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
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
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
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
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
Adam Dunkels
01996eb62a Fix compiler warnings 2015-10-20 10:11:32 +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
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
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
Simon Duquennoy
3d7d5d3a45 uip-nd6.c: added function extract_lladdr_aligned for clarity 2015-09-25 19:03:39 +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
Simon Duquennoy
ddf970d3db Merge pull request #695 from sdefauw/contiki
IPv6 prefix bug
2015-08-29 20:27:50 +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
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
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
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
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
Moritz 'Morty' Strübe
0dab6926b3 Move MAX, MIN and ABS to sys/cc.h 2015-05-18 08:53:17 +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
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
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
George Oikonomou
bd5e35c968 Merge pull request #1052 from simonduq/packetbuf-cleanup
Packetbuf cleanup
2015-05-09 22:30:21 +01: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
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
8f50d9709d Merge pull request #999 from adamdunkels/lebrush-rdnss-support-rebased
RDNSS support, again
2015-03-30 17:21:23 +02:00
Nicolas Tsiftes
6e3119234b Merge pull request #961 from g-oikonomou/mcast-documentation
Tidy-up multicast documentation
2015-02-17 09:05:11 +01:00
George Oikonomou
5efb3f0769 Tidy-up multicast documentation
* Create a doxygen group and add files to it, so that documents appear as modules rather than simply under files
* Document plenty of functions, macros, constants, data types which were previously undocumented
* Re-structure some doxygen comments to improve structure and readability
2015-02-15 23:29:59 +01:00
George Oikonomou
43aeddbd89 Nudge comments left so they won't appear as a code block 2015-02-15 20:20:40 +01:00
George Oikonomou
c8b802dc16 Fix doxygen warnings in the uip6 group 2015-02-15 20:15:03 +01:00
George Oikonomou
b0390e3e70 Tidy up \file & \author blocks under core/net/ipv6
* Make these blocks appear in the respective module pages
* Re-word \file blocks to bring them up to speed with what each file actually does nowadays
2015-02-15 20:15:03 +01:00
George Oikonomou
0b382a933a Fix warnings caused by unescaped special doxygen chars 2015-02-15 20:11:09 +01:00
Nicolas Tsiftes
e67cd7369e Merge pull request #903 from joakimeriksson/rtable-fix
avoid updating routes that already are correct
2015-02-09 21:41:52 +01:00
Joakim Eriksson
3aa8a62e41 avoid updating routes that already are correct 2015-02-06 21:14:20 +01:00
Nicolas Tsiftes
010a338630 Merge pull request #904 from joakimeriksson/move-etx
moved ETX storage variable from RPL to ds6-nbr
2015-02-06 12:25:35 +01:00
Víctor Ariño
ccc0d27da0 Integrates uip-nameserver API
On the same commit the src have been uncrustified and some typo
fixes as well as includes missing.
2015-01-09 09:44:06 +01:00
Víctor Ariño
27afb5a2ae Implements RDNSS standard
Sends DNS information within RA messages (if enabled)
2015-01-09 09:44:06 +01:00
Laurent Deru
f28e9587ed Make RA configuration parameters user configurable 2014-12-19 11:24:42 +01:00
Joakim Eriksson
5be43c6f8d moved ETX storage variable from RPL to ds6-nbr 2014-12-10 09:11:53 +01:00
George Oikonomou
99513f1889 Fill IPv6->Next-Hdr field for outgoing RSTs 2014-12-08 22:00:36 +00:00
Simon Duquennoy
984c8e007b Fix conditional compilation directive in uip-ds6.c 2014-12-03 17:32:42 +01:00
Simon Duquennoy
415506c3f6 Doxygen fixes 2014-12-02 12:39:16 +01:00
Simon Duquennoy
e6d758e6f5 Remove now unneeded UIP_CONF_IPV6 guards in net/ipv6 and net/rpl code 2014-12-01 20:13:09 +01:00
Nicolas Tsiftes
d3d33c5699 Merge pull request #836 from lebrush/nbr-ll-nup
uip-ds6-nbr: consider reachable node if LL-NUD
2014-12-01 18:12:33 +01:00
Nicolas Tsiftes
63563ed8df Merge pull request #652 from cetic/pr-rpl-rank-and-fw-errors
RPL rank and forward errors
2014-12-01 17:41:51 +01:00
Víctor Ariño
0f394b220b uip-ds6-nbr: consider reachable node if LL-NUD
The reachable state might also be considered to keep the reachable
state since we are already not standard complaint. This reduces the
nbr discovery messages if nodes talk to each other periodically.
2014-12-01 17:06:14 +01:00
Joakim Eriksson
8e1c52b0ba Changed sorting order of routing list (optimization). 2014-11-24 09:36:54 +01:00
Laurent Deru
35e876e8c6 Force NUD on default routers 2014-11-17 09:55:22 +01:00
Laurent Deru
29f894c07e Drop forwarding error packet and send back DAO to originating parent 2014-11-14 09:40:05 +01:00
Enrico Joerns
85b494c16b [doc] Give files a common structure by placing license first (partial)
Followed by doxyen file and group tags.
This patch is only a first attempt to make provide a clean structure,
many more files require rework, too.
2014-11-10 23:54:49 +01:00
Nicolas Tsiftes
b37489b0de Merge pull request #766 from cetic/pr-6lowpan-frag-timeout
Fix too short 6LoWPAN reassembly timeout
2014-11-07 22:16:00 +01:00
Nicolas Tsiftes
6fb7dd238e Merge pull request #648 from cetic/pr-csma-fixes
High throughput fixes for csma and sixlowpan
2014-10-21 12:17:03 +02:00
Laurent Deru
68b9412776 Drop packet if there are not enough free buffers to perform fragmentation 2014-08-13 10:11:02 +02:00
Laurent Deru
704e32015b Fix too short 6LoWPAN reassembly timeout 2014-08-06 16:56:37 +02:00
kkrentz
677c078302 sicslowpan: Fixed too aggresive fragmentation 2014-08-05 05:07:06 -07:00
kkrentz
c396a85364 llsec: Added a layer in between NETSTACK_MAC and NETSTACK_NETWORK for implementing link layer security 2014-08-04 01:09:57 -07:00
Laurent Deru
d45782fbcd Insert properly Hop-by-Hop option at first hop 2014-06-27 09:45:51 +02:00
George Oikonomou
32a7572f25 Fix SDCC Compile Error 2014-06-17 22:20:49 +01:00
Sébastien De Fauw
22caf4b2e1 Prefix Information Option never send in RA messages
The problem came from the fact that there two opposite macro (UIP_CONF_ROUTER) that could not activate the code responsible to send the PIO option in NDP.
2014-06-17 11:41:43 +02:00
Sébastien De Fauw
b441901321 IPv6 host adds prefixes successfully but return always NULL
In Neighbor Discovery Protocol, when IPv6 host adds a prefix (coming from PIO) but it is always failing whatever if is successfully add in prefix table. The reason comes from the fact that the function uip_ds6_prefix_add in host version always return NULL. This is opposite of the specification of the router version.
2014-06-17 11:38:07 +02:00
Nicolas Tsiftes
4ce3e4dee8 Merge pull request #701 from tim-ist/routing_fix
Re-create a routing table entry if the next hop is changed.
2014-06-13 14:56:56 +02:00
Timofei Istomin
65ef375bdb Re-create a routing table entry if the next hop is changed.
The next-hop address did not get updated in the routing table
in case an entry for the destination already existed.

This patch resolves the issue by removing the entry and
having it re-created from scratch.

The issue causes a routing error triggering reconstruction of
the DODAG through version increase.

In case of somewhat frequent downward traffic in not (yet) stabilized DODAG
a vicious circle is formed: unstable topology means churn, downward
routing under churn causes reconstruction of DODAG. In this situation
the network does not have chance to stabilize.

We encountered a constant churn caused by this bug
in a network of 50 nodes and a periodic traffic (a packet every 5
seconds) generated at the root.

More info and a PCAP demonstrating the issue can be found here:
https://github.com/contiki-os/contiki/issues/496
2014-06-13 13:31:15 +02:00
Adam Dunkels
eceaf0c59b Merge pull request #631 from nfi/framer-len
Added function to framer that returns the estimated header length
2014-06-11 23:17:47 +02:00