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

3737 Commits

Author SHA1 Message Date
Martine Lenders
f2e1c1ac87
Merge pull request #15209 from brummer-simon/gnrc_tcp-cleanup_debug_messages
gnrc_tcp: Overhaul all debug messages
2020-10-14 17:42:19 +02:00
Simon Brummer
0cc06a5993 gnrc_tcp: Overhaul all debug messages 2020-10-14 16:58:53 +02:00
Francisco Acosta
05b089b3c4 gnrc_netif: remove unused event_netdev_t struct 2020-10-14 14:46:35 +02:00
Akshai M
2c526a7d29 net/lorawan : Expose to Kconfig
Expose LORAMAC_REGION_XX_XXX to Kconfig as a choice
2020-10-14 00:16:47 +05:30
Akshai M
1a54238244 gnrc/lorawan : Improve debugging
gnrc_lorawan.c, gnrc_lorawan_mlme.c : Add additional debug
statements
net/gnrc/lorawan/region.h : Added debug statements
2020-10-14 00:16:47 +05:30
Martine Lenders
45144fb4a4
treewide: use new gnrc_pkt API functions instead of utlist.h macros 2020-10-13 13:32:53 +02:00
Akshai M
874d7d15cb gnrc/lorawan : Add RX1DROffset for IN865 region
Co-authored-by: José Alamos <jialamos@uc.cl>
2020-10-13 13:40:49 +05:30
Sören Tempel
af03cd8f4f gnrc_netif: add missing gnrc_netif_release() to early return
The gnrc_netif_ipv6_addr_add_internal() function unconditionally
acquires the global netif rmutex lock but doesn't release this lock on
this specific path (i.e. if gnrc_netif_ipv6_group_join_internal failed).
This can cause a deadlock as no other thread will afterwards be capable
of acquiring the netif lock.
2020-10-13 04:42:52 +02:00
d92f280add
Merge pull request #15211 from miri64/gnrc_tcp/cleanup/utlist-pkt-func
gnrc_tcp: use gnrc_pktsnip_search_type() to search for snips
2020-10-13 13:18:02 +02:00
Martine Lenders
d105a67b9f
gnrc_tcp: use gnrc_pktsnip_search_type() to search for snips 2020-10-13 11:37:34 +02:00
benpicco
3384c327a7
Merge pull request #15194 from miri64/gnrc_netif_raw/fix/netif-hdr
gnrc_netif_raw: add NETIF header on receive
2020-10-09 14:35:54 +02:00
Martine Lenders
6991ad5910
gnrc_netif_raw: add NETIF header on receive
... to give upper layer a hint on the interface the packet came from.
2020-10-09 11:51:18 +02:00
Benjamin Valentin
1afe72a5e5 drivers/enc28j60: register with netdev 2020-10-08 10:36:56 +02:00
Benjamin Valentin
988ee1648f drivers/mrf24j40: register with netdev 2020-10-07 16:39:39 +02:00
Martine Lenders
bcd59f9789
Merge pull request #15161 from brummer-simon/gnrc_tcp-hide_global_variables
gnrc_tcp: Hide remaining global variables
2020-10-06 14:10:14 +02:00
Martine Lenders
2aaca12d06
Merge pull request #15160 from brummer-simon/gnrc_tcp-reduce_scope_of_receive_buffer
gnrc_tcp: reduce scope of receive buffer
2020-10-06 14:09:15 +02:00
Akshai M
b4594ffe32 gnrc/lorawan : Bug fix for zero CFList
Correct check for CFlist and then conditinally process CFList.
2020-10-05 21:51:33 +05:30
Simon Brummer
7b1629553f gnrc_tcp: Hide remaining global variables 2020-10-05 16:13:13 +02:00
Leandro Lanzieri
e1418e0972
Merge pull request #14065 from jia200x/pr/improve_gnrc_lorawan
gnrc_lorawan: refactor
2020-10-05 15:56:00 +02:00
Simon Brummer
a29666f87c gnrc_tcp: reduce scope of receive buffer 2020-10-05 15:07:02 +02:00
benpicco
2cab6b9f18
Merge pull request #14500 from brummer-simon/gnrc_tcp-replace_xtimer_with_evtimer
gnrc_tcp: Replace xtimer with evtimer
2020-10-05 13:58:39 +02:00
chrysn
6350d22bc9 net/gcoap: Register additional resources head-first
This simplifies (written and compiled) code by doing a head rather than
a tail insertion of the new listener into gcoap's list.

As handling of listeners without a link_encoder is now fixed,
gcoap_get_resource_list can handles this now without having to manually
skip over the .well-known/core handler (which is not the first entry any
more now).

Incidentally, this allows the user to install a custom handler for
.well-known/core, as the default handler is now evaluated last.
2020-10-02 21:04:25 +02:00
chrysn
e3db58f013 net/gcoap: Avoid endless loop on error
The NULL case can not regularly be reached (because regularly
gcoap_register_listener sets thel link_encoder to a default one), but if
it is (eg. because an application unsets its link_encoder to hide a
resource set at runtime), the existing `continue` is a good idea (skip
over this entry) but erroneously created an endless loop by skipping the
advancement step.
2020-10-02 20:53:05 +02:00
Francisco
df3ab9f161
Merge pull request #15138 from aabadie/pr/dist/codespell_fixes
dist/codespell: update the list of ignored words and fix all typos
2020-10-02 12:27:12 +02:00
José Alamos
f30da14341
Merge pull request #15007 from akshaim/Kconfig_lora
net/lora : Expose configurations to Kconfig
2020-10-02 11:01:52 +02:00
11aa30625f
sys/net/gnrc: fix typos
- 'Busses' -> 'Buses'
- 'wether' -> 'whether'
- 'inferface' -> 'interface'
- 'registartion' -> 'registration'
- 'divisable' -> 'dividable'
- 'anounce' -> 'announce'
2020-10-02 08:13:18 +02:00
benpicco
6cb8da7813
Merge pull request #14950 from jia200x/pr/ieee802154/submac
ieee802154_submac: add initial support for common MAC sub layer
2020-10-01 11:31:52 +02:00
Simon Brummer
132882df73 gnrc_tcp: Replace xtimer with evtimer 2020-10-01 11:30:00 +02:00
Jose Alamos
9ebc3f8bd8 auto_init/nrf52840: add support for SubMAC 2020-10-01 10:55:55 +02:00
Jose Alamos
1de5b34adf auto_init/cc2538_rf: add support for SubMAC 2020-10-01 10:55:55 +02:00
Jose Alamos
e100a67099 ieee802154_submac: add initial implementation 2020-09-30 17:25:31 +02:00
Akshai M
a9f7b88624 net/lora : Change defaults
Change 'CONFIG_LORA_SF_DEFAULT' to 'SF7' and
'CONFIG_LORA_CR_DEFAULT' to 'LORA_CR_4_5' to
allow shorter air times and make it easier to meet country
specific regulations.
2020-09-30 20:00:03 +05:30
Akshai M
aa83367b4b net/lora : Expose to Kconfig 2020-09-30 20:00:03 +05:30
Jose Alamos
fda73fdf0a gnrc_lorawan: uncrustify files 2020-09-30 14:18:54 +02:00
Jose Alamos
71bda3bcd8 gnrc_lorawan: remove GNRC specific dependencies 2020-09-30 14:18:54 +02:00
Jose Alamos
0162a16d82 gnrc_lorawan: fix BUSY logic 2020-09-30 14:18:54 +02:00
Jose Alamos
2e6ba90435 gnrc_lorawan: refactor rx_done callback 2020-09-30 14:18:54 +02:00
Jose Alamos
5146261f03 gnrc_lorawan: rename radio event functions 2020-09-30 14:18:54 +02:00
benpicco
0bc80250cf
Merge pull request #15101 from benpicco/sys/net/uhcp-log
sys/net/uhcp: use LOG_xxx functions
2020-09-30 11:08:53 +02:00
Martine Lenders
9631576b22
gnrc_ipv6_nib: make ARO extra status codes also available without 6LN 2020-09-29 10:45:12 +02:00
Martine Lenders
04f6e06dd4
gnrc_ipv6_nib: only multicast probe UNREACHABLE neighbor if 6LR
Non-routing 6LNs do not have to join the solicited nodes address, so
probing for a neighbor using that address may be in vain and only
spamming the LLN with unnecessary messages. RFC 6775 basically assumes
this in section 5.2:

> There is no need to join the solicited-node multicast address, since
> nobody multicasts NSs in this type of network.
2020-09-29 10:45:12 +02:00
Benjamin Valentin
f163f1580b sys/net/uhcp: use LOG_ functions
Using `gnrc_border_router` with `uhcp` is quite noisy.
uhcpc will regularly refresh the prefix and print a bunch of status messages.

Allow the user to tone it down by setting a higher `LOG_LEVEL`.
For this, convert calls to `printf()` and `puts()` to `LOG_xxx()`.

This requires a dummy header for `uhcpd`.
2020-09-29 09:55:28 +02:00
Leandro Lanzieri
0cd94c7c67
sys/net: remove unused routing directory 2020-09-24 17:32:34 +02:00
Martine Lenders
555c62de51
gnrc_ipv6_nib: set NCE stale on incoming ARO
In accordance with RFC 6775, section 5.2 an NCE should be set STALE
when an ARO renews the address registration for the address:

> The routers SHOULD NOT garbage-collect Registered NCEs (see
> Section 3.4), since they need to retain them until the Registration
> Lifetime expires.  Similarly, if NUD on the router determines that
> the host is UNREACHABLE (based on the logic in [RFC4861]), the NCE
> SHOULD NOT be deleted but rather retained until the Registration
> Lifetime expires.  A renewed ARO should mark the cache entry as
> STALE.  Thus, for 6LoWPAN routers, the Neighbor Cache doesn't behave
> like a cache.  Instead, it behaves as a registry of all the host
> addresses that are attached to the router.
2020-09-24 13:13:43 +02:00
Martine Lenders
711ea275e9
Merge pull request #15042 from maribu/gnrc_dont_include_xtimer_when_not_used
sys/net/gnrc/netif: Fix compilation on waspmote-pro
2020-09-23 13:37:36 +02:00
Martine Lenders
5e4c285323
Merge pull request #15056 from maribu/gnrc_pktbuf_static_alignment
sys/net/gnrc/pktbuf_static: Fix alignment
2020-09-22 17:07:07 +02:00
Marian Buschsieweke
28d4bf7751
sys/net/gnrc/pktbuf_static: Fix alignment
The buffer _pktbuf was previously only aligned to a 1 byte boundary. This could
result in run time issues.
2020-09-22 15:04:56 +02:00
Marian Buschsieweke
8a5d301caa
sys/net/gnrc/netif: Fix compilation on waspmote-pro
xtimer.h must not be included, when the xtimer module is not use. Otherwise
compilation on the waspmote-pro with https://github.com/RIOT-OS/RIOT/pull/14799
will not longer work. gnrc_netif_pktq includes xtimer.h and uses xtimer, but
gnrc_netif includes gnrc_netif_pktq.h regardless of whether gnrc_netif_pktq
is used. This makes sure that gnrc_netif_pktq.h is only included when actually
used.
2020-09-22 11:51:09 +02:00
Marian Buschsieweke
1d1b446d6b
sys/net/gnrc/netif: use IS_USED macro 2020-09-22 11:50:18 +02:00
Hauke Petersen
3b424858de net/emcute: fix buffer overflow in _willupd_msg() 2020-09-22 11:43:00 +02:00
Marian Buschsieweke
0cb274c1eb
sys/net/gnrc: Fix include of xtimer.h
Make sure xtimer.h is only included if the xtimer module is actually used, as
otherwise compilation for the waspmote-pro fails.
2020-09-16 19:55:43 +02:00
Francisco
cb6b65e7ff
Merge pull request #14886 from miri64/gnrc/fix/circ-deps
gnrc: remove circular module dependencies
2020-09-09 09:06:28 +02:00
Martine Lenders
ec436b9069
Merge pull request #14963 from miri64/gnrc_sock_ip/fix/sock
gnrc_sock_ip: fix NULL pointer dereference
2020-09-08 17:15:25 +02:00
Martine S. Lenders
7d47484170
gnrc_sock_ip: fix NULL pointer dereference 2020-09-08 13:05:10 +02:00
Martine S. Lenders
2cf5b3c185
gnrc_ipv6_hdr: make HDR_NETTYPE dependent on nettype module
In #13994 this was introduced but overlooked here.
2020-09-08 12:53:29 +02:00
Martine S. Lenders
0e3443d006
gnrc_netif: guard usage of gnrc_ipv6 member 2020-09-08 12:53:29 +02:00
Martine S. Lenders
4fe7bb003a
gnrc_ipv6_nib: add missing header includes 2020-09-08 12:53:29 +02:00
benpicco
c7993b6140
Merge pull request #14961 from miri64/gnrc_rpl/fix/check-idx
gnrc_rpl: check index after fetching address from netif
2020-09-07 14:24:44 +02:00
benpicco
a084430be3
Merge pull request #14883 from miri64/gnrc_ipv6_nib/fix/ipv6_addr_idx-check
gnrc_ipv6_nib: check return value of gnrc_netif_ipv6_addr_idx()
2020-09-07 14:24:17 +02:00
benpicco
a336fdc918
Merge pull request #11263 from miri64/gnrc_netif/new/pktq
gnrc_netif: add packet to queue when device is busy
2020-09-07 13:59:58 +02:00
Leandro Lanzieri
40b52e1d72
Merge pull request #14321 from akshaim/Kconfig_cord
net/cord : Expose configurations to Kconfig
2020-09-07 11:45:17 +02:00
Martine S. Lenders
91dfee7ee0
gnrc_ipv6_nib: fix duplicate handling for ARO
When `nce` is NULL on the duplicate check, the later re-fetching of the
`nce` might result in an actual NCE entry that then contains a
duplicate, so we need to re-check the EUI-64 again as well.
2020-09-07 08:42:50 +02:00
Martine S. Lenders
f9c3e5f5a4
gnrc_ipv6_nib: check return value of gnrc_netif_ipv6_addr_idx()
And acquire exclusive network interface access when necessary.

Fixes #14752.
2020-09-07 08:42:50 +02:00
Martine S. Lenders
f7913b3d47
gnrc_rpl: check index after fetching address from netif 2020-09-07 08:39:29 +02:00
Leandro Lanzieri
e24a64fd64
Merge pull request #14926 from akshaim/Kconfig_dtls
net/sock/dtls :  Expose configuration to Kconfig
2020-09-04 14:49:23 +02:00
Akshai M
55fe4a464f net/sock : Update documentation
Added net_sock_conf super group and updated sock_util to the super
group.
2020-09-04 16:29:13 +05:30
Akshai M
b8d2d30a6d net/sock/dtls : Expose to Kconfig 2020-09-04 16:28:29 +05:30
Jose Alamos
b7929bf6e6 net/ieee802154: add default CSMA-CA params 2020-09-03 18:22:08 +02:00
Akshai M
bb8d3cd72b sys/net/cord : Expose to Kconfig
Expose configurations to Kconfig

Co-authored-by: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-09-02 23:36:48 +05:30
Akshai M
536a99022c sys/net/cord : Move 'CONFIG_CORD_EP' to 'CONFIG_' 2020-09-02 23:36:48 +05:30
Akshai M
e09063e7f1 sys/net/cord : Move 'CORD_UPDATE_INTERVAL' to 'CONFIG_' 2020-09-02 23:36:48 +05:30
Akshai M
de2d33f65b sys/net/cord : Move 'CORD_LT' to 'CONFIG_' 2020-09-02 23:36:48 +05:30
Martine Lenders
a72d0ef3e8
gnrc_netif: add packet to queue when device is busy
... and also send on send error (i.e. when *medium* was busy)
2020-09-02 12:30:23 +02:00
Martine Lenders
7c7f667108
gnrc_netif: add a send queue 2020-09-02 12:30:22 +02:00
Francisco
6f84870c26
Merge pull request #14634 from benpicco/eui_provider
net/link_layer: implement EUI provider
2020-09-01 16:26:08 +02:00
Cenk Gündoğan
538155c344
Merge pull request #14904 from leandrolanzieri/pr/kconfig/change_prefix_convention
treewide: modify Kconfig symbol prefixes
2020-09-01 15:57:06 +02:00
Martine S. Lenders
3b7bab1108
gnrc_ipv6_nib_nc: error on non-link-local address without ARSM 2020-09-01 11:12:55 +02:00
Martine S. Lenders
14efa3185b
gnrc_ipv6_nib: don't add dst from PL to NC without ARSM 2020-09-01 11:12:55 +02:00
Leandro Lanzieri
d25fc243c4
treewide: change prefix for generated Kconfig symbols.
This changes the prefixes of the symbols generated from USEMODULE and
USEPKG variables. The changes are as follow:

   KCONFIG_MODULE_ => KCONFIG_USEMODULE_
   KCONFIG_PKG_ => KCONFIG_USEPKG_
   MODULE_ => USEMODULE_
   PKG_ => USEPKG_
2020-08-31 09:37:09 +02:00
Benjamin Valentin
bca68ff484 net/link_layer: implement EUI provider
This adds the possibility to define EUI sources and assign them to
a network device.
2020-08-30 23:43:57 +02:00
Martine Lenders
4ba5367755
Merge pull request #7664 from zhuoshuguo/lwmac_radio_reinit
LWMAC: add re-initialize radio support.
2020-08-26 18:58:56 +02:00
benpicco
9f2475dc14
Merge pull request #14832 from maribu/sys-cleanup
sys: Cleanup access to internal variables
2020-08-26 17:07:19 +02:00
Akshai M
112514a4e8 net/skald : Expose to Kconfig
Expose configurations to Kconfig
2020-08-26 15:13:08 +05:30
Akshai M
4219036727 net/skald : Move 'SKALD_INTERVAL' to 'CONFIG_' 2020-08-26 15:12:07 +05:30
benpicco
2eb6d752df
Merge pull request #14770 from benpicco/netif_addr_to_str
net/netif: move gnrc_netif_addr_to/from_str() to netif
2020-08-25 18:52:55 +02:00
Martine Lenders
ec3464aaeb
Merge pull request #14788 from leandrolanzieri/pr/fuzzing/select_gnrc_pktbuf_malloc
fuzzing: select gnrc_pktbuf_malloc implementation
2020-08-25 16:05:46 +02:00
Leandro Lanzieri
ff8079b109
fuzzing: select gnrc_pktbuf_malloc implementation 2020-08-25 09:24:50 +02:00
Marian Buschsieweke
3b6fa61829
sys: Cleanup access to internal variables
Replace direct accesses to sched_active_thread and sched_active_pid with
the helper functions thread_getpid() and thread_get_active(). This serves
two purposes:

1. It makes accidental writes to those variable from outside core less likely.
2. Casting off the volatile qualifier is now well contained to those two
   functions
2020-08-24 20:28:11 +02:00
Hauke Petersen
d8aa76501a net/gnrc/rpl: fix default route lifetime
On receiving a DIO message, RPL sets the lifetime for the default
route and the parent timeout event to the value. This leads to short
amounts of time whem the node looses its default route, while it
handles the parent timeout event to probe its parent.

This commit fixes this by adding time the node needs for probing
to the default route lifetime.
2020-08-24 17:53:00 +02:00
Hauke Petersen
05347190b9 net/gnrc/nib_ft.c: fix minor typo in comment 2020-08-21 16:06:04 +02:00
Martine Lenders
66de39a20a
gnrc_sixlowpan_frag_rb: Check possibly uninitialized pointers 2020-08-20 23:51:38 +02:00
Benjamin Valentin
decadc41a0 drivers/dose: register driver with netdev 2020-08-17 22:53:51 +02:00
Benjamin Valentin
4f19b54b7b drivers/at86rf215: register driver with netdev 2020-08-17 22:53:51 +02:00
Benjamin Valentin
53eedc283b drivers/at86rf2xx: register driver with netdev 2020-08-17 22:53:51 +02:00
Benjamin Valentin
39951a948e net/netif: move gnrc_netif_addr_to/from_str() to netif
These functions are independent from GNRC and can be used by stack-agnistoc
code.
Avoid pulling in a GNRC dependency by moving those two helper functions to
`netif`.

The old function names are kept as `static inline` wrapper functions to avoid
breaking API users.
2020-08-16 23:52:32 +02:00
zhuoshuguo
d3c87d7bb9 lwmac: add re-initialize radio support. 2020-08-15 22:12:36 +08:00
Benjamin Valentin
d4aa8aad10 nanocoap: validate input with NDEBUG
A malformed or malicious CoAP request may contain invalid field lengths.
`nanocoap` protects with this by using `assert()`, which safely crashes
the application in debug mode.

In release mode the check is removed.

Instead of allowing arbitrary memory writes, return 0 on invalid inputs.

Discovered by [Coverity](https://scan3.coverity.com/reports.htm#v46910/p10250/fileInstanceId=38357789&defectInstanceId=9793779&mergedDefectId=297306)
2020-08-11 15:54:23 +02:00
Benjamin Valentin
2ed7f66d33 gnrc_sixlowpan_iphc: fix last byte of iphc_hdr always being 0
Coverty scan found this:

> CID 298295 (#1 of 1): Operands don't affect result (CONSTANT_EXPRESSION_RESULT) result_independent_of_operands:
> (ipv6_hdr_get_fl(ipv6_hdr) & 255) >> 8 is 0 regardless of the values of its operands.

Looking at the code, this appears to be a copy & paste error from the previous line.
2020-08-11 14:09:28 +02:00
Benjamin Valentin
a9a0671232 gnrc_sixlowpan_iphc: fix Out-of-bounds read
Coverty scan found this:

> CID 298279 (#1 of 1): Out-of-bounds read (OVERRUN)
> 21. overrun-local: Overrunning array of 16 bytes at byte offset 64 by dereferencing pointer

The original intention was probably to advance the destination pointer by 4 bytes, not
4 * the destination type size.
2020-08-11 13:31:22 +02:00
acd47f0c1f gnrc_tcp: abs() -> labs() for int32_t
Fixes compilation on msp430 and probably avr.
2020-08-05 14:32:58 +02:00