1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

465 Commits

Author SHA1 Message Date
BytesGalore
9079e30da0 sys/net/fib: added function to request a set of destination addresses 2015-06-02 16:42:47 +02:00
Cenk Gündoğan
bdc12b05cd Merge pull request #2783 from BytesGalore/fib_support_all_zero_addr
net/network_layer/fib: corrected handling of all 0 addresses
2015-06-02 11:50:41 +02:00
BytesGalore
b39afa8649 ip: added a define to enable a FIB compatibility mode replacing get_next_hop() 2015-06-01 17:31:45 +02:00
Martine Lenders
4d89ac6d03 Merge pull request #3085 from authmillenon/ng_net/fix/printf-stacksize
ng_net: use printf-stack size where it is needed
2015-05-29 07:32:37 +02:00
Martine Lenders
3db17eedbf ng_net: use printf-stack size where it is needed 2015-05-28 23:22:44 +02:00
Lotte Steenbrink
104ea3ceb1 Merge pull request #3091 from Lotterleben/fib_helper_fn
Fib helper fn
2015-05-28 18:33:23 +02:00
Hauke Petersen
9943f51080 global: renamed cpu-conf.h into cpu_conf.h 2015-05-28 15:45:05 +02:00
Oleg Hahm
c441e7d9f6 ng_ndp: remove warning 2015-05-27 22:02:12 +02:00
Martine Lenders
ae3d88fcae Merge pull request #2806 from authmillenon/ng_sixlowpan_iphc/feat/initial
ng_sixlowpan: Initial import of IP header compression
2015-05-27 18:07:11 +02:00
Martine Lenders
85bd69314c Merge pull request #3084 from OlegHahm/ndp_fib_fix
ng_ndp: fix call to FIB
2015-05-27 14:22:43 +02:00
Oleg Hahm
15e12dd06b ng_ndp: fix call to FIB 2015-05-27 11:57:54 +02:00
Martine Lenders
9a989264d8 ng_sixlowpan: initial import of IP header compression 2015-05-27 11:54:50 +02:00
Oleg Hahm
64f3db7f3f ng_ipv6: only try to parse ext header if enabled 2015-05-27 11:00:18 +02:00
Martine Lenders
41aad42d8f Merge pull request #3074 from authmillenon/ng_ipv6_ext/fix/exit-early
ng_ipv6_ext: exit early on invalid size
2015-05-27 01:43:21 +02:00
Lotte Steenbrink
d14191467f fib: add FIB_DEVEL_HELPER flag and fib_devel_get_lifetime() 2015-05-26 15:34:31 -07:00
Martine Lenders
475bfe6e5f Merge pull request #2944 from authmillenon/ipv6_netif/opt/auto-init-addr
ipv6_netif: initialize device dependent values
2015-05-26 21:01:55 +02:00
Martine Lenders
e509c101fe ng_ipv6_ext: exit early on invalid size 2015-05-26 20:20:02 +02:00
Martine Lenders
e3bdc53c37 Merge pull request #2898 from authmillenon/ng_ipv6_ext/feat/initial
ng_ipv6_ext: initial import of extension header handling (including RPL SRH)
2015-05-26 20:16:50 +02:00
Martine Lenders
971ee86de6 ipv6_netif: initialize device dependent values 2015-05-26 18:46:49 +02:00
PeterKietzmann
837e57635a ng_sixlowpan_netif: add ENABLE_DEBUG flag 2015-05-26 14:45:57 +02:00
Martine Lenders
4310ab37ba Merge pull request #3048 from authmillenon/ipv6_netif/fix/get-best-src-mc
ipv6_netif: fix ng_ipv6_netif_find_best_src_addr() for multicast
2015-05-25 23:19:20 +02:00
Martine Lenders
350b040d72 ng_netif: adapt ng_netif_get for holey lists 2015-05-25 22:02:44 +02:00
Martine Lenders
e93b8a11ed ipv6_netif: fix ng_ipv6_netif_find_best_src_addr() for multicast
Without this fix ng_ipv6_netif_find_best_src_addr() will return :: for most
multicast addresses
2015-05-22 17:46:01 +02:00
Oleg Hahm
7be7e00ab9 Merge pull request #3042 from gebart/pr/doxygen-@file-remove-filename
everything: Remove filename from @file Doxygen command
2015-05-22 17:10:04 +02:00
Martine Lenders
65fb2cf676 Merge pull request #3036 from BytesGalore/ng_ndp_debug_print_fixes
ng_ndp: repaired debug for the ndp.c
2015-05-22 11:41:26 +02:00
Joakim Gebart
13832d8e62 everything: Remove filename from @file Doxygen command 2015-05-22 07:34:41 +02:00
BytesGalore
ab663ba046 net/network_layer/fib: corrected handling of all 0 addresses 2015-05-21 20:11:30 +02:00
Lucas Jenss
426170b064 Improve naming of thread stacksize/priority constants
As discussed in #2725, this commit renames a number of stacksize constants to
better convey their intended usage. In addition, constants for thread priority
are given a `THREAD_` prefix. Changes are:

* KERNEL_CONF_STACKSIZE_PRINTF renamed to THREAD_EXTRA_STACKSIZE_PRINTF
* KERNEL_CONF_STACKSIZE_DEFAULT renamed to THREAD_STACKSIZE_DEFAULT
* KERNEL_CONF_STACKSIZE_IDLE renamed to THREAD_STACKSIZE_IDLE
* KERNEL_CONF_STACKSIZE_MAIN renamed to THREAD_STACKSIZE_MAIN
* Move thread stacksizes from kernel.h to thread.h, since the prefix changed
* PRIORITY_MIN renamed to THREAD_PRIORITY_MIN
* PRIORITY_IDLE renamed to THREAD_PRIORITY_IDLE
* PRIORITY_MAIN renamed to THREAD_PRIORITY_MAIN
* Move thread priorities from kernel.h to thread.h since the prefix has changed
* MINIMUM_STACK_SIZE renamed to THREAD_STACKSIZE_MINIMUM for consistency
2015-05-21 00:14:23 +02:00
BytesGalore
40336daa1a ng_ndp: repaired debug for the ndp.c 2015-05-20 11:59:57 +02:00
Lotte Steenbrink
74254f5c2a sixlowpan_netif: don't add duplicates
prevent ng_sixlowpan_netif_add() from adding duplicates as described in https://github.com/RIOT-OS/RIOT/issues/2965
2015-05-18 23:55:57 -07:00
Lotte Steenbrink
486f8dd8e9 Merge pull request #3044 from Lotterleben/ipv6_ifs_no_duplicates
ng_ipv6_netif: no more duplicates if empty entries are found before
2015-05-23 02:12:49 +02:00
Lotte Steenbrink
cb0ee3288f netif: don't add duplicates
prevent ng_ipv6_netif_add() and ng_ipv6_netif_add_addr() from adding duplicates as described in https://github.com/RIOT-OS/RIOT/issues/2965
2015-05-18 12:23:24 -07:00
Joakim Gebart
869ce92246 ng_ndp: reduce scope of variables l2src, l2src_len
Fixes cppcheck warnings:

    sys/net/network_layer/ng_ndp/ng_ndp.c:548: style (variableScope): The scope of the variable 'l2src' can be reduced.
    sys/net/network_layer/ng_ndp/ng_ndp.c:549: style (variableScope): The scope of the variable 'l2src_len' can be reduced.
    sys/net/network_layer/ng_ndp/ng_ndp.c:608: style (variableScope): The scope of the variable 'l2src' can be reduced.
    sys/net/network_layer/ng_ndp/ng_ndp.c:609: style (variableScope): The scope of the variable 'l2src_len' can be reduced.
2015-05-18 06:34:13 +02:00
Joakim Gebart
ca7697d84f sys/net/network_layer/sixlowpan/ip.c reduce scope of bmatch 2015-05-18 06:31:28 +02:00
Martine Lenders
abc0280543 ng_rpl: add source routing header parsing for ng_net 2015-05-17 21:51:52 +02:00
Martine Lenders
5ffdbc5652 ng_ipv6_ext: add routing header parsing 2015-05-17 21:51:50 +02:00
Martine Lenders
dcfa2681d6 ng_ipv6_ext: initial import of extension header handling 2015-05-17 21:46:56 +02:00
Martine Lenders
4f1d7adfc6 Merge pull request #2910 from authmillenon/ng_ndp/feat/addr-res
ng_ndp: initial import of address resolution
2015-05-17 10:45:12 +02:00
Martine Lenders
ee11a2ae56 ng_ndp: initial import of the address resolution 2015-05-17 09:15:03 +02:00
Martine Lenders
c35a869a90 Merge pull request #3002 from authmillenon/ng_icmpv6_echo/fix/set-id
ng_icmpv6_echo: fix setting of ID field
2015-05-17 02:47:17 +02:00
Martine Lenders
ad001abbe7 Merge pull request #2909 from authmillenon/ipv6_netif/enh/opt
ipv6_netif: prepare for NDP
2015-05-16 21:50:49 +02:00
Oleg Hahm
aec03a11ee Merge pull request #2995 from jfischer-phytec-iot/fix@ip-rm-addr-of-op
sys/net/network_layer/sixlowpan/ip.c: remove unnecessary address-of-operator
2015-05-16 19:50:23 +02:00
Oleg Hahm
5ad4b1f915 Merge pull request #2996 from jfischer-phytec-iot/fix@icmp-prefix-l-param
sys/.../icmp.c: fix wrong ndp_add_prefix_info parameter
2015-05-16 19:50:07 +02:00
Oleg Hahm
be707befbc Merge pull request #2997 from jfischer-phytec-iot/fix@icmp-prefix-search
sys/.../icmp.c: fix prefix search
2015-05-16 19:42:39 +02:00
Martine Lenders
5f1d6f4f43 Merge pull request #2999 from jfischer-phytec-iot/fix@ip-get-best-src-addr
sys/.../ip.c: fix ipv6_net_if_get_best_src_addr
2015-05-16 19:30:05 +02:00
Martine Lenders
e032cda53d Merge pull request #2998 from authmillenon/ng_icmpv6/fix/preset-csum-field
ng_icmpv6: pre-set checksum field to 0 for sending
2015-05-16 19:22:29 +02:00
Martine Lenders
d8285cd3d2 ng_icmpv6_echo: fix setting of ID field 2015-05-16 18:35:48 +02:00
Martine Lenders
9899153fb4 ipv6_netif: piggy-back fix for DEBUG messages 2015-05-16 15:04:56 +02:00
Martine Lenders
70d7fae538 ipv6_netif: prepare for NDP 2015-05-16 15:03:16 +02:00
Martine Lenders
87cf93668c ng_icmpv6: pre-set checksum field to 0 for sending 2015-05-16 12:57:43 +02:00
Johann Fischer
7087bdcb50 sys/.../ip.c: fix ipv6_net_if_get_best_src_addr
This patch fixes ipv6_net_if_get_best_src_addr,
the function seems not to be finished.
The patch also adds a filter for the prefixes,
it is necessary because the prefixes are stored
in the same list as the addresses.
2015-05-16 12:33:30 +02:00
Johann Fischer
41cc10520d sys/.../icmp.c: fix prefix search
Replace equal operator inside ndp_prefix_info_search by not equal.
Otherwise, the existing prefix can not be found.
2015-05-16 12:25:43 +02:00
Johann Fischer
b20a7b0a27 sys/.../icmp.c: fix wrong ndp_add_prefix_info parameter
Inside the function recv_rtr_adv, ndp_add_prefix_info was called
with the wrong parameter.
2015-05-16 11:35:28 +02:00
Johann Fischer
fd72aaa9ac sys/net/network_layer/sixlowpan/ip.c: remove unnecessary address-of-operator 2015-05-16 11:06:46 +02:00
Cenk Gündoğan
cf86479e31 ng_ipv6/netif: fix debug in _add_addr_to_entry() 2015-05-16 08:31:57 +02:00
Martine Lenders
0df6729c35 ng_ipv6: fix for API change in #2908 2015-05-15 20:18:38 +02:00
Lotte Steenbrink
e4dfd06c6d fib: rename register function in fib.c too 2015-05-14 18:51:56 -07:00
Martine Lenders
51be1104fc Merge pull request #2979 from Lotterleben/ndp_nc_duplicate_fix
ipv6_nc: no more duplicates if empty entries are found before
2015-05-15 13:22:33 +02:00
Lotte Steenbrink
09a67e050d ipv6_nc: no more duplicates if empty entries are found before 2015-05-14 08:27:15 -07:00
Oleg Hahm
9c72f69de1 Merge pull request #2902 from authmillenon/ng_ipv6/enh/6in6
ng_ipv6: add 6in6 encapsulation support
2015-05-14 15:37:22 +02:00
Lotte Steenbrink
6a0a2e8bd6 Merge pull request #2915 from BytesGalore/fib_register_rrp_with_prefix
net/network_layer/fib: added prefix consideration for RRP registration/signaling
2015-05-14 12:01:59 +02:00
Lotte Steenbrink
e32b1cca16 Merge pull request #2975 from authmillenon/ipv6_nc/enh/opt2
ipv6_nc: Make interface optional
2015-05-14 09:21:54 +02:00
Martine Lenders
343bec5593 ipv6_nc: Make interface optional 2015-05-14 04:21:41 +02:00
BytesGalore
85bf1c2ade net/network_layer/fib: added prefix consideration for RRP registration/signaling 2015-05-13 20:08:11 +02:00
Oleg Hahm
05f47b2a81 Merge pull request #2974 from sgso/fix_unspecified_src_addr_in_ng_ipv6
ng_ipv6: set default values for src and dst in ng_ipv6_hdr_build()
2015-05-13 19:02:44 +02:00
Martine Lenders
d1c2f7f72b Merge pull request #2908 from authmillenon/ipv6_nc/enh/opt
ipv6_nc: prepare for NDP
2015-05-13 11:05:39 +02:00
Sebastian Sontberg
c0ec7eb892 ng_ipv6: set default values for src and dst in ng_ipv6_hdr_build()
Later in the handling of IPv6 headers, the source address is only
automatically chosen and filled into the header if the unspecified
address is found in the src field, but it's never set to that value.

The default destination address is set to '::1'.
2015-05-13 00:51:25 +02:00
Martine Lenders
3e3f7bdf3c ipv6_nc: simplify API usage for NDP
* Bonus: simplify DEBUG output.
2015-05-12 20:06:09 +02:00
Martine Lenders
87e5f3acaa Merge pull request #2964 from authmillenon/icmpv6/enh/listed-payload
icmpv6: add ability to add listed payload in ng_icmpv6_build
2015-05-12 20:01:30 +02:00
Martine Lenders
dd1b4ec5a7 ng_ipv6: add 6in6 encapsulation support 2015-05-12 19:19:21 +02:00
Martine Lenders
11e5fb3c9e Merge pull request #2728 from authmillenon/ipv6_netif/enh/auto-link-local
ipv6_netif: auto-add corresponding link-local addresses
2015-05-12 19:08:14 +02:00
Martine Lenders
ed6764f33b icmpv6: add ability to add listed payload in ng_icmpv6_build 2015-05-11 01:27:12 +02:00
Oleg Hahm
4d85caee0f Merge pull request #2953 from OlegHahm/ng_sizeof
net: use sizeof(stack) for thread_create
2015-05-10 12:27:05 +02:00
Oleg Hahm
c3a60fcea1 net: use sizeof(stack) for thread_create 2015-05-09 20:48:53 +02:00
Oleg Hahm
23d3c636e5 Merge pull request #2922 from authmillenon/ng_ipv6/fix/debug-output
ng_ipv6: fix debug output
2015-05-09 19:57:35 +02:00
Oleg Hahm
ca0d510655 Merge pull request #2943 from OlegHahm/fix_multicast_interface
ng_ipv6: set interface for multicast
2015-05-09 18:40:35 +02:00
Oleg Hahm
332eb13184 ng_ipv6: set interface for multicast
If no interface is given for a multicast, but the node has only one, it
must be set.
2015-05-09 16:23:28 +02:00
Martine Lenders
2c1b516c8e sixlowpan_frag: another bugfix for reassembly 2015-05-09 16:18:16 +02:00
Martine Lenders
bc41cfc93f sixlowpan_frag: Fix some debug messages for nano-specs 2015-05-08 18:32:29 +02:00
Martine Lenders
0514e11805 sixlowpan_frag: fix reassembly buffer garbage collection 2015-05-08 18:32:12 +02:00
BytesGalore
a1be18a1d0 net/network_layer/fib: fixed print type for printing routes 2015-05-07 17:13:55 +02:00
Martine Lenders
ab21f5dfc1 ng_ipv6: fix debug output 2015-05-06 11:30:54 +02:00
Sebastian Sontberg
d0ea7c2a0c ng_icmpv6_echo: fix call to undefined function 2015-05-04 14:50:18 +02:00
Oleg Hahm
d1bfa2f2ff Merge pull request #2555 from authmillenon/ng_icmpv6/feat/initial
ng_icmpv6: Initial import
2015-05-01 11:37:42 +02:00
Martine Lenders
86133b8404 ng_icmpv6_echo: initial import 2015-05-01 08:34:11 +02:00
Martine Lenders
591ef1826f ng_icmpv6: Initial import 2015-05-01 08:29:01 +02:00
Hauke Petersen
195a8d88cd Merge pull request #2892 from authmillenon/ng_ipv6/enh/use-netapi-rcv
ng_ipv6: use netapi_receive()
2015-04-30 11:00:52 +02:00
Martine Lenders
4741a01e36 Merge pull request #2721 from authmillenon/ipv6_nc/feat/iterators
ipv6_nc: add iterators
2015-04-30 08:59:44 +02:00
Martine Lenders
af1f7b4336 ng_ipv6: use netapi_receive() 2015-04-29 22:34:55 +02:00
Martine Lenders
a767f66d72 ipv6_nc: add iterators 2015-04-29 21:22:28 +02:00
Oleg Hahm
832c6a949c Merge pull request #2874 from authmillenon/sixlowpan_frag/fix/rbuf-fixes
ng_sixlowpan: fixes
2015-04-29 15:48:49 +02:00
Martine Lenders
450abe6154 ng_sixlowpan: use ng_pktbuf_remove_snip() 2015-04-29 01:06:32 +02:00
Martine Lenders
4f5995a4cf ng_sixlowpan_frag: add missing return 2015-04-29 01:06:17 +02:00
Martine Lenders
7c0d86e360 ng_sixlowpan_frag: fix reassembly buffer 2015-04-29 01:06:17 +02:00
Martine Lenders
32e27c3ff3 ipv6_hdr: add print function 2015-04-28 21:16:47 +02:00
BytesGalore
2a8aa7add5 net/network_layer/fib: added clearing flags for expired entries 2015-04-28 14:30:04 +02:00
Martine Lenders
8a5e0d7d82 Merge pull request #2781 from authmillenon/ng_sixlowpan_frag/feat/initial
ng_sixlowpan: Initial import of datagram fragmentation
2015-04-26 03:20:15 +02:00
Martine Lenders
73d9739258 ng_sixlowpan: Initial import of datagram fragmentation 2015-04-26 02:21:20 +02:00
Oleg Hahm
2d8021ac06 Merge pull request #2857 from authmillenon/ipv6_addr/enh/rename-hdr-check
ipv6_addr: rename ng_ipv6_hdr_is_ipv6_hdr() to something less silly
2015-04-25 17:42:12 +02:00
Martine Lenders
e2f6fb6b0f Merge pull request #2856 from authmillenon/ng_ipv6/enh/1-if-opt
ng_ipv6: optimize multi-interface support
2015-04-24 19:01:29 +02:00
Martine Lenders
1d744650cf Merge pull request #2614 from authmillenon/ng_sixlowpan/feat/initial
ng_sixlowpan: initial import
2015-04-23 16:17:43 +02:00
Martine Lenders
5412e0e68b ng_sixlowpan: initial import 2015-04-23 11:29:53 +02:00
Martine Lenders
07e2dbaf7e ng_sixlowpan_netif: initial import 2015-04-23 11:29:51 +02:00
Martine Lenders
82a1f53ff0 ng_ipv6: optimize multi-interface support 2015-04-23 10:57:51 +02:00
Martine Lenders
3e9db4371f ipv6_addr: rename ng_ipv6_hdr_is_ipv6_hdr() to something less silly 2015-04-23 02:26:48 +02:00
Martine Lenders
99c190d3ae ng_ipv6: fix scope of netif header in multicast 2015-04-23 01:43:51 +02:00
Martine Lenders
a0c6db6591 ng_ipv6: initial import 2015-04-22 22:12:07 +02:00
Martine Lenders
ac25058f26 Merge pull request #2727 from watr-li/unaligned-access-cortex-m0
Fix unaligned access on Samr21/Cortex-M0
2015-04-21 12:18:03 +02:00
Martine Lenders
c660fdfdac Merge pull request #2785 from authmillenon/ng_sixlowpan_ctx/feat/initial
ng_sixlowpan: initial import of a context buffer
2015-04-20 10:22:35 +02:00
Oleg Hahm
09c07e918d Merge pull request #2831 from OlegHahm/transceiver_broadcast
Use transceiver specific broadcast
2015-04-20 10:16:08 +02:00
Oleg Hahm
3dd3bbb461 transceiver: use transceiver specific broadcast 2015-04-19 20:35:11 +02:00
Martine Lenders
3a72e5346b unittests: add tests for ng_sixlowpan_ctx 2015-04-18 15:42:42 +02:00
Martine Lenders
39ed4baa92 ng_sixlowpan: initial import of a context buffer 2015-04-18 15:42:42 +02:00
Martine Lenders
43d5fe1e8e ipv6_addr: add missing mask to prefix initialization 2015-04-18 15:40:02 +02:00
Martine Lenders
1230fc4070 ipv6_addr: do not null remaining bits in prefix initialization 2015-04-14 11:12:28 +02:00
BytesGalore
580ae0a63d Merge pull request #2786 from Lotterleben/fib_typos
FIB: fix documentation typos
2015-04-10 16:41:13 +02:00
BytesGalore
073f117ad6 Merge pull request #2788 from Lotterleben/fib_parenteses_fix
FIB: remove extraneous parentheses
2015-04-10 16:39:29 +02:00
Lotte Steenbrink
0666827d25 FIB: remove extraneous parentheses 2015-04-10 04:33:46 -07:00
Lotte Steenbrink
d2e6e7ba17 FIB: fix some typos 2015-04-10 03:15:20 -07:00
Oleg Hahm
bd828f109e Merge pull request #2350 from gebart/pr/sixlowpan-buffer-name
sixlowpan: rename global buffer->sixlowpan_buffer
2015-04-10 11:38:54 +02:00
Martine Lenders
c94094529d Merge pull request #2731 from authmillenon/ipv6_hdr/feat/initial
ipv6_hdr: Initial import
2015-04-10 07:35:41 +02:00
Martine Lenders
2dd24edcf8 ipv6_netif: auto-add corresponding link-local addresses 2015-04-10 01:29:33 +02:00
Martine Lenders
9c30851b45 ipv6_hdr: Initial import 2015-04-10 00:41:55 +02:00
Martine Lenders
b8fea1a2c7 Merge pull request #2735 from authmillenon/ipv6_netif/feat/hl
ipv6_netif: expand interface
2015-04-08 12:18:26 +02:00
Martine Lenders
25b568e6d5 ipv6_netif: fix prefix for address flags
Since NDP will introduce interface specific flags this naming might get
confusing
2015-04-08 10:43:14 +02:00
Martine Lenders
9372d955b3 Merge pull request #2211 from BytesGalore/add_fib
sys/net/network_layer added a core implementation of a FIB
2015-04-01 11:40:21 +02:00
Oleg Hahm
26710c1085 Merge pull request #2499 from gebart/pr/lowpan-address-decoding-fixes
sixlowpan: Handle 16-bit addresses correctly (both decode and encode)
2015-04-01 11:36:56 +02:00
BytesGalore
30c76adc43 net: added a core implementation of a FIB 2015-04-01 10:24:35 +02:00
Martine Lenders
f1becc6870 Merge pull request #2534 from jfischer-phytec-iot/pr@udp-header-decompression
lowpan.c: add udp header decompression
2015-03-31 19:39:18 +02:00
Martine Lenders
6f7af8f0a2 ipv6_netif: move default MTU from ng_ipv6.h 2015-03-30 01:18:07 +02:00
Martine Lenders
c6eaeb4366 ipv6_netif: add current hop limit to interface 2015-03-30 01:18:06 +02:00
Lucas Jenss
5910cadb58 sys/net: Fix unaligned access on Samr21/Cortex-M0
*((uint16_t)*dest) results in a ldrh (load halfword) instruction
on an address that seems to not be halfword-aligned (?),
causing a hard-fault on the samr21-xpro board (cortex-m0
architecture). The issue seems to be very similar to
the one described in http://stackoverflow.com/a/21661366/124257
2015-03-29 04:58:44 +02:00
Martine Lenders
dce3a6056d ipv6_netif: add prefix list to interface 2015-03-27 20:39:52 +01:00
Joakim Gebart
334aeca246 sixlowpan: Refactor multicast destination compression handling
Stateless only, still no implementation for context-aware multicast encoding.
2015-03-25 08:08:07 +01:00
Joakim Gebart
9769d8adaf sixlowpan: Fix conditions for 16 bit encoding of unicast destination 2015-03-25 08:08:04 +01:00
Joakim Gebart
34457017cf sixlowpan: Fix conditions for encoding to 16 bit source addresses 2015-03-25 08:08:01 +01:00
Joakim Gebart
0b479b28e8 sixlowpan: Update reference to RFC 6282 2015-03-25 08:07:59 +01:00
Joakim Gebart
39c7566e11 sixlowpan: Decode 16-bit addresses correctly
10:  16 bits.  The first 112 bits of the address are elided.
The value of the first 64 bits is the link-local prefix padded with zeros.
The following 64 bits are 0000:00ff:fe00:XXXX, where XXXX are the 16 bits carried in-line.

See https://tools.ietf.org/html/rfc6282
2015-03-25 08:07:55 +01:00
Joakim Gebart
de7d6c7785 sixlowpan: rename global buffer->sixlowpan_buffer 2015-03-25 08:00:45 +01:00
Martine Lenders
7027519f28 ng_ipv6: provide support for ng_netif 2015-03-19 15:13:17 +01:00
Joakim Gebart
b67f8ca06c Merge pull request #2504 from gebart/pr/sixlowpan-dest-addr-bcast
sixlowpan: Broadcast message when neighbour not found in cache.
2015-03-18 10:07:42 +01:00
Martine Lenders
c1708682e8 ng_ipv6_nc: Initial import 2015-03-13 20:42:47 +01:00
Martine Lenders
0cca4867ea ng_ipv6_addr: add string to address conversion function 2015-03-12 21:06:43 +01:00
Martine Lenders
9f2e2121c1 ng_ipv6_addr: add address to string conversion function 2015-03-12 21:06:41 +01:00
Johann Fischer
939f07aab8 sys/net/network_layer/sixlowpan/lowpan.c: add udp header decompression 2015-03-04 18:18:27 +01:00
Joakim Gebart
70cf054b5e sixlowpan: Broadcast message when neighbour not found in cache. 2015-03-04 08:47:10 +01:00
Cenk Gündoğan
d6242360da net_if: proper u/l-bit inversion for short addresses 2015-03-03 20:03:54 +01:00
Joakim Gebart
2aa031e7c7 sixlowpan: Set U/L bit in short address to local. 2015-03-03 19:56:11 +01:00
Johann Fischer
90ab40657a sys/net/network_layer/sixlowpan/lowpan.c: reduce scope of debug variable 2015-03-02 18:42:38 +01:00
Joakim Gebart
726bdf9d7b Merge pull request #2512 from cgundogan/ip_d_addr_unused
ip: use d_addr instead of s_addr when setting the destaddr
2015-03-02 12:23:11 +01:00
Cenk Gündoğan
c3fc24700c rpl: use d_addr instead of s_addr when setting the destaddr 2015-03-02 10:33:45 +01:00
Cenk Gündoğan
3832fc57f5 Merge pull request #2496 from gebart/pr/6lowpan-print-addr
sixlowpan: Properly print source address when ENABLE_DEBUG
2015-03-02 08:21:42 +01:00
Joakim Gebart
578eb38c38 sixlowpan: Properly print source address when ENABLE_DEBUG 2015-02-26 19:22:07 +01:00
Joakim Gebart
db59de6c2e sixlowpan: Refactor DAC/DAM decoding to match SAC/SAM implementation. 2015-02-26 13:53:07 +01:00
Joakim Gebart
9933a431e3 sixlowpan: Refactor SAC/SAM decoding. 2015-02-26 12:19:30 +01:00
Joakim Gebart
ff6f8ff82b sixlowpan: Invert local/universal bit in EUI-64 when forming IPv6 Interface Identifiers. 2015-02-26 09:59:28 +01:00
Martine Lenders
ff36abb2cf ng_ipv6_addr: initial import
The motivation behind this module is to allow for address handling
functions where they, but not the full IPv6 functionality might be
needed. This new version of the IPv6 address data type utilizes the
byteorder.h header to enforce network byte-order on its members.
2015-02-20 17:40:26 +01:00
Johann Fischer
ce423816af sys/net/network_layer/sixlowpan/mac.c: add missing p->processing--; 2015-02-11 11:57:46 +01:00
BytesGalore
c7eea4d0d5 sys/net/sixlowpan: change to release lowpan.c::lowpan_context_mutex when no context is recognized 2015-02-10 12:27:56 +01:00
Cenk Gündoğan
4347039e88 ip: make addr_str static
When setting the `ENABLE_DEBUG` flag to *1* in ip.c,
the **rpl_udp** example won't compile, because the variable `addr_str`
is also defined in **rpl_udp.h** as extern.
Prefixing `addr_str` with `static` in ip.c solves this problem.
2015-02-08 22:07:19 +01:00
Martine Lenders
0eb2d78dda doc: use my real name 2015-02-08 18:52:16 +01:00
Joakim Gebart
f71f8322d9 Merge pull request #2348 from gebart/pr/fno-common-fixes1
Removing (some) common globals, working towards #2346
2015-01-26 09:11:10 +01:00
Joakim Gebart
3f4478e2bb sixlowpan: Reduce scope on some globals in ip.c 2015-01-23 19:46:26 +01:00
Joakim Gebart
cd248f89f0 sixlowpan: reduce scope of globals in mac.c 2015-01-23 14:04:59 +01:00
Cenk Gündoğan
c4b01b87bc rpl: RPL/Trickle with only *one* thread
This PR proposes an approach to reduce the thread count of RPL.

The current RPL/Trickle stack needs about 5 threads to handle tasks
like updating the trickle timer, routing entries and the transmission of
DAOs.

This PR modifies RPL to use only one thread with a looped `msg_recv()` call.
The message is then multiplexed to the right task.
2015-01-14 19:42:13 +01:00
Lotte Steenbrink
a8b3c9f535 exclude `ipv6_iface_set_routing_provider() from #ifdef MODULE_RPL` so that other routing protocols can use it too. 2014-12-17 02:09:09 -08:00
Ludwig Ortmann
68ca082dcc sixlowpan: handle malloc error
The return value of malloc wasn't checked before, resulting in
possibly undefined behavior.
2014-12-14 11:32:30 +01:00
Ludwig Ortmann
5e6d5ab522 sixlowpan: remove redundant assignment 2014-12-14 11:32:30 +01:00
Cenk Gündoğan
2a7ce79947 ip: check for null before ip_get_next_hop is used 2014-12-11 15:43:16 +01:00
Cenk Gündoğan
6ee5e737f9 vtimer: set custom msg_t.type with vtimer_set_msg
Currently, when using vtimer_set_msg the corresponding msg_t is filled
with the MSG_TIMER ("12345") type.
This approach makes it difficult to differentiate between incoming
messages via vtimer_set_msg.

In this PR I introduce another parameter for the vtimer_set_msg
function to specify a custom msg_t type.
2014-12-09 10:07:26 +01:00
Oleg Hahm
000450c894 Merge pull request #2117 from OlegHahm/doxygen_eliminate_warnings
Doxygen eliminate warnings pt. 2
2014-12-04 17:18:42 +01:00
Oleg Hahm
c92effaead debug: removed superfluous additional debug flag 2014-12-03 22:59:14 +01:00
Fabian Nack
eebfd5011a drivers - cc110x: Initial import of new cc110x driver 2014-12-01 17:14:02 +01:00
Oleg Hahm
dc74bd48bf doc: removed superfluous (and broken) @file params 2014-11-30 21:52:54 +01:00
Fabian Brandt
12cd62c689 Introduction of RPL non-storing mode.
This implementation is based on RFC 6550 with addition of RFC 6554 (Source Routing Header for RPL). Both can be found under the following links:
- http://tools.ietf.org/html/rfc6550
- http://tools.ietf.org/html/rfc6554

The PR provides basic functionality for handling and forwarding packages in non-storing mode. In addition the structure of the previous implemented RPL storing mode is now revised, so that readability and modularity is increased. The following features are implemented:
- building function for a SRH and integration in common packets
- source-route build algorithm based on the structure of the DODAG
- an RPL-based interpretation of the SRH and removal at destination
- new structure for RPl-module with extracted beaconing-functionality
- leaf nodes are now supported

There are some missed goals and should be included in future updates:
- building a common routing table structure for different types of routing protocols
- routing tables are statically assigned via source code, future update should have an optional variable at build-time, which sets the size of the routing table depending on the desired functionality of a node in the network (root, node, leaf)
2014-11-27 21:42:40 +01:00
Martine Lenders
c9219b87d6 net_help: prefix csum properly and add documentation 2014-11-18 14:59:37 +01:00
Martine Lenders
ba1527593f ipv6: fix IPv6 address matching algorithm 2014-11-13 00:16:34 +01:00
Oleg Hahm
d1d8972b0c 6lowpan: do not overrun in context_remove 2014-11-10 15:33:49 +01:00
Oleg Hahm
365bfd81af IPv6: allow complete in ipv6_addr_init_prefix
If the specified prefix is a full IPv6 address, no bits remain.
Fixes a possible buffer overrun.
2014-11-10 15:33:48 +01:00
Oleg Hahm
b96b995d76 6lowpan: fix buffer overrun in decompression 2014-11-10 15:33:48 +01:00
Oleg Hahm
e06dce55b1 6lowpan: free fragment buffer in error case 2014-11-10 15:33:48 +01:00
BytesGalore
de3c3cebd0 c++: sys: add extern C to header files 2014-11-08 20:09:55 +01:00
Hinnerk van Bruinehsen
a5aeaab87b lint: fix unreadVariable warnings 2014-10-31 01:24:30 +01:00
Oleg Hahm
313d5b4e56 doc: added and fixed some copyright boilerplates 2014-10-30 19:30:14 +01:00
Fabian Nack
07fff37efe drivers - cc110x_ng: rename ng driver to legacy 2014-10-24 09:55:31 +02:00
5146c66786 core: adapt to msg_try_send 2014-10-22 12:37:33 +02:00
Fabian Brandt
cd80cc166e Fixes when a packet is not for me, but an interface is defined. 2014-10-10 17:17:40 +02:00
Martine Lenders
d63e98786e sixlowpan: fix ipv6_addr_init_prefix 2014-10-09 14:42:35 +02:00
Oleg Hahm
cbb1aff0ce sixlowpan: fixed net_if counter
This is a fixup for 11254577eb which
caused this function to always return a positive number, when any
interfaces was configured.
2014-10-01 18:19:35 +02:00
Hinnerk van Bruinehsen
2faf813793 board/sys: move bounds check before array access 2014-09-14 01:56:11 +02:00
Hinnerk van Bruinehsen
57b998e4a1 cpu/examples/sys/drivers: reduce scope of variables 2014-09-13 19:03:40 +02:00
René Kijewski
0cc699c0ce lint: reduce scope
Fix some lint warnings of kind
```
style (variableScope): The scope of the variable '…' can be reduced
```
2014-09-12 11:50:12 +02:00
Cenk Gündoğan
710c7e6cf6 transport_layer: Splitting UDP and TCP
Currently, the tcp and udp implementations are bound to each other in a
module called *destiny*. Thus, when using only one of them then the
other one gets also compiled into the binary and initialized,
which results in unnecessary RAM usage and workload for the CPU.

The approach in this PR defines a common module named *socket_base*,
which contains functions used by the posix layer. Compiled by it's own,
those functions return negative error codes, to symbolize upper layers
that they are not supported. When also including the modules *udp* or
*tcp* respectively, functions from *socket_base* get overwritten with the
correct functionality.

Defining *udp* or *tcp* in a Makefile also includes *socket_base*.
Defining *pnet* in a Makefile also includes *socket_base*.
2014-09-11 20:07:46 +02:00
Oleg Hahm
c924075722 sixlowpan: documented internal is_our_address() 2014-09-10 14:37:43 +02:00
Oleg Hahm
11254577eb sixlowpan: ignore incoming packets if unconfigured
If there's no IPv6 address configured so far to any interface, 6lowpan
should not try to  handle incoming packets. This can easily lead to
looping packets.
2014-09-10 14:37:43 +02:00
Ludwig Ortmann
b7992922ce fix license headers in non-.c files 2014-08-23 16:16:26 +02:00
Oleg Hahm
e879e2aba2 fix low-level sending destination address 2014-08-21 21:34:45 +02:00
Oleg Hahm
1de5c2b4a0 fixed remaining variables to kernel_pid_t 2014-08-07 17:29:53 +02:00
Oleg Hahm
74fbff1df2 net: changed name of internal variable
To avoid naming conflicts + made variable static and volatile as it
should be.
2014-08-07 16:31:27 +02:00
Oleg Hahm
0ad7b170ed make kernel_pid_t comparisons consistent 2014-08-07 16:31:27 +02:00
Oleg Hahm
aa2ecf6216 initialize kernel_pid_t correctly 2014-08-07 16:31:27 +02:00
Oleg Hahm
c2b0423918 core: renamed KERNEL_PID_NULL to KERNEL_PID_UNDEF
As @authmillenon pointed out the "null" in the old name is somewhat
misleading, since the actual value is -1.
2014-08-07 16:31:27 +02:00
Oleg Hahm
4b1a2f32eb net: fix kernel_pid_t checks
KERNEL_PID_NULL is a negative number. If kernel_pid_t variables are
initialized to this value, one have to check for lt/gte 0.
2014-08-07 16:31:27 +02:00
Oleg Hahm
983d056c75 core: harmonizes the data type for the process ID
Instead of using differing integer types use kernel_pid_t for process
identifier. This type is introduced in a new header file to avoid
circular dependencies.
2014-08-01 12:02:54 +02:00
Oleg Hahm
5dc38a3e8c sixlowpan: some additional debugging 2014-08-01 00:15:34 +02:00
Oleg Hahm
f2b9e20716 sixlowpan: decrement processing semaphore when discarding 2014-08-01 00:14:45 +02:00
Ludwig Ortmann
d55da67fb6 Merge pull request #1329 from LudwigOrtmann/riot_license
RIOT default license header change
2014-07-31 23:12:47 +02:00
Ludwig Ortmann
3ca4f18479 doc: use lgplv2.1-short license header instead of lgpl-short-riot 2014-07-31 22:57:20 +02:00
Cenk Gündoğan
ca5b45e264 converting tabs to spaces in sys (#1439)
This PR converts tabs to white spaces.
The statement I used for the conversion:
```find . -name "*.[ch]" -exec zsh -c 'expand -t 4 "$0" > /tmp/e && mv /tmp/e "$0"' {} \;```
Afterwards, I had a quick overview of the converted files to prevent odd indentation.
2014-07-31 20:51:50 +02:00
René Kijewski
6fae042a60 core: remove unneeded calls to mutex_init() 2014-07-29 09:33:24 +02:00
René Kijewski
ba1a15535b core: remove extra thread_create_arg() function 2014-07-09 10:28:23 +02:00
René Kijewski
3063e3c2b1 Fix all warnings for native and qemu-i386
Missing returns, unused variables (only used for debugging), empty
translation units, missing function prototypes, and GNU extensions.
2014-06-24 16:50:32 +02:00
Oleg Hahm
eedc16815c Merge pull request #891 from OlegHahm/rpl_debug
net: some debug code
2014-06-22 19:27:18 +02:00
René Kijewski
840c0f0a57 make: detect their module name automatically
For many modules the `Makefile` contains a line like
```
MODULE:=$(shell basename $(CURDIR))
```
This conclusively shows that we do not have to set the module name
manually.

This PR removes the need to set the module name manually, if it is the
same as the basename. E.g. for `…/sys/vtimer/Makefile` the variable
make `MODULE` will still be `vtimer`, because it is the basename of the
Makefile.
2014-06-17 15:49:32 +02:00
Oleg Hahm
fe788838ef net: IPv6: RPL: more debug output 2014-06-03 15:04:53 +02:00
Oleg Hahm
6dbeacd2ce documentation: fixed sixlowpan doxygen filename 2014-05-22 13:01:44 +02:00
Oleg Hahm
f8168c86d3 documentation: fixed organization of 6LoWPAN doxygen 2014-05-22 13:01:37 +02:00
Jan S
ba907471f3 fixed printf specifiers 2014-05-15 17:42:57 +02:00
Thomas Eichinger
7a031e5669 net: handle macro redefinitions for OS X
undefine macros and reorder header includes to get rid of system
defined macros on OS X

fixes #1165
2014-05-14 19:43:58 +02:00
René Kijewski
9a9caf2c68 Exterminate old-style function definitions 2014-05-12 21:57:09 +02:00
Benjamin Valentin
8ec8b3f100 net/ip: fix wrong double negative in the comments 2014-05-12 17:28:05 +02:00
Benjamin Valentin
143b6560da net/ip: apply workaround to fix IP forwarding
When sending a packet a workaround is applied when ndp_get_ll_address() returns NULL as is's not implemented properly yet.
The same should happen when a packet is forwarded as it's dropped otherwise.
2014-05-12 17:01:36 +02:00
Martine Lenders
0e4d2909a6 Merge pull request #830 from authmillenon/fix_test_pnet
tests: Fix test_pnet
2014-04-17 01:40:27 +02:00
Martin Lenders
4e1da23817 Fix test_pnet
fixes #829
2014-04-16 17:44:46 +02:00
Martin Lenders
9ee7956e53 Fix length of fragmentation buffer in 6LoWPAN 2014-04-09 16:07:46 +02:00
Martine Lenders
139da0a5b4 Merge pull request #873 from OlegHahm/on_link_check
net: sixlowpan: removing possible invalid check
2014-04-09 16:02:56 +02:00
Martin Lenders
d9fdbca9de Fix dereferencing of type-punned pointer
Fixes #897
2014-04-05 20:42:08 +02:00
Martine Lenders
951cc0cdc2 Merge pull request #928 from authmillenon/ndp-nce-remove
Make neighbor cache remove function public
2014-04-01 16:39:06 +02:00
Martin Lenders
69903e4cb8 Make neighbor cache remove function public 2014-03-28 10:20:08 +01:00
Benjamin Valentin
113fd6a9cf icmp.c: remove empty else clause 2014-03-28 10:06:44 +01:00
Martine Lenders
03b49e849b Merge pull request #875 from OlegHahm/ip_forwarding
net: IPv6: use forwarding table entry when routing
2014-03-24 15:39:24 +01:00
Martine Lenders
ddebe8ed1a Merge pull request #876 from OlegHahm/iphc_decompression_shift
net: 6lowpan: added missing hdr position shift
2014-03-24 15:36:44 +01:00
René Kijewski
d6ad19b410 Fix issue #896 2014-03-19 14:56:35 +01:00
Oleg Hahm
153f2f9e95 notify lowpan_transfer when IP packet is not routable
The IP process silently discarded an unroutable packet without replying to the 6LoWPAN layer, causing that thread to starve.
2014-03-10 19:58:52 +01:00
Oleg Hahm
3945a06851 added missing hdr position shift 2014-03-09 19:14:18 +00:00
Oleg Hahm
05ebad4380 use forwarding table entry when routing
So far the entry was looked up, but ignored in the case where the packet
has to be forwarded.
2014-03-09 19:03:59 +00:00
Oleg Hahm
72e1c667a7 removing possible invalid check
Checking for a link local address to determine if a node is on-link is
probably not a valid assumption in most wireless networks.
2014-03-09 18:51:48 +00:00
Martin Lenders
332485e466 Fix source address IPHC 2014-03-03 17:16:29 +01:00
Oleg Hahm
9255c9cbef removed obsolete buffer 2014-03-02 23:34:07 +00:00
Martin Lenders
bdced318bc Eliminate side effects in icmpv6_csum and make it public 2014-03-01 15:08:19 +01:00
Oleg Hahm
2c76f99f04 nbr_cache_auto_rem does not need an extra thread 2014-03-01 15:08:19 +01:00
Martin Lenders
6c9578c028 Add sixlowpan to auto_init 2014-03-01 15:08:19 +01:00
Martin Lenders
00acab920b Let IPv6 and ICMP use new 6LoWPAN layer (+fixes) 2014-03-01 15:08:18 +01:00
Oleg Hahm
e2e62596be Byte order and rpl problems 2014-03-01 15:08:18 +01:00
Martin Lenders
c9e8adc414 Use net_if in 6LoWPAN layer 2014-03-01 15:08:18 +01:00
Martin Lenders
108989b65d Use net_if in 6LoWPAN MAC layer 2014-03-01 14:44:21 +01:00
Martin Lenders
470d8745e9 Add capability to set and get variable default hop limit 2014-03-01 14:44:21 +01:00
Martin Lenders
78b5f2ae5d Decouple ICMPv6 from 6LoWPAN 2014-03-01 14:44:21 +01:00
Martin Lenders
4e39cbdd54 Put 6LoWPAN border router in its own module 2014-03-01 14:44:21 +01:00
Martin Lenders
bc4befb4e9 Fix coding conventions for sixlowpan and rpl module 2014-03-01 14:44:21 +01:00