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

259 Commits

Author SHA1 Message Date
Cenk Gündoğan
f91e4bde9d gnrc_ipv6_nc: remove nc_entry timers 2016-03-14 23:45:17 +01:00
Martine Lenders
1659b9cc07 Merge pull request #5050 from gebart/pr/ipv6-rm-netif
gnrc_ipv6: Strip netif header and nothing else
2016-03-14 13:14:43 +01:00
Joakim Nohlgård
61e2626779 gnrc_ipv6: Strip netif header and nothing else 2016-03-12 11:13:53 +01:00
Martine Lenders
178c3169d7 gnrc_sixlowpan_frag: use IPv6 type for reassembled packet 2016-03-12 10:45:03 +01:00
Cenk Gündoğan
ba7d6230c0 Merge pull request #4935 from authmillenon/gnrc_sixlowpan_iphc_nhc/fix/frag
gnrc_sixlowpan_iphc_nhc: fix NHC UDP decoding for fragmented packets
2016-03-11 16:41:27 +01:00
Joakim Nohlgård
ea8b0325eb gnrc: Set address valid lifetime to UINT32_MAX for border router scenario 2016-03-09 14:26:17 +01:00
Michael Andersen
1082a93a42 ndp: fix neighbor advertisement byte ordering 2016-03-05 13:39:50 -08:00
Martine Lenders
ae52bf9a12 gnrc_sixlowpan_iphc_nhc: fix NHC UDP decoding for fragmented packets 2016-03-04 16:40:45 +01:00
Martine Lenders
4504e40fe0 Merge pull request #4771 from Yonezawa-T2/rbuf_gc_improvement
rbuf: does not remove oldest entry if we have entry for current fragment
2016-03-04 05:40:00 +01:00
Yonezawa-T2
31fa3404ca rbuf: does not remove oldest entry if we have entry for current fragment
If all rbuf slots are in use, `_rbuf_gc` removes the oldest entry even if the
entry for the current fragment exists. This effectively decreases usable slots
by one. This patch makes `_rbuf_gc` removes the oldest entry only if there is
no entry for the current fragment.
2016-03-03 11:19:48 +09:00
Cenk Gündoğan
10cb4d66bf Merge pull request #4870 from authmillenon/ipv6_addr/enh/opt
ipv6_addr: optimize for size
2016-03-02 22:04:32 +01:00
Martine Lenders
ac07862363 Merge pull request #4796 from gebart/pr/udp-nhc-typo
6lo: Fix typo in UDP NHC checksum elision bit define
2016-03-01 21:54:32 +01:00
Martine Lenders
0e32745b8a gnrc: replace static initializers with constants where sensible 2016-03-01 18:29:15 +01:00
Joakim Nohlgård
647c87c9a5 6lo: Fix typo in UDP NHC checksum elision bit define 2016-03-01 12:35:14 +01:00
ded39b461e sys: random: rename genrand_* to random_* 2016-02-29 21:33:17 +01:00
Yonezawa-T2
984e02a7ff rbuf: made RBUF_INT_SIZE configurable 2016-02-29 13:02:32 +09:00
Cenk Gündoğan
0ac4ee705c ipv6: rpl: add source routing header for RPL 2016-02-27 20:39:12 +01:00
Cenk Gündoğan
847c4868a3 Merge pull request #4851 from cgundogan/pr/icmpv6/debug_fix
gnrc_icmpv6: fix debug outputs
2016-02-19 08:13:58 +01:00
Cenk Gündoğan
ee4553e176 gnrc_icmpv6: fix debug outputs 2016-02-19 07:51:10 +01:00
Oleg Hahm
fc398d857d ndp: fix NCE creation on RA reception
RFC4861 says: "If a Neighbor Cache entry is created for the router
[while processing route advertisements], its reachability state MUST be
set to STALE as specified in Section 7.3.3."
2016-02-18 19:53:39 +01:00
Oleg Hahm
0a65d8c558 Merge pull request #4770 from Yonezawa-T2/rbuf_usec
rbuf: change arrival time unit from seconds to microseconds
2016-02-16 11:38:06 +01:00
Yonezawa-T2
d5a02b6de1 rbuf: change arrival time unit from seconds to microseconds 2016-02-16 17:22:25 +09:00
Martine Lenders
a66ce9c3eb Merge pull request #4784 from authmillenon/gnrc_pkt/api/search-type-function
gnrc_pkt: provide type search function
2016-02-15 13:33:45 +01:00
Cenk Gündoğan
27a4770601 gnrc_ipv6: make the DEBUG output useful 2016-02-11 16:46:16 +01:00
Martine Lenders
379703ae3a gnrc: use gnrc_pkt_search_type instead of LL_SEARCH_SCALAR 2016-02-11 01:05:02 +01:00
Yonezawa-T2
f638d68ebb rbuf: drop overlapped fragment only if offset or size differs from previous one.
https://tools.ietf.org/html/rfc4944#section-5.3 says:

> If a link fragment that overlaps another fragment is received, as
> identified above, and differs in either the size or datagram_offset
> of the overlapped fragment, the fragment(s) already accumulated in
> the reassembly buffer SHALL be discarded.  A fresh reassembly may be
> commenced with the most recently received link fragment.
2016-02-09 11:15:22 +09:00
Oleg Hahm
ae086aeed1 IPv6: cosmetic improvement
New condition -> new line
2016-01-29 18:56:03 +01:00
Oleg Hahm
250c288929 6lowpan nd: prefer NCEs over FIB entries
If an address can be found in the neighbor cache, it should be used - whatever the FIB may return.
2016-01-29 18:56:03 +01:00
BytesGalore
10ea1226bc gnrc/ipv6: add blacklisting of IPv6 addresses 2016-01-28 21:50:43 +01:00
Oleg Hahm
ae8e0957cb Merge pull request #4705 from cgundogan/pr/ndp/pio_fix
ndp/internal: fix pio flags for rtr adv
2016-01-28 16:27:44 +01:00
Cenk Gündoğan
d58e1385b2 ndp/internal: fix pio flags for rtr adv 2016-01-28 14:03:19 +01:00
BytesGalore
2d1671473b gnrc_ipv6/whitelist: switch assignment operation to memcpy() 2016-01-28 06:23:31 +01:00
Martine Lenders
5ddcf09627 gnrc_ipv6_netif: don't advertise routers without GUAs 2016-01-26 23:25:07 +01:00
Cenk Gündoğan
617796241e Merge pull request #4295 from authmillenon/gnrc_ipv6_nc/enh/l2addr-lookup
gnrc_ipv6_nc: introduce L2 address lookup function
2016-01-26 19:30:01 +01:00
Oleg Hahm
3d494c8bf9 Merge pull request #3184 from authmillenon/ng_icmpv6_error/feat/init
gnrc_icmpv6_error: initial import
2016-01-26 18:23:54 +01:00
test
8d1f91f128 ndp: check for A flag in received PIO 2016-01-26 14:34:48 +01:00
Martine Lenders
da5abe1bcd gnrc_sixlowpan_nd: use gnrc_ipv6_nc_get_l2_addr() 2016-01-26 10:19:16 +01:00
Martine Lenders
0b787b9e02 gnrc_ndp_node: use gnrc_ipv6_nc_get_l2_addr() 2016-01-26 10:19:16 +01:00
Martine Lenders
0e0eef1273 gnrc_ipv6: use gnrc_ipv6_nc_get_l2_addr() 2016-01-26 10:19:15 +01:00
Martine Lenders
7b21f95df5 gnrc_ipv6_nc: introduce L2 address lookup function 2016-01-26 10:19:15 +01:00
Martine Lenders
70c3d29036 gnrc_icmpv6_error: initial import 2016-01-23 16:04:05 +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