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

5216 Commits

Author SHA1 Message Date
25b90317f3 sys/phydat: add ppb unit support 2018-06-11 15:46:46 +02:00
Juan Carrano
cce83b4443 sys/newlib: Add missing syscalls (stubs).
Add small stubs for _times_r and _link_r so that code using times()
or link() can still compile. The functions are marked as not implemented
and return invalid codes.
2018-06-11 14:54:47 +02:00
Martine Lenders
ec5ca98b4d
Merge pull request #9320 from brummer-simon/gnrc_tcp-set_ip_src_addr_directly
gnrc_tcp: Set src addr in outgoing packets by tcp layer.
2018-06-11 14:20:21 +02:00
1c46829a78
Merge pull request #9085 from kb2ma/nanocoap/build_request_pkt
net/nanocoap: Build message with coap_pkt_t
2018-06-11 10:00:38 +02:00
Ken Bannister
43db2715cd net/nanocoap: create pkt-based request
Includes string and uint options.
2018-06-10 08:44:16 -04:00
Cenk Gündoğan
5ca031d4fa
Merge pull request #9179 from PeterKietzmann/pr_ccnl_shell_cs
shell/ccnl: use new CS add method
2018-06-10 13:35:50 +02:00
Simon Brummer
370fe1e475 gnrc_tcp: Set src addr in outgoing packets by tcp layer. 2018-06-10 13:26:23 +02:00
PeterKietzmann
d3d012c077 shell/ccnl: use new CS add method 2018-06-10 12:11:44 +02:00
Cenk Gündoğan
c135f2639e
Merge pull request #9300 from miri64/gnrc_ipv6_nib/fix/rtr-timeout-wrong-ctx
gnrc_ipv6_nib: use router instead of netif for router timeout context
2018-06-07 13:40:48 +02:00
Hauke Petersen
36ecaa6e4b net/emcute: use global byteorder functions 2018-06-07 12:10:58 +02:00
Martine Lenders
6e31ce7c74 gnrc_netif: increase number of maximum IPv6 groups 2018-06-07 10:14:52 +02:00
Martine Lenders
fbe391723b gnrc_netreg: Further specify gnrc_netreg_register() precondition
While browsing through the rendered doc, I found the precondition of
`gnrc_netreg_register()` somewhat lacking. What is a "message queue"?
`gnrc_netreg_entry_t`s have types. Does this apply for all types?
This specifies the requirement more: The calling thread **only** needs
a message queue (also provides a link to `msg_init_queue()` now for
further information), if the provided `gnrc_netreg_entry_t` is of type
`GNRC_NETREG_TYPE_DEFAULT` (i.e. thread-wise IPC).
2018-06-06 22:19:53 +02:00
Martine Lenders
b6ab9eb343 gnrc_ipv6_nib: use router instead of netif for router timeout context
`GNRC_IPV6_NIB_RTR_TIMEOUT` [expects a default router entry][doc] as
context, so using the `netif` here is clearly wrong. This causes the
hardfault described in #9297.

[doc]: http://doc.riot-os.org/group__net__gnrc__ipv6__nib.html#ga1c7e892ef6533f699c4e64737c2847c2
2018-06-06 11:37:51 +02:00
Ken Bannister
2c02ed2093 net/gcoap: refine observe re-registration
Fix re-register when using the same token.
Handle edge cases when change token for a resource.
Only set observer and resource on initial registration.
Discuss re-registration in documentation.
2018-06-05 09:23:16 -04:00
BytesGalore
0c034c9220 rpl: add DIS Solicited Information option 2018-06-04 18:10:22 +02:00
Martine Lenders
22ad3aa12e gnrc_ndp: only send RAs when VALID address is found
Otherwise, it may happen that `::` or a global address is chosen by
the IPv6 header fill function. Both types of addresses are
[not valid for RAs](https://tools.ietf.org/html/rfc4861#section-4.2)
2018-05-31 17:11:26 +02:00
Martine Lenders
55adbee488 gnrc_ipv6_nib: add full RFC4862 DAD support
Parts of [RFC4862] were already implemented when NDP via the NIB was
first implemented. This change just includes the DAD portion of
[RFC4862]. This should be enough to make RIOT fully RFC4862 compliant.

[RFC4862]: https://tools.ietf.org/html/rfc4862
2018-05-31 17:11:25 +02:00
Martine Lenders
478287701c
Merge pull request #9242 from jcarrano/fix-embunit-invalid-cast
sys/embunit: Fix incompatible declaration in outputter.
2018-05-31 10:04:04 +02:00
Martine Lenders
57d3c4698c gcoap: don't drop observer on re-register
With #9209 gCoAP got the ability to re-register and OBSERVE with a new
token, sadly the `observer` variable wasn't set in that fix, so a
re-registration actually led to the deletion of the observer (because it
is still `NULL` when the old registration is overwritten in l. 317)
2018-05-30 23:05:25 +02:00
Juan Carrano
841c7195ba sys/ps: Use correct define for TLSF information.
The macro MODULE_TLSF_MALLOC indicates if tlsf is being used as the system-wide
allocator. MODULE_TLSF only incates if TLSF is present.
PS should check for MODULE_TLSF_MALLOC to decide if heap information should be
displayed.
2018-05-30 14:13:25 +02:00
Juan Carrano
40e58a1afc sys/embunit: Fix incompatible declaration in outputter.
OutputterPrintHeaderFunction is declared as a function of 1 parameter
but CompilerOutputter_printHeader was defined as taking 2.

It is a mystery why this code compiled before.
2018-05-30 12:01:45 +02:00
Sebastian Meiling
f017ee1a50
Merge pull request #5675 from basilfx/feature/prng_fortuna
sys: random: fortuna csprng
2018-05-30 09:07:18 +02:00
Martine Lenders
fce5c758f7
Merge pull request #8841 from miri64/netif/api/initial2
netif: Initial import of a common network interface API (second try)
2018-05-29 22:10:50 +02:00
Martine Lenders
2586b5c161
Merge pull request #9233 from brummer-simon/gnrc_tcp-handle_link_local_addr
gnrc_tcp: handle link local IPv6 addresses correctly
2018-05-29 21:50:00 +02:00
Simon Brummer
686aabaa0a gnrc_tcp: handle link local IPv6 addresses correctly 2018-05-29 21:28:32 +02:00
5be4b7f5c8
Merge pull request #9226 from miri64/gnrc_netif/enh/error-on-multicast-space
gnrc_netif: fail IPv6 address addition if no space for solicited nodes
2018-05-29 20:30:26 +02:00
Ken Bannister
341debd5e0
Merge pull request #9209 from kb2ma/gcoap/observe_change_token
net/gcoap: Observer re-register with new token
2018-05-29 18:06:07 +00:00
Martine Lenders
a082e10157 gnrc_netif: add GNRC specific implementation of netif.h 2018-05-29 19:49:29 +02:00
Martine Lenders
06947b78fc netif: Initial import of a common network interface API 2018-05-29 19:49:29 +02:00
Martine Lenders
1bc9a592c4 gnrc_netif: improve doc on GNRC_NETIF_IPV6_ADDRS_NUMOF 2018-05-29 19:30:30 +02:00
Martine Lenders
ea64d39e21 gnrc_netif: fail IPv6 address addition if no space for solicited nodes 2018-05-29 19:30:30 +02:00
Ken Bannister
d7dde2dded net/gcoap: observer re-register with new token 2018-05-29 13:30:05 -04:00
Martine Lenders
d3d7a49d7a gnrc_netreg: make message queue requirement more visible 2018-05-29 19:21:48 +02:00
Bas Stottelaar
99755eaa0c sys: random: add fortuna PRNG 2018-05-29 18:40:58 +02:00
Martine Lenders
ced615a7ae
Merge pull request #9224 from maribu/ping6
shell_commands/ping6: Fixed bug in calculation of average round trip time
2018-05-29 14:27:49 +02:00
Cenk Gündoğan
5230e7732c
Merge pull request #9188 from miri64/gnrc_pktdump/enh/print-rest
gnrc_pktdump: print rest of snip as hex if available
2018-05-29 13:32:39 +02:00
Marian Buschsieweke
b4b088be9e
shell_commands/ping6: Fixed bug in calculation of average round trip time
The average rout trip time has been to low in case packets were lost, as lost
packets were treated as if that had an RTT of 0.
2018-05-29 12:36:05 +02:00
Martine Lenders
8c77cbb903 gnrc_pktdump: print rest of snip as hex if available
Currently, `gnrc_pktdump` only prints the header part of a snip.
However, if the snip wasn't parsed yet by the corresponding GNRC
module (or the module doesn't exist because the node is e.g. just a
forwarder), additional data might not be printed.

This makes it hard to analyze the data properly (sometimes you not only
want to know where the IPv6 packet is supposed to go, you also want to
know what's in it). So this just prints the rest of the snip as a hex
dump.
2018-05-29 12:33:06 +02:00
Gaëtan Harter
f61dbb6bdb
sys/trickle: document time interval unit 'ms'
Unit is milliseconds as said here:

https://github.com/RIOT-OS/RIOT/pull/9145#discussion_r188861183
2018-05-29 11:59:12 +02:00
657bd25dbe
Merge pull request #8993 from ZetaR60/RIOT_cbmplex
sys/cb_mux: Callback multiplexer
2018-05-29 10:06:05 +02:00
Matthew Blue
02697fafb3 sys/cb_mux: initial support 2018-05-28 15:43:41 -04:00
Matthew Blue
dfa8fb919d sys/timex: fix incompatible atmega time.h 2018-05-28 13:04:55 -04:00
Hauke Petersen
7f2fb5e0a3 net/emcute: use correct number of retries
syncsend() is used also for the initial packet, so resending
while (retries <= EMCUTE_N_RETRY) is the correct behavior.
2018-05-28 11:41:20 +02:00
fce61f91f0
Merge pull request #9046 from bergzand/pr/uuid/initial
uuid: Initial import of RFC4122 UUID functions
2018-05-25 15:05:57 +02:00
Hauke Petersen
ce2adb31aa sys/uart_stdio: remove unused rx_cb from header 2018-05-25 11:29:16 +02:00
6bb8a5c145
nanocoap_sock: split request function from get
The nanocoap_get function is refactored to split of the request part
into a separate function for reuse by other modules. Support for
retransmissions when the received frame is malformed is dropped as it
was broken anyway.
2018-05-25 09:40:20 +02:00
Loïc Dauphin
260bc37958
Merge pull request #5914 from cgundogan/pr/ndn-riot_as_a_pkg
pkg: ndn-riot: initial import of ndn-riot as a package
2018-05-24 18:29:22 +02:00
smlng
1011803867 net/gnrc/rpl: fix doxygen grouping 2018-05-24 14:38:27 +02:00
Cenk Gündoğan
f64265de57 gnrc_pktdump: add hex dump for NDN 2018-05-24 10:58:26 +02:00
Cenk Gündoğan
d005566042 gnrc: add nettype handling for NDN 2018-05-24 10:58:26 +02:00
Cenk Gündoğan
05d4c23c4a ethertype: use correct type for NDN and CCNx 2018-05-24 10:58:26 +02:00
Cenk Gündoğan
1fb4789e1b auto_init: add ndn-riot 2018-05-24 10:58:26 +02:00
fc03d6f694
uuid: Initial import of RFC4122 UUID functions
Provides functions for type 3, 4 and 5 UUID generations.

UUID type 1 is timestamp based and requires an accurate time source. For
this reason it is left out of this implementation. UUID type 2 is not
defined in RFC 4122 and thus also not included here
2018-05-23 16:31:01 +02:00
smlng
e97882dc56 evtimer: use conversion macro US_PER_MS 2018-05-23 15:13:31 +02:00
Sebastian Meiling
9d83b60f3b
Merge pull request #9083 from smlng/pr/gcoap/cleanup
gcoap: enhance gcoap_req_init
2018-05-23 10:40:54 +01:00
Cenk Gündoğan
441f11ea45 gnrc_rpl: shell: adapt to evtimer for RPL events 2018-05-23 09:42:12 +02:00
Cenk Gündoğan
b819ac8d35 gnrc_rpl: adapt to evtimer for RPL events 2018-05-23 09:42:12 +02:00
Cenk Gündoğan
4c9e947d43 gnrc_rpl: adjust author and copyright 2018-05-22 23:46:55 +02:00
smlng
b9ca8f466f gcoap: add asserts for path in gcoap_req_init 2018-05-22 21:28:58 +02:00
smlng
c9e9f72454 gcoap: use const path parameter 2018-05-22 21:28:58 +02:00
Bas Stottelaar
7781da7799 sys: netopt: add busy option 2018-05-21 16:37:38 +02:00
Bas Stottelaar
02395e593d sys: netopt: add checksum option 2018-05-21 16:37:38 +02:00
Juan Carrano
cf686bde2d pkg/tlsf: Refactor the TLSF package and bring back original TLSF api.
- Cleanup package makefile.
- Download directly from git.
- Remove giant patch.
- Implement malloc function as a contrib package.
- Update ccn example.
- Update ps command.
2018-05-18 15:41:07 +02:00
Cenk Gündoğan
94541e1802
Merge pull request #9145 from bergzand/pr/trickle/ms_us_swap
trickle: remove msg_time member from struct
2018-05-18 15:00:52 +02:00
Cenk Gündoğan
ab0071622b
Merge pull request #9121 from kaspar030/uart_stdio_workaround
sys/uart_stdio: compile with -Wno-cast-function-type
2018-05-17 17:13:30 +02:00
1c03b67cab sys/uart_stdio: compile with -Wno-cast-function-type 2018-05-17 17:03:27 +02:00
aa84c3e6b8
trickle: remove msg_time member from struct
The msg_time member is only locally used and set before read. It can
be removed as the state kept by the member is not used.
2018-05-17 10:40:12 +02:00
d6f9be77b5
Merge pull request #9123 from maribu/pack_structs
gnrc/netif/hdr.h: Optimized structure layout
2018-05-14 14:29:09 +02:00
Marian Buschsieweke
4b8881abb4
gnrc/netif/hdr.h: Optimized structure layout
Reordered struct members to not waste memory due to padding.

Before:
``` C
typedef struct {
    uint8_t src_l2addr_len;
    uint8_t dst_l2addr_len;
    kernel_pid_t if_pid;    // <-- 16 bit, is aligned to 16 bit
    uint8_t flags;
    uint8_t __padding_byte; // <-- Inserted to fulfill padding requirements
    int16_t rssi;           // <-- 16 bit, is NOT aligned to 16 bit
    uint8_t lqi;
    uint8_t __padding_byte2;// <-- Inserted to fulfill padding requirements
} gnrc_netif_hdr_t;
```

Now:
``` C
typedef struct {
    uint8_t src_l2addr_len;
    uint8_t dst_l2addr_len;
    kernel_pid_t if_pid;    // <-- 16 bit, is aligned to 16 bit
    uint8_t flags;
    uint8_t lqi;
    int16_t rssi;           // <-- 16 bit, is aligned to 16 bit
} gnrc_netif_hdr_t;
```

When build for the `bluepill` board, the new layout reduces the size by 2 bytes.
2018-05-14 14:01:29 +02:00
372aadd626
Merge pull request #8978 from Hyungsin/forupstream_fxos8700
drivers: add driver for FXOS8700 3-axis accelerometer/magnetometer
2018-05-14 08:45:58 +02:00
Hyungsin
beaf08bcb2 drivers: add driver for FXOS8700 3-axis accelerometer/magnetometer 2018-05-12 17:51:58 -07:00
Gaëtan Harter
60d09e6b21
sys/icmpv6_hdr_print: replace PRIu8 by PRIu16
PRIu8 is not supported on samr21-xpro:

    type:   hu  code:   hu

After fix

    type: 133  code:   0

Found by running 'tests/gnrc_netif'
2018-05-11 17:41:25 +02:00
Gaëtan Harter
d0f22b787c
Merge pull request #8112 from cladmi/pr/crypto/input_len
crypto/ccm: fix input_len checking with length_encoding
2018-05-09 18:56:34 +02:00
Gaëtan Harter
fa33eacd1f
crypto/ccm: fix _fits_in_nbytes function
Function is broken with num_bytes >= 4.

Could happen when storing input_len with len_encoding >= 4.
It can take values from 2 to 8, so make it work for cases it would overflow.
2018-05-07 15:08:00 +02:00
Gaëtan Harter
ee311a331b
crypto/ccm: refactor input_len check in a function
Refactorg checking that length can be stored in a number of bytes to a
subfunction.
2018-05-07 15:08:00 +02:00
Wentao Shang
89023b3499
crypto/ccm: fix input_len check
Maximum input_len depends only on length_encoding and not auth_data_len.
The current length_max value was also wrong.

RFC3610 page 2

   3. The message m, consisting of a string of l(m) octets where 0 <=
      l(m) < 2^(8L).  The length restriction ensures that l(m) can be
      encoded in a field of L octets.
2018-05-07 15:08:00 +02:00
Martine Lenders
8a46cf611e gcoap: make message queue size configurable 2018-05-06 16:41:43 +02:00
9020767c2d
Merge pull request #9071 from cladmi/pr/make/riottools/arduino
sys/arduino: use RIOTTOOLS variable
2018-05-04 23:10:07 +02:00
Martine Lenders
3d821ee195 gnrc_rpl: remove route before updating it
The "new" forwarding table does not update an old route but just adds
another as long as it is not *exactly* the same. However, the RPL
adaptation missed to remove the old route so RPL got easily confused
about where it actually needed to send packets.
2018-05-04 17:46:02 +02:00
Gaëtan Harter
14ac80e15a
sys/arduino: use RIOTTOOLS variable
Follow up to #9067 and part of #8821
2018-05-04 11:16:48 +02:00
f9c75d0df7
Merge pull request #8915 from ZetaR60/RIOT_ads101x
drivers/ads101x: support for ADCs
2018-05-03 08:31:03 +02:00
b81b12de4e
cbor: Move header to cbor subdirectory
Prevents conflicts when multiple modules/packages provide a `cbor.h`
header.
2018-05-01 11:12:39 +02:00
Joakim Nohlgård
9c85ce1916
Merge pull request #8733 from gebart/pr/matstat
matstat: Integer mathematical statistics library
2018-04-28 09:37:02 +02:00
Joakim Nohlgård
6927260973 sys/matstat: Integer mathematical statistics library 2018-04-28 08:03:35 +02:00
0a18bc9e97
Merge pull request #9027 from bergzand/pr/nanocoap/req_ent_incomp
nanocoap: add request entity incomplete response code
2018-04-26 11:05:29 +02:00
51f06d5127
nanocoap: Add request entity incomplete code 2018-04-26 10:50:08 +02:00
4def1fa5fd
Merge pull request #8992 from Josar/evtimer_3
evtimer: optimized adding
2018-04-26 10:00:35 +02:00
Josarn
111f021eb3 evtimer: optimized adding 2018-04-25 17:58:54 +02:00
Martine Lenders
dc41f49229 cbor: add deprecation note 2018-04-25 16:46:17 +02:00
5251e140e6
Merge pull request #8991 from Hyungsin/forupstream_pulse_counter_fix
sys/auto_init: fix syntax error on auto_init_pulse_counter.c
2018-04-23 15:52:12 +02:00
Sebastian Meiling
4f97fc76fd
Merge pull request #8894 from beduino-project/fix-gnrc_ipv6_blacklist-build
gnrc: fix build of gnrc_ipv6_blacklist when ENABLE_DEBUG is disabled
2018-04-23 14:26:53 +02:00
e1f6a5afd3 net/gcoap: increase stack size by sizeof(coap_pkt_t) 2018-04-22 23:15:16 +02:00
734944a56b
Merge pull request #8986 from haukepetersen/opt_event_allowmultipleposts
sys/event: allow calling event_post multiple times
2018-04-20 10:59:14 +02:00
Hyungsin
770b74636b sys/auto_init: fix syntax error on auto_init_pulse_counter.c 2018-04-19 19:17:02 -07:00
Hauke Petersen
46888a1eaf sys/event: allow calling event_post multiple times 2018-04-19 16:41:13 +02:00
Hauke Petersen
cf7fb4b886 net/rdcli: fix doxygen groups for RD client code 2018-04-19 16:27:59 +02:00
Martine Lenders
07eb208bc6
Merge pull request #8963 from Josar/pr/eventTimer_2
evtimer: ticks vs ms
2018-04-17 10:53:27 +02:00
f18f25c5c2
Merge pull request #8577 from gebart/pr/analog_util-refactor
sys/analog_util: Refactor, add test
2018-04-17 10:40:53 +02:00
8475844213 sys/net/uhcpc: add missing stdio.h include 2018-04-16 23:06:15 +02:00
f62818ea7b sys/auto_init/io1_xplained: fix gpios index 2018-04-16 15:57:36 +02:00