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

135 Commits

Author SHA1 Message Date
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
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
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
Oleg Hahm
3dd3bbb461 transceiver: use transceiver specific broadcast 2015-04-19 20:35:11 +02: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
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
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
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
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
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
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