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

219 Commits

Author SHA1 Message Date
Martine Lenders
7b21f95df5 gnrc_ipv6_nc: introduce L2 address lookup function 2016-01-26 10:19:15 +01:00
Martine Lenders
94e4a08f45 Merge pull request #4447 from Yonezawa-T2/fix_gnrc_bugs
fixes several bugs on GNRC network stack
2016-01-07 03:38:11 +01:00
Yonezawa-T2
c9c83c7dc7 nc: cancel timer set by gnrc_ndp_rtr_sol_handle in gnrc_ipv6_nc_remove. 2016-01-07 10:12:46 +09:00
Yonezawa-T2
542e045bba gnrc_ipv6_netif: fixed crash when ENABLE_DEBUG is 1.
When ENABLE_DEBUG is 1, `out` is dereferenced unconditionally, but
`_parse_options` in `gnrc_rpl_control_messages.c` calls it with NULL.

Clarified `out` must not NULL and fixed `_parse_options`.
2016-01-07 10:08:37 +09:00
Yonezawa-T2
5cb904b57e gnrc_sixlowpan_nd: fixed crash on gnrc_sixlowpan_nd_next_hop_l2addr.
When `gnrc_ndp_node_next_hop_l2addr` cannot resolve L2 address, it creates a
temporary neighbor cache entry with interface `KERNEL_PID_UNDEF` (unless the
interface is already known) to send a neighbor solicitation. When another packet
directed to the same address is going to sent before receiving a neighbor
advertisement, `gnrc_sixlowpan_nd_next_hop_l2addr` gets the temporary neighbor
cache entry and calls `gnrc_ipv6_netif_get` with `KERNEL_PID_UNDEF`, resulting
get a `NULL`. We must check `NULL` before dereference it.

FYI, both `gnrc_ndp_node_next_hop_l2addr` and
`gnrc_sixlowpan_nd_next_hop_l2addr` are enabled when
`gnrc_sixlowpan_border_router_default` module is enabled with `GNRC_NETIF_NUMOF`
is greater than 1:

gnrc_sixlowpan_border_router_default
→ gnrc_ipv6_router_default
→ gnrc_ndp_router (if GNRC_NETIF_NUMOF > 1)
→ gnrc_ndp_node
→ gnrc_ndp_node_next_hop_l2addr is called from _next_hop_l2addr

gnrc_sixlowpan_border_router_default
→ gnrc_sixlowpan_nd_border_router
→ gnrc_sixlowpan_nd_router
→ gnrc_sixlowpan_nd
→ gnrc_sixlowpan_nd_next_hop_l2addr is called from _next_hop_l2addr
2016-01-07 10:02:49 +09:00
Martine Lenders
a4a8e83ac7 Merge pull request #4446 from Yonezawa-T2/neighbor_discovery_option_for_6lowpan
gnrc_ndp: fixed ND Option handling for 6LoWPAN
2016-01-06 14:03:43 +01:00
Yonezawa-T2
639f7dc020 gnrc_ndp: fixed ND Option handling for 6LoWPAN
The forms of the Source/Target Link-layer Address option for 6LoWPAN are defined
in RFC 4944 Section 8:
https://tools.ietf.org/html/rfc4944#section-8
The address is 16 bit if length is 1, 64 bit if length is 2.
2016-01-06 09:38:47 +09:00
Cenk Gündoğan
e79a471931 Merge pull request #4533 from Yonezawa-T2/gnrc_add_missing_unlock
gnrc_ndp_internal: add missing unlock when the pktbuf is full
2016-01-04 16:05:17 +01:00
Yonezawa-T2
38d3dc725b gnrc_ndp_internal: add missing unlock when the pktbuf is full
Squashed a commit by Cenk Gündoğan <cnkgndgn@gmail.com>.
2015-12-25 11:08:28 +09:00
Cenk Gündoğan
7d628514ab sixlowpan: iphc: fix dependencies for udp and nhc 2015-12-23 13:57:55 +01:00
Cenk Gündoğan
237706dd9e sixlowpan: iphc: remove dispatch and assign result to pkt 2015-12-22 20:54:39 +01:00
Martine Lenders
d342d35dd8 gnrc_sixlowpan: Fix IPHC/NHC packet order problem 2015-12-22 17:14:33 +01:00
Oleg Hahm
b7a7578e21 Merge pull request #4507 from authmillenon/gnrc_ipv6/fix/no-order-assumptions
gnrc_ipv6: make no pre-assumption about any marked headers
2015-12-22 11:18:47 +01:00
Oleg Hahm
83649ddb59 Merge pull request #4531 from Yonezawa-T2/gnrc_avoid_infinite_loop
sixlowpan: fixed infinite loop
2015-12-22 11:11:55 +01:00
Martine Lenders
34974abac2 Merge pull request #4534 from Yonezawa-T2/gnrc_off_by_1_overrun
gnrc_ipv6_netif: fixed buffer overrun
2015-12-22 10:29:57 +01:00
Martine Lenders
5b4ef433a8 Merge pull request #4532 from Yonezawa-T2/gnrc_safe_no_routers
gnrc_sixlowpan_nd: fixed crash when there are no routers
2015-12-22 09:15:49 +01:00
Yonezawa-T2
08ba1f8640 gnrc_ipv6_netif: fixed buffer overrun 2015-12-22 11:30:05 +09:00
Yonezawa-T2
fe0e58dce1 gnrc_sixlowpan_nd: fixed crash when there are no routers 2015-12-22 11:29:57 +09:00
Yonezawa-T2
9108d2779d sixlowpan: fixed infinite loop
When prefix entry is resued, it may form a looped list, results in infinite loop
in gnrc_ndp_internal_send_rtr_adv.
This patch avoids looped lists.
2015-12-22 11:29:04 +09:00
Johann F
adfcef4f7b gnrc_ndp.c: parsing of SLLAO in gnrc_ndp_rtr_sol_handle
Do not set the link-layer address if no SLLAO was included
 into the router solicitation.
2015-12-19 01:16:24 +01:00
Martine Lenders
68309045ed gnrc_ipv6: make no pre-assumption about any marked headers 2015-12-18 18:31:24 +01:00
Yonezawa-T2
c36766a31f OSX: fix warnings/errors thrown by clang on OS X
gnrc_ipv6_nc, gnrc_sixlowpan, gnrc_netdev2_eth, gnrc_ipv6, xbee, sixlowpan,
sc_gnrc_6ctx
2015-12-10 11:23:56 +09:00
Johann Fischer
a85d50b9d1 gnrc_sixlowpan_iphc.c: add nhc udp decoding and encoding
This patch adds UDP Header Compression and Decompression as
specified in https://tools.ietf.org/html/rfc6282#section-4.3
UDP NHC module will be included only if UDP is used.
2015-12-08 14:50:25 +01:00
Johann Fischer
199789ffbc gnrc_sixlowpan.c: fix warning if GNRC_SIXLOWPAN_FRAG module not used 2015-12-08 13:59:15 +01:00
Martine Lenders
15220b26ad Merge pull request #4381 from PeterKietzmann/sixlo_frag_unblocking
gnrc_sixlowpan_frag: Make fragmentation non-blocking
2015-12-08 13:13:48 +01:00
Hauke Petersen
41979b64cd sys: adapted to renamed THREAD FLAGS 2015-12-07 22:09:47 +01:00
PeterKietzmann
331fa34502 gnrc_sixlowpan_frag: msg based fragmentation 2015-12-07 17:49:02 +01:00
Martine Lenders
281b0ba46e Merge pull request #4343 from kb2ma/misc/fix-checksum
Fix UDP/ICMPv6 checksum for a sliced/accumulated payload.
2015-12-03 13:16:12 +01:00
Ken Bannister
1abffc84e1 Update layer 4 files to fix checksum with inet_csum_slice(). 2015-12-02 05:53:58 -05:00
test
432f6c34ab ndp: use on-link flag instead of auto flag 2015-11-26 23:37:39 +01:00
test
db7e8a7b37 sixlowpan: iphc: minor optimizations 2015-11-23 13:17:23 +01:00
Martine Lenders
5f04675403 Merge pull request #4284 from authmillenon/gnrc_ipv6/enh/addr-res-without-nd
gnrc_ipv6: get l2addr from NC if no ND present
2015-11-17 17:59:58 +01:00
Martine Lenders
c7ebcbbda2 gnrc_ipv6: get l2addr from NC if no ND present 2015-11-17 16:20:58 +01:00
Martine Lenders
6595e8c57f Merge pull request #4174 from authmillenon/gnrc_ndp_internal/fix/send-ras-without-pio
gnrc_ndp_internal: send RAs even when there are no PIOs
2015-11-17 14:01:55 +01:00
Oleg Hahm
46dc908fcb gnrc 6lowpan: exclude CTX if not part of the app
This removes dependencies to 6LoWPAN context module if an application is built without support for it.

Also, includes a missing header.
2015-11-17 12:04:11 +01:00
Cenk Gündoğan
bf3a504691 nc: ndp: sixlowpan: remove timex.h include 2015-11-09 14:55:04 +01:00
Cenk Gündoğan
401e1b3814 sixlowpan: timex_t -> uint32_t 2015-11-09 14:55:04 +01:00
Cenk Gündoğan
34c3267bfe ndp: timex_t -> uint32_t 2015-11-09 14:55:04 +01:00
Cenk Gündoğan
5aaea3879f netif: ndp: gnrc_ipv6_netif_t::retrans_timer -> uint32_t 2015-11-09 14:55:04 +01:00
Cenk Gündoğan
b59fc825a3 netif: nc: ndp: gnrc_ipv6_netif_t::reach_time -> uint32_t 2015-11-09 14:55:01 +01:00
Cenk Gündoğan
47fe901187 ndp: timex -> uint32_t for probe delay time 2015-11-09 14:54:42 +01:00
Cenk Gündoğan
42c5666357 Merge pull request #4186 from cgundogan/pr/ipv6/last_vtimers
network_layer: remove last occurences of vtimer
2015-11-02 15:42:50 +01:00
Cenk Gündoğan
47a02d9d07 ipv6: ndp: sixlowpan: remove vtimer includes 2015-11-02 15:02:08 +01:00
Cenk Gündoğan
206e027725 Merge pull request #3647 from BytesGalore/fib_source_routing
fib: initial source route support
2015-10-29 12:08:47 +01:00
Cenk Gündoğan
83e0c45259 Merge pull request #4176 from authmillenon/gnrc_ndp/fix/stop-rs-retransmissions-on-ra
gnrc_ndp: stop multicast RS retransmissions on RA reception
2015-10-28 21:40:28 +01:00
Cenk Gündoğan
3b825c2523 sixlowpan: use xtimer_now() instead of vtimer_now() 2015-10-28 21:15:11 +01:00
Cenk Gündoğan
023c0984b3 sixlowpan: switch ltimer to be an xtimer 2015-10-28 21:03:09 +01:00
Martine Lenders
23f8fecc04 Merge pull request #4157 from cgundogan/pr/nc/xtimer_nbr_sol_timer
nc: use xtimer for gnrc_ipv6_nc_t::nbr_sol_timer
2015-10-28 17:51:48 +01:00
Cenk Gündoğan
4297972054 nc: use xtimer for gnrc_ipv6_nc_t::nbr_sol_timer 2015-10-28 15:24:45 +01:00
Martine Lenders
a4533920a7 Merge pull request #4177 from authmillenon/gnrc_ipv6_netif/fix/no-l2-addr
gnrc_ipv6_netif: don't skip rest of config for address less l2
2015-10-28 15:16:34 +01:00