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

4192 Commits

Author SHA1 Message Date
Leandro Lanzieri
f14c898dd0
sys/net/ipv6: add ipv6_addr_from_buf function
This allows to parse IPv6 address from strings that not end with '\0'.
2020-10-30 11:20:25 +01:00
Leandro Lanzieri
4305fcc010
sys/net/ipv4: add ipv4_addr_from_buf function
This allows to parse IPv4 address from strings that not end with '\0'.
2020-10-30 11:20:25 +01:00
Martine Lenders
72821a502f
gnrc_pktbuf: drop gnrc_pktbuf_replace_snip()
The function was deprecated in e94aa40bf5
and is unused and untested in the current code base.
2020-10-29 17:20:12 +01:00
benpicco
9e4dd8e451
Merge pull request #15287 from miri64/ethernet/enh/join-leave-mcast-group
gnrc_netif: add capability to join or leave link layer multicast groups
2020-10-29 16:03:32 +01:00
Martine Lenders
ad3c8ba5a4
gnrc_netif_ethernet: use new helper function to generate MC address 2020-10-29 14:38:52 +01:00
Martine Lenders
55ed65650d
tests/l2util: provide tests for l2util_ipv6_group_to_l2_group() 2020-10-29 14:38:51 +01:00
Martine Lenders
d8c78a9910
gnrc_netif: add capability to join or leave link-layer multicast groups
The request is forwarded to the device.
2020-10-29 14:38:51 +01:00
Martine Lenders
68d25e217a
l2util: add function to convert IPv6 multicast group to an L2 group 2020-10-29 14:38:51 +01:00
Martine Lenders
a6ebe3624d
netopt: add options to read/join/leave link layer multicast groups 2020-10-29 14:38:51 +01:00
68d3f2ee6c
sys/net: remove nordic softdevice specific handling 2020-10-29 09:02:12 +01:00
Martine Lenders
c2e7648ab5
Merge pull request #15324 from miri64/gnrc_sixlowpan/enh/AGGRESSIVE_OVERRIDE
gnrc_sixlowpan_rb: remove GNRC_SIXLOWPAN_FRAG_RBUF_AGGRESSIVE_OVERRIDE
2020-10-28 23:49:36 +01:00
chrysn
912d82dc40
Merge pull request #14029 from cgundogan/pr/gcoap/request_matcher
gcoap: add a handler for request matching
2020-10-28 16:51:35 +01:00
Cenk Gündoğan
7d820f7ada
nanocoap: gcoap: use const parameter for coap_method2flag 2020-10-28 15:40:35 +01:00
Cenk Gündoğan
d4370e690e
gcoap: add a handler for request matching 2020-10-28 15:40:35 +01:00
Martine Lenders
d135721ad9
gnrc_sixlowpan_rb: remove GNRC_SIXLOWPAN_FRAG_RBUF_AGGRESSIVE_OVERRIDE
Deprecated in c7b6dc587c.
2020-10-28 11:03:15 +01:00
benpicco
76ddfdbbde
Merge pull request #15316 from jia200x/pr/submac/fix_wait_for_ack
ieee802154/submac: fix inconsistent state on NO_ACK
2020-10-27 19:46:34 +01:00
Jose Alamos
c663ca0b36 ieee802154/submac: fix inconsistent state on NO_ACK 2020-10-27 17:41:43 +01:00
ce5b8a83b1
sys/gnrc_lorawan: fix typo 'witout' => 'without' 2020-10-27 10:33:48 +01:00
benpicco
e4164e3924
Merge pull request #15275 from jia200x/pr/radio/config_phy_amendment
ieee802154/radio: add TRX_OFF pre condition to config_phy
2020-10-26 23:28:45 +01:00
Jose Alamos
4e2a1cfa9c ieee802154/submac: adapt config_phy call to TRX_OFF precondition 2020-10-26 17:04:48 +01:00
chrysn
c0bc0c41b1 net/goap: State and check that listeners are added individually
Add a an assertion on the added listener not having a trailing chain
instead of silently overwriting it, point out the precondition in the
documentation, and guide users who want to add more than one listener
towards a more efficient way.
2020-10-23 22:33:43 +02:00
José Alamos
60b5a6b35e
Merge pull request #15268 from benpicco/gnrc_netif_ieee802154_create-const
drivers/at86rf215: give driver threads different names
2020-10-23 17:14:19 +02:00
benpicco
b5cd19e73e
Merge pull request #14178 from chrysn-pull-requests/gcoap-handle-con-response
gcoap: Process CON responses
2020-10-23 14:21:33 +02:00
Bas Stottelaar
a0979b10e7 sys/*: remove unneeded ENABLE_DEBUG 2020-10-23 11:29:57 +02:00
Bas Stottelaar
1b35d06a51 sys/*: realign ENABLE_DEBUG 2020-10-23 11:27:48 +02:00
Bas Stottelaar
b23d0dafb2 sys/*: reorder ENABLE_DEBUG after last include 2020-10-23 00:45:56 +02:00
chrysn
462f8861f4 gcoap: Suppress retransmissions when ACK was received
This introduces an additional state to the COAP_MEMO_* series to avoid
enlarging the memo struct needlessly. While they are documented
publicly, practically only the COAP_MEMO_TIMEOUT and COAP_MEMO_RESPONSE
are used in communication with the application, as a
gcoap_request_memo_t is only handed out in that state.
2020-10-22 19:08:39 +02:00
chrysn
f32d758819 gcoap: Prepare to cease retransmission
The actual implementation will follow in a separate commit, this does
the groundwork and sets the intention.
2020-10-22 19:08:39 +02:00
chrysn
0a2f97680f gcoap: Cleanup around empty responses
Simplify the code path and give consistent debug messages.
2020-10-22 19:08:39 +02:00
chrysn
ff00d66d69 gcoap: Process CON responses
This generalizes the existing code for answering CoAP pings into general
message-layer responses. Such responses are now also sent as a reaction
to CON responses, which can otherwise follow the same code path as
existing other responses.

As a side effect, issues that would crop up when responding to odd empty
requests that have token length set are resolved.

Contributes-To: https://github.com/RIOT-OS/RIOT/issues/14169
2020-10-22 19:08:39 +02:00
Bas Stottelaar
ffb929d811 sys/*: remove unused assert.h include 2020-10-22 11:29:27 +02:00
Bas Stottelaar
80d9da90df sys/*: add missing include of assert.h 2020-10-22 11:13:09 +02:00
benpicco
6cf5f79ba1
Merge pull request #15269 from basilfx/feature/timex_includes
treewide: add includes to timex.h
2020-10-22 00:54:24 +02:00
benpicco
04ad9ac6b9
Merge pull request #15214 from janosbrodbeck/pr/ble_ipv6_mtu
net/netif/gnrc_netif: allow larger IPv6 MTU than minimum for BLE
2020-10-21 23:25:27 +02:00
Bas Stottelaar
47d376c5c3 sys/*: add explicit include of timex.h 2020-10-21 21:47:31 +02:00
Benjamin Valentin
eb3daf4c22 drivers/at86rf215: give driver threads different names
Use different names for the sub-GHz and 2.4 GHz driver thread to make
it easier to tell which is which.

```
2020-10-21 19:53:50,608 # 	pid | name                 | state    Q | pri | stack  ( used) ( free) | base addr  | current
2020-10-21 19:53:50,622 # 	  - | isr_stack            | -        - |   - |    512 (  232) (  280) | 0x20000000 | 0x200001c8
2020-10-21 19:53:50,623 # 	  1 | main                 | running  Q |   7 |   1536 (  660) (  876) | 0x200002f8 | 0x2000075c
2020-10-21 19:53:50,639 # 	  2 | pktdump              | bl rx    _ |   6 |   1536 (  236) ( 1300) | 0x200035a8 | 0x20003abc
2020-10-21 19:53:50,653 # 	  3 | 6lo                  | bl rx    _ |   3 |   1024 (  332) (  692) | 0x2000420c | 0x2000450c
2020-10-21 19:53:50,655 # 	  4 | ipv6                 | bl rx    _ |   4 |   1024 (  376) (  648) | 0x200009d4 | 0x20000cd4
2020-10-21 19:53:50,670 # 	  5 | udp                  | bl rx    _ |   5 |   1024 (  252) (  772) | 0x200049f0 | 0x20004cf4
2020-10-21 19:53:50,672 # 	  6 | at86rf215 [sub GHz]  | bl rx    _ |   2 |   1024 (  536) (  488) | 0x20001200 | 0x200014c4
2020-10-21 19:53:50,687 # 	  7 | at86rf215 [2.4 GHz]  | bl rx    _ |   2 |   1024 (  536) (  488) | 0x20001600 | 0x200018c4
2020-10-21 19:53:50,689 # 	    | SUM                  |            |     |   8704 ( 3160) ( 5544)
```
2020-10-21 19:59:42 +02:00
Benjamin Valentin
671c882d4f gnrc_netif_ieee802154_create: make name argument const
`gnrc_netif_create()` already expects a `const` name parameter,
also make the name parameter in `gnrc_netif_ieee802154_create()` const.
2020-10-21 19:49:34 +02:00
Martine Lenders
5d1d38d8f7
Merge pull request #15207 from chrysn-pull-requests/rpl-no-race
gnrc_rpl: Check for race against initializer thread
2020-10-20 19:04:14 +02:00
chrysn
7ed50c3d18 gnrc_rpl: Lock against race against initializer thread
When gnrc_rpl_init was called from a thread with higher priority than
the RPL thread, the initializer's call to gnrc_netreg_register would be
executed before the event loop even had a chance to set up its message
queue.

The added short-lived lock makes it work from threads of any priority.
2020-10-20 16:14:04 +02:00
János Brodbeck
5a75eb29c3
net/netif/gnrc_netif: allow larger IPv6 MTU than minimum for BLE 2020-10-20 14:20:51 +02:00
Jose Alamos
217dc9e6e0 ieee802154/submac: receive IEEE 802.15.4 addresses on init 2020-10-19 15:18:35 +02:00
Jose Alamos
46600adf22 nrf802154: unify auto_init for HAL and netdev 2020-10-19 15:18:35 +02:00
Jose Alamos
c1a9d352f3 cc2538_rf: unify auto_init for HAL and netdev 2020-10-19 15:18:34 +02:00
José Alamos
fc8961ec27
Merge pull request #15081 from akshaim/PR_LoRaWAN_IN_865
net/lorawan : Support for IN865 region, Improve debugging
2020-10-16 12:22:18 +02:00
benpicco
0f726b17d5
Merge pull request #15228 from jia200x/pr/hal_read_func
ieee802154/radio: add `read` function
2020-10-15 21:31:10 +02:00
benpicco
3714b97e17
Merge pull request #15230 from brummer-simon/gnrc_tcp-internal_api_cleanup
GNRC TCP: internal api cleanup
2020-10-15 21:27:50 +02:00
Simon Brummer
55a5062292 gnrc_tcp: cleanup internal api 2020-10-15 15:16:03 +02:00
benpicco
4edf5c7cbd
Merge pull request #15208 from benpicco/ieee802154_submac-etx
netdev/ieee802154_submac: add retransmission reporting
2020-10-15 14:31:54 +02:00
Benjamin Valentin
87151db891 ieee802154_submac: mark retrans as invalid if driver does not report it 2020-10-15 13:26:42 +02:00
Marian Buschsieweke
c38ca6d718
Merge pull request #15212 from miri64/gnrc_pkt/enh/pkt-list-ops
gnrc_pkt: introduce packet list operations
2020-10-15 12:13:03 +02:00
Jose Alamos
b796d9805d ieee802154/submac: adapt to radio hal API change 2020-10-14 18:07:28 +02:00
Jose Alamos
ee5adad401 ieee802154/radio: replace indication mechanism 2020-10-14 18:07:28 +02:00
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
b32bc3dbd1 drivers/kw41zrf: register with netdev 2020-10-08 16:19:23 +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
Benjamin Valentin
471e81d544 ieee802154: add definitions & config options for MR-FSK 2020-09-07 15:40:56 +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
Leandro Lanzieri
7f1f8ae576
Merge pull request #14652 from akshaim/Kconfig_netif
net/netif : Expose configurations to Kconfig
2020-08-03 20:03:33 +02:00
Martine Lenders
b043e1fa64
Merge pull request #14683 from miri64/gnrc_sixlowpan_frag_vrb/fix/cppcheck-warning
gnrc_sixlowpan_frag_vrb: fix cppcheck warning
2020-08-03 13:15:52 +02:00
Akshai M
1a844b3df6 net/netif : Expose configurations to Kconfig
Co-authored-by: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-08-03 16:10:00 +05:30
Akshai M
b52e3e1587 net/netif : Move 'NETIF_NAMELENMAX' to 'CONFIG_' 2020-08-03 16:09:21 +05:30
Martine S. Lenders
5885293e9e
gnrc_sixlowpan_frag_vrb: fix cppcheck warning
... which wasn't a false positive after all.
2020-08-03 12:29:06 +02:00
Benjamin Valentin
6af92ee113 gnrc/nib: fix _idx_dsts() calculation
Using pointer difference already gives us the number of elements of
size of what the pointer is pointing to.
Dividing by size will lead to the wrong (always 0) result.
2020-08-03 11:35:54 +02:00
Leandro Lanzieri
224e2c977d
Merge pull request #14509 from jia200x/pr/lora_implicit_mode
sx127x: add support for implicit header mode
2020-07-29 12:52:00 +02:00
Jose Alamos
f3bdf7232d netopt: add NETOPT_PDU_SIZE 2020-07-29 11:57:52 +02:00
Akshai M
0413a5881f net/dhcpv6 : Expose to Kconfig
Expose configurations to Kconfig. Add conditional CFLAGS to avoid
conflicts with Kconfig.
2020-07-24 00:23:08 +05:30
Akshai M
1c37e11c0e net/dhcpv6 : Move 'DHCPV6_CLIENT_PFX_LEASE_MAX' to 'CONFIG_' 2020-07-23 21:10:26 +05:30
Leandro Lanzieri
25723267f7
Merge pull request #14567 from akshaim/Kconfig_l2filter
net/l2filter : Expose configurations to Kconfig
2020-07-22 15:11:24 +02:00
Akshai M
9bed3c64e9 net/l2filter : Expose configurations to Kconfig
Co-authored-by: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-07-22 00:26:09 +05:30
Akshai M
caab4cd8c5 net/l2filter : Move 'L2FILTER_LISTSIZE' to 'CONFIG_' 2020-07-22 00:26:09 +05:30
Akshai M
0d52f81935 net/l2filter : Move 'L2FILTER_ADDR_MAXLEN' to 'CONFIG_' 2020-07-22 00:26:09 +05:30
Leandro Lanzieri
3920dd8c20
net/gcoap: Remove gcoap_finish 2020-07-17 16:33:19 +02:00
Leandro Lanzieri
60f7e3aadf
net/cord/lc: Replace usage of deprecated gcoap_finish 2020-07-17 10:01:55 +02:00
Leandro Lanzieri
f92c693682
net/cord/epsim: Replace usage of deprecated gcoap_finish 2020-07-17 09:51:34 +02:00
Akshai M
1ad76240c5 net/credman : Expose to Kconfig
Expose 'CONFIG_CREDMAN_MAX_CREDENTIALS' to Kconfig
2020-07-14 21:26:19 +05:30
Akshai M
774c18ea79 net/credman : Move 'CREDMAN_MAX_CREDENTIALS' to 'CONFIG_' 2020-07-14 21:26:19 +05:30
Jose Alamos
96ee1d2bf8 net/gnrc_netif_lorawan: fix unaligned copy 2020-07-13 16:57:26 +02:00
Leandro Lanzieri
cdc252ab7b
net/gnrc/nettest: Remove module
This module has been deprecated and scheduled for removal in release
2020.07.
2020-07-10 15:58:54 +02:00
Akshai M
c75df9c5ca gnrc/lwmac : Expose to Kconfig
Expose configurations to Kconfig
2020-07-08 10:04:45 +05:30
Akshai M
a05eb3b4ad gnrc/lwmac : Move GNRC_LWMAC_MAX_DATA_TX_RETRIES to 'CONFIG_' 2020-07-08 10:04:45 +05:30
Akshai M
cda7791a4b gnrc/lwmac : Move GNRC_LWMAC_DATA_CSMA_RETRIES to 'CONFIG_' 2020-07-08 10:04:45 +05:30
Akshai M
e241141a92 gnrc/lwmac : Move GNRC_LWMAC_DATA_DELAY_US to 'CONFIG_' 2020-07-08 10:04:45 +05:30
Akshai M
1fe5acddc6 gnrc/lwmac : Move GNRC_LWMAC_WR_PREPARATION_US to 'CONFIG_' 2020-07-08 10:04:45 +05:30
Akshai M
85948925ba gnrc/lwmac : Move GNRC_LWMAC_TIMEOUT_COUNT to 'CONFIG_' 2020-07-08 10:04:45 +05:30
Akshai M
3bd8dd4aa2 gnrc/lwmac : Move GNRC_LWMAC_BROADCAST_CSMA_RETRIES to 'CONFIG_' 2020-07-08 10:04:45 +05:30
Akshai M
65fa832e40 gnrc/lwmac : Move GNRC_LWMAC_MAX_RX_EXTENSION_NUM to 'CONFIG' 2020-07-08 10:04:45 +05:30
Akshai M
e38dca5d42 gnrc/lwmac : Move GNRC_LWMAC_TIME_BETWEEN_WR_US to 'CONFIG_' 2020-07-08 10:04:45 +05:30
Akshai M
1be3264ab3 gnrc/lwmac : Move GNRC_LWMAC_WAKEUP_INTERVAL_US to 'CONFIG_' 2020-07-08 10:04:45 +05:30
Akshai M
e9f270c78a net/asymcute : Expose to Kconfig 2020-07-07 16:27:57 +05:30
Akshai M
8a6d2882f7 net/asymcute : Move 'ASYMCUTE_KEEPALIVE_PING' to 'CONFIG_' 2020-07-07 16:27:57 +05:30
Akshai M
a1df2e33b0 net/asymcute : Move 'ASYMCUTE_N_RETRY' to 'CONFIG_' 2020-07-07 16:27:57 +05:30
Akshai M
6dc5747c4b net/asymcute : Move 'ASYMCUTE_T_RETRY' to 'CONFIG_' 2020-07-07 16:27:57 +05:30
Akshai M
1753b84cba net/asymcute : Move 'ASYMCUTE_KEEPALIVE' to 'CONFIG_' 2020-07-07 16:27:57 +05:30
Akshai M
7ba0d3c76f net/asymcute : Move 'ASYMCUTE_TOPIC_MAXLEN' to 'CONFIG_' 2020-07-07 16:27:57 +05:30
Martine Lenders
fdcf53e514
Merge pull request #10222 from pokgak/pr/add-cord-lc
net: add CoRE RD lookup client implementation
2020-07-07 12:44:37 +02:00
Aiman Ismail
869052dcd8 cord: add RD lookup client 2020-07-07 10:54:10 +02:00
Simon Brummer
122616ae7d gnrc_tcp: add retransmission timer 2020-07-06 21:18:23 +02:00
Simon Brummer
67b22d8783 gnrc_tcp: requested changes 2020-07-04 09:21:50 +02:00
Simon Brummer
aa1c2e9cba gnrc_tcp: rewrite API internal messaging 2020-07-04 09:20:43 +02:00
Martine Lenders
1245065afb
Merge pull request #14291 from brummer-simon/gnrc_tcp-move_rcv_buffer_handling
gnrc_tcp: rewrite recv buffer allocation/returning
2020-07-01 17:19:28 +02:00
Simon Brummer
9fe91f5c44 gnrc_tcp: rewrite recv buffer allocation/returning 2020-07-01 15:47:23 +02:00
Gunar Schorcht
b51ac69d0a sys/net/gnrc: add netif support for ATWINC15x0 netdef driver 2020-06-26 12:33:38 +02:00
Gunar Schorcht
c95ebb63b4 sys/net: add NETOPT_RSSI for wireless channels 2020-06-26 12:33:38 +02:00
Martine Lenders
2bb9a392b4
Merge pull request #14358 from gschorcht/sys/net/gnrc/icmpv6/conditional_min_definition
gnrc/icmpv6: conditional definition of the MIN macro
2020-06-25 19:43:44 +02:00
Gunar Schorcht
a440ae7bd9 gnrc/icmpv6: redefinition of MIN macro
Since `min(a,b)` is a very frequently used function, several libraries such as ESP8266 SDK define a `MIN` macro in their header files. Therefore the `MIN` macro should be undefined before its definition to avoid compilation errors if it is defined anywhere else before.
2020-06-25 17:31:07 +02:00
Martine Lenders
49ab078c03
Merge pull request #14349 from miri64/lwip/enh/dual-stack
pkg/lwip: enable IPv4/IPv6 dual stack mode
2020-06-25 13:30:07 +02:00
Martine Lenders
2b1be158e3
Merge pull request #13837 from benpicco/dhcpv6-stale_replies
sys/net/dhcpv6: discard stale replies
2020-06-25 12:18:31 +02:00
Martine S. Lenders
ae7944f115
sock_util: introduce endpoint conversion aliases for TCP 2020-06-24 17:21:29 +02:00
Martine S. Lenders
78c816c6af
sock_util: fix IPv4 address parsing
There is no `SOCK_HAS_IPV4` define.
2020-06-24 18:36:42 +02:00
Benjamin Valentin
2d1160426d sys/net/dhcpv6: discard stale replies
The DHCPv6 server might send reponses multiple times.
The DHCPv6 client will only handle the first response, if additional
responses are comming in they are left in the RX queue.

That results in the client always reading the response of a previous
transaction on any subsequent transactions.
In this case the client will try again, creating a new transaction - that
will again only read the previous response.

To fix this, discard previous responses by flushing the RX queue before
sending a new message to the DHCPv6 server.

fixes #13834
2020-06-21 22:07:32 +02:00
Akshai M
d2342b6e26 gnrc/gomach : Expose configurations to Kconfig 2020-06-18 21:21:50 +05:30
Akshai M
676a39cebb gnrc/gomach : Move GNRC_GOMACH_MAX_T2U_RETYR_THRESHOLD to 'CONFIG_' 2020-06-18 21:21:50 +05:30
Akshai M
89360577a0 gnrc/gomach : Move GNRC_GOMACH_T2U_RETYR_THRESHOLD to 'CONFIG_' 2020-06-18 21:21:50 +05:30
Akshai M
b9773263c0 gnrc/gomach : Move GNRC_GOMACH_REPHASELOCK_THRESHOLD to 'CONFIG_' 2020-06-18 21:21:50 +05:30
Akshai M
6b10059b8a gnrc/gomach : Move GNRC_GOMACH_MAX_ALLOC_SENDER_NUM to 'CONFIG_' 2020-06-18 21:21:50 +05:30
Akshai M
3274a6b83e gnrc/gomach : Move GNRC_GOMACH_RX_DUPCHK_UNIT_LIFE to 'CONFIG_' 2020-06-18 21:21:50 +05:30
Akshai M
a8cad3715d gnrc/gomach : Move GNRC_GOMACH_CP_EXTEND_THRESHOLD to 'CONFIG_' 2020-06-18 21:21:50 +05:30
Akshai M
62a3be9eee gnrc/gomach : Move GNRC_GOMACH_TX_BUSY_THRESHOLD to 'CONFIG_' 2020-06-18 21:21:50 +05:30
Akshai M
025c1e0509 gnrc/gomach : Move GNRC_GOMACH_VTDMA_SLOT_SIZE_US to 'CONFIG_' 2020-06-18 21:21:50 +05:30
Akshai M
9b7b3fef42 gnrc/gomach : Move GNRC_GOMACH_BCAST_INTERVAL_US to 'CONFIG_' 2020-06-18 21:15:28 +05:30
Akshai M
6aa0418da4 gnrc/gomach : Move GNRC_GOMACH_PREAMBLE_INTERVAL_US to 'CONFIG_' 2020-06-18 21:15:28 +05:30
Akshai M
48a2fc57e0 gnrc/gomach : Move GNRC_GOMACH_MAX_PREAM_INTERVAL_US to 'CONFIG_' 2020-06-18 21:15:28 +05:30
Akshai M
a0a6dc0e4e gnrc/gomach : Move GNRC_GOMACH_NO_TX_ISR_US to 'CONFIG_' 2020-06-18 21:15:28 +05:30
Akshai M
ae175987d5 gnrc/gomach : Move GNRC_GOMACH_WAIT_RX_END_US to 'CONFIG_' 2020-06-18 21:15:28 +05:30
Akshai M
588200f515 gnrc/gomach : Move GNRC_GOMACH_CP_MIN_GAP_US to 'CONFIG_' 2020-06-18 21:15:28 +05:30
Akshai M
1505ea8e11 gnrc/gomach : Move GNRC_GOMACH_CP_RANDOM_END_US to 'CONIFG_' 2020-06-18 21:15:28 +05:30
Akshai M
e6da0bab49 gnrc/gomach : Move GNRC_GOMACH_SUPERFRAME_DURATION_US to 'CONFIG_' 2020-06-18 21:15:28 +05:30
Akshai M
ab3e197c3f gnrc/gomach : Move GNRC_GOMACH_CP_DURATION_US to 'CONFIG_' 2020-06-18 21:07:30 +05:30
Martine Lenders
09d097c934
Merge pull request #14214 from btcven/2020_06_06-6lo-mtu
net/gnrc/netif: add option for non-std 6lo MTU
2020-06-18 15:25:01 +02:00
Jean Pierre Dudey
e1ef082d49
net/gnrc/netif: disable 6lo fragmentation when unneeded
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2020-06-18 07:16:16 -05:00
Jean Pierre Dudey
d47f4a1caa
net/gnrc/netif: add option for non-std 6lo MTU
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2020-06-18 07:16:16 -05:00
Leandro Lanzieri
3ce8efd4cb
Merge pull request #14138 from akshaim/Kconfig_mac
gnrc/mac : Expose configurations to Kconfig
2020-06-17 18:12:40 +02:00
Akshai M
25f778b552 gnrc/mac : Expose to Kconfig
Expose configurations to Kconfig

Co-authored-by: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-06-15 12:28:57 +05:30
Akshai M
9ddc9e0633 gnrc/mac : Move GNRC_MAC_NEIGHBOR_COUNT to 'CONFIG_' 2020-06-15 12:19:37 +05:30
Leandro Lanzieri
dbfe0d8ea1
gnrc/sock: Configure mbox size with exponent and add config doc group
This changes the configuration macro to be the exponent of 2^n, as the
mbox buffer size needs to be always power of 2. The macro now has the
GNRC prefix.

Also a compile configuration documentation group is created.
2020-06-15 07:30:54 +02:00
Leandro Lanzieri
d4cac38cc9
gnrc/tcp: Configure mbox size with exponent and add config doc group
This changes the configuration macro to be the exponent of 2^n, as the
mbox buffer size needs to be always power of 2.

Also a compile configuration documentation group is created.
2020-06-15 07:30:54 +02:00
Leandro Lanzieri
375cad38df
gnrc/sixlowpan: Configure queue size with exponent
This changes the configuration macro to be the exponent of 2^n, as the
message queue size needs to be always power of 2.
2020-06-15 07:30:52 +02:00
Leandro Lanzieri
05962fe3ef
gnrc/netif: Configure queue size with exponent
This changes the configuration macro to be the exponent of 2^n, as the
message queue size needs to be always power of 2.
2020-06-15 07:30:52 +02:00
Leandro Lanzieri
3dc7865c4e
gnrc/rpl: Configure queue size with exponent
This changes the configuration macro to be the exponent of 2^n, as the
message queue size needs to be always power of 2.
2020-06-15 07:30:51 +02:00
Leandro Lanzieri
b0168f5fdd
gnrc/ipv6: Configure queue size with exponent
This changes the configuration macro to be the exponent of 2^n, as the
message queue size needs to be always power of 2.
2020-06-15 07:30:50 +02:00
Akshai M
6450d9989e gnrc/pktbuf : Set Kconfig defaults and conditions
Set Kconfig defaults for CPU and conditions to avoid
conflict with CFLAGS

Co-authored-by: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-06-11 14:47:27 +05:30
Akshai M
cabcfae9e0 gnrc/pktbuf : Expose to Kconfig
Expose CONF_GNRC_PKTBUF_SIZE to Kconfig
2020-06-11 14:47:19 +05:30
Akshai M
5523d119b6 gnrc/pktbuf : Move 'GNRC_PKTBUF_SIZE' to 'CONFIG_' 2020-06-11 14:46:36 +05:30
Akshai M
065345a360 net/csma_sender:Expose configurations to Kconfig 2020-06-10 21:02:20 +05:30
Akshai M
55c5461073 net/csma_sender:Move CSMA_SENDER_BACKOFF_PERIOD_UNIT
Move CSMA_SENDER_BACKOFF_PERIOD_UNIT to 'CONFIG_' namespace
2020-06-10 20:37:54 +05:30
Akshai M
f130303ee0 net/csma_sender:Move CSMA_SENDER_MAX_BACKOFFS_DEFAULT
Move CSMA_SENDER_MAX_BACKOFFS_DEFAULT  to 'CONFIG_' namespace
2020-06-10 20:37:54 +05:30
Akshai M
ced72c9cf4 net/csma_sender:Move CSMA_SENDER_MAX_BE_DEFAULT
Move CSMA_SENDER_MAX_BE_DEFAULT to 'CONFIG_' namespace
2020-06-10 20:38:33 +05:30
Akshai M
1b1d2d7e3b net/csma_sender:Move CSMA_SENDER_MIN_BE_DEFAULT
Move CSMA_SENDER_MIN_BE_DEFAULT to 'CONFIG_' namespace
2020-06-10 20:38:04 +05:30
Martine Lenders
f9bed00701
Merge pull request #12738 from miri64/netif/enh/id-functions
netif: add functions to get and get by identifier
2020-06-09 15:12:06 +02:00
Martine Lenders
9270f31859
Merge pull request #14071 from akshaim/Kconfig_pktdump
gnrc/pktdump : Expose Configurations to Kconfig
2020-06-09 11:13:36 +02:00
Akshai M
27e0d7cf11 gnrc/pktdump : Add 'CONFIG_' & expose to Kconfig
Introduced 'GNRC_PKTDUMP_MSG_QUEUE_SIZE_EXP' to hold exponent
value and made GNRC_PKTDUMP_MSG_QUEUE_SIZE dependant on
GNRC_PKTDUMP_MSG_QUEUE_SIZE_EXP.

Moved 'GNRC_PKTDUMP_MSG_QUEUE_SIZE_EXP' to 'CONFIG_' namespace.

Exposed configurations to Kconfig

Co-authored-by: Martine Lenders <mail@martine-lenders.eu>

Co-authored-by: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-06-09 13:31:29 +05:30
821eb5bc76
sys/net/auto_init: remove useless preprocessor directives
The files are now built only when the corresponding module is used
2020-06-08 11:10:39 +02:00
29c5c54fe2
sys/net/auto_init: only build files when related module is used 2020-06-08 11:10:22 +02:00
3fe35e755c
sys/net/auto_init: rename cdcecm source file
Use a name that corresponds to the related module name
2020-06-08 10:27:35 +02:00
Jean Pierre Dudey
60385d2c24
net/gnrc/netif: limit 6lo frag size
The 6Lo network interfaces can only support a max_frag_size of
SIXLOWPAN_FRAG_MAX_LEN (2047 bytes) as the length field is only 11-bits.

This limits the max_frag_size in the case that the L2-PDU is higher than
that.

Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2020-06-07 15:43:33 -05:00
Ken Bannister
f8dfa52b2d
Merge pull request #14075 from mjurczak/bugfix/nanocoap-token-overflow
nanocoap: bugfix token overflow
2020-06-04 22:01:18 -04:00
benpicco
3a1ee4983c
Merge pull request #14010 from benpicco/at86rf215-mr-ofdm
drivers/at86rf215: implement MR-OFDM
2020-06-03 16:39:04 +02:00
Benjamin Valentin
25a34a1897 ieee802154: add definitions & config options for MR-OFDM
Define options for IEEE 802.15.4g MR-OFDM as well as shell commands
to set them via ifconfig.
2020-06-03 15:58:50 +02:00
Leandro Lanzieri
7262b1d4d9
Merge pull request #14126 from akshaim/Kconfig_tcp
gnrc/tcp : Expose configurations to Kconfig
2020-06-03 08:32:26 +02:00
Francisco
cf7125d4cf
Merge pull request #14172 from benpicco/sys/net/gnrc/netif/gnrc_netif_relax_assert
gnrc_netif: relax 6lo MTU assertion for 802.15.4g
2020-06-02 13:53:36 +02:00
Akshai M
c191b009a3 gnrc/tcp : Expose to Kconfig
Expose configurations to Kconfig
2020-06-02 15:46:44 +05:30
Akshai M
badeb74d16 gnrc/tcp : Move GNRC_TCP_DEFAULT_WINDOW to 'CONFIG_' 2020-06-02 15:46:44 +05:30
Akshai M
49df2258e3 gnrc/tcp : Move GNRC_TCP_PROBE_UPPER_BOUND to 'CONFIG_' 2020-06-02 15:46:44 +05:30
Akshai M
d6904349a9 gnrc/tcp : Move CONFIG_GNRC_TCP_PROBE_LOWER_BOUND to 'CONFIG_' 2020-06-02 15:46:44 +05:30
Akshai M
27f9d2def6 gnrc/tcp : Move GNRC_TCP_RTO_K to 'CONFIG_' 2020-06-02 15:46:44 +05:30
Akshai M
e42cc62edc gnrc/tcp : Move GNRC_TCP_RTO_B_DIV to 'CONFIG_' 2020-06-02 15:46:44 +05:30
Akshai M
f704a1e5c9 gnrc/tcp : Move GNRC_TCP_RTO_A_DIV to 'CONFIG_' 2020-06-02 15:46:44 +05:30
Akshai M
f25c21988d gnrc/tcp : Move GNRC_TCP_RTO_GRANULARITY to 'CONFIG_' 2020-06-02 15:46:44 +05:30
Akshai M
c599c65124 gnrc/tcp : Move GNRC_TCP_RTO_UPPER_BOUND to 'CONFIG_' 2020-06-02 15:46:44 +05:30
Akshai M
ea79c71ce8 gnrc/tcp : Move GNRC_TCP_RTO_LOWER_BOUND to 'CONFIG_' 2020-06-02 15:46:44 +05:30
Akshai M
648247592c gnrc/tcp : Move GNRC_TCP_RCV_BUFFERS to 'CONFIG_' 2020-06-02 15:46:44 +05:30
Akshai M
e8b13ab44d gnrc/tcp : Move GNRC_TCP_MSS to 'CONFIG_' 2020-06-02 15:46:44 +05:30
Akshai M
0b3e0de03e gnrc/tcp : Move GNRC_TCP_MSL to 'CONFIG_' 2020-06-02 15:46:44 +05:30
Akshai M
01dd8e4fa8 gnrc/tcp : Move GNRC_TCP_CONNECTION_TIMEOUT_DURATION to 'CONFIG_' 2020-06-02 15:46:44 +05:30
Benjamin Valentin
840be824d4 gnrc_netif: relax 6lo MTU assertion for 802.15.4g
802.15.4g devices have a 2047 byte PDU.
So the assertion `netif->ipv6.mtu == IPV6_MIN_MTU` is too strict here.

This is only enforced on init, so changing the modulation at run-time
did not catch this bug.

To test, use e.g. `at86rf215` with

    CFLAGS += -DAT86RF215_DEFAULT_PHY_MODE=IEEE802154_PHY_MR_OQPSK

fixes #14164
2020-05-29 15:59:23 +02:00
Sören Tempel
bab916d084 sock_async_evnet: add comment to fuzzing termination condition 2020-05-26 17:24:45 +02:00
Sören Tempel
a8b0491751 gnrc_pktbuf_malloc: add comment to fuzzing termination condition 2020-05-26 17:24:44 +02:00
Sören Tempel
f37c1fd9dd gnrc_sock: add comment to fuzzing termination condition 2020-05-26 17:24:43 +02:00
Sören Tempel
3314388417 sock_async_event: Implement termination condition for fuzzing
See: 65c7bbf76d.
2020-05-26 17:24:40 +02:00
Sören Tempel
729e0f95ac gnrc_sock: Export prevpkt and rename it to gnrc_sock_prevpkt
This is a perquisite for fuzzing applications using sock_async_event.
2020-05-26 17:24:39 +02:00
Maciej Jurczak
edf016a6cb nanocoap: Added token length validation.
Implemented a check in coap_parse() to verify if TKL value is within valid range as specified by RFC7252. The token length must be within 0-8 range, any other value should be considered as invalid and the packet should produce message format error.
A test case was added to tests-nanocoap.c to verify correct behavior in case of TKL in range and out of range.

Update sys/net/application_layer/nanocoap/nanocoap.c

Prefixed debug message with module name and abbreviations expanded.

Co-authored-by: Martine Lenders <mail@martine-lenders.eu>

Update sys/net/application_layer/nanocoap/nanocoap.c

Prefixed debug message with module name and abbreviations expanded.

Co-authored-by: Martine Lenders <mail@martine-lenders.eu>
2020-05-25 22:44:50 +02:00
Maciej Jurczak
3be2c51c42 nanocoap: Fixed buffer read out of the input packet bounds issue.
If token length in the header was longer than actually provided in the following payload, read out of the input buffer bounds or processing of data beyond the actual input packet bound could happen. In order to remove the risk, the options loop condition was modified to early detect the condition and abort packet processing if a malformed packet is detected.

nanocoap: Added pointer range check after token length parsing.

Added a check to verify if the current packet parsing pointer is still within the packet boundaries after incrementing by the token length declared in the header. If packet is malformed an error code is returned.

nanocoap: Combined packet length checks

Combined packet length checks after reading token length and processing options into a single packet length validation after the options parsing loop. The entry to the options parsing loop is safe as the while loop condition protects against entering the loop if the token length was invalid.
2020-05-25 22:44:39 +02:00
benpicco
70543bba1d
Merge pull request #13275 from miri64/gnrc_ipv6_ext_opt/feat/initial
gnrc_ipv6_ext_opt: initial import
2020-05-20 14:35:58 +02:00
Martine S. Lenders
d04621fc43
gnrc_ipv6_ext_opt: initial import
This provides header parsing for IPv6 hop-by-hop and destination
options according to [RFC 8200].

[RFC 8200]: https://tools.ietf.org/html/rfc8200#section-4.2
2020-05-20 12:34:04 +02:00
Benjamin Valentin
3974a04623 gnrc/nib: add NIB event bus
Add a message bus where threads can listen for nib events.

Currently only the GNRC_IPV6_NIB_EVENT_ADDR_VALID event is
implemented which informs subscribers that an address got
valid.
2020-05-20 10:44:11 +02:00
Benjamin Valentin
85100ad61a gnrc_netif: add message bus to interface
Allow threads to listen for events on an interface.
2020-05-20 10:44:11 +02:00
benpicco
f3dddd6127
Merge pull request #14068 from miri64/sock_util/enh/netif-str2ep
sock_util: add interface descriptor parsing to str2ep
2020-05-19 23:59:32 +02:00
Leandro Lanzieri
16113afb1e
Merge pull request #14026 from miri64/gnrc_netif/fix/deps
gnrc_netif: use gnrc_netif-submodules to pull in upper-layer struct members
2020-05-19 16:36:18 +02:00
Martine S. Lenders
a48629b395
gnrc_netif: introduce gnrc_netif_ipv6 pseudo-module for IPv6 members
This aims to reduce circular dependencies in GNRC.
2020-05-19 16:10:59 +02:00
Martine S. Lenders
9801a439fc
gnrc_netif: introduce gnrc_netif_6lo pseudo-module for 6LoWPAN members
This aims to reduce circular dependencies in GNRC.
2020-05-19 16:10:59 +02:00
Martine S. Lenders
0d2f0a5ba4
gnrc_netif: fix gnrc_netif_lorawan dependencies 2020-05-19 16:10:58 +02:00
Martine S. Lenders
a603504a6e
sock_util: add interface descriptor parsing to str2ep 2020-05-19 14:57:41 +02:00
Michel Rottleuthner
740bb4e32e sys/net/gnrc/sock: release pktsnip when message queue is full 2020-05-15 18:24:42 +02:00
Ken Bannister
f81dda2174
Merge pull request #14059 from miri64/gnrc_sock/fix/re-recv-signal
gnrc_sock: re-issue MSG_RECV event if there are still received messages after `*_recv()` was called.
2020-05-15 11:38:32 -04:00
Leandro Lanzieri
4b3bfd3c83
gnrc/rpl: Expose configurations to Kconfig 2020-05-14 15:57:02 +02:00
Leandro Lanzieri
8ce77f2045
gnrc/rpl: Move GNRC_RPL_MSG_QUEUE_SIZE to 'CONFIG_' namespace 2020-05-14 15:57:02 +02:00
Leandro Lanzieri
2c04f54d28
gnrc/rpl: Move GNRC_RPL_DEFAULT_NETIF to 'CONFIG_' namespace 2020-05-14 15:57:01 +02:00
Leandro Lanzieri
d075b4dfe9
gnrc/rpl: Move GNRC_RPL_PARENT_TIMEOUT_DIS_RETRIES to 'CONFIG_' 2020-05-14 15:57:01 +02:00
Leandro Lanzieri
e547061d19
gnrc/rpl: Move GNRC_RPL_DEFAULT_INSTANCE to 'CONFIG_' namespace 2020-05-14 15:57:01 +02:00
Leandro Lanzieri
5a28e7cad4
gnrc/rpl: Move GNRC_RPL_DEFAULT_MAX_RANK_INCREASE to 'CONFIG_' 2020-05-14 15:57:00 +02:00
Leandro Lanzieri
1b6f915e0c
gnrc/rpl: Move GNRC_RPL_DEFAULT_MIN_HOP_RANK_INCREASE to 'CONFIG_' 2020-05-14 15:57:00 +02:00
Leandro Lanzieri
cd50686eb6
gnrc/rpl: Move GNRC_RPL_WITHOUT_VALIDATION to 'CONFIG_' namespace
Also check its value using IS_ACTIVE when possible.
2020-05-14 15:57:00 +02:00
Leandro Lanzieri
02b10105c1
gnrc/rpl: Move GNRC_RPL_DODAG_CONF_OPTIONAL_ON_JOIN to 'CONFIG_' 2020-05-14 15:56:59 +02:00
Leandro Lanzieri
dfa722c519
gnrc/rpl: Move GNRC_RPL_WITHOUT_PIO to 'CONFIG_' namespace
Also evaluate its value using IS_ACTIVE when possible.
2020-05-14 15:56:59 +02:00
Leandro Lanzieri
908309f714
gnrc/rpl: Move GNRC_RPL_CLEANUP_TIME to 'CONFIG_' namespace 2020-05-14 15:56:58 +02:00
Leandro Lanzieri
33189b869e
gnrc/rpl: Move GNRC_RPL_DAO_DELAY_JITTER to 'CONFIG_' namespace 2020-05-14 15:56:58 +02:00
Leandro Lanzieri
3deab70a4c
gnrc/rpl: Move GNRC_RPL_DAO_DELAY_DEFAULT to 'CONFIG_' namespace 2020-05-14 15:56:57 +02:00
Leandro Lanzieri
c8fb88d2f0
gnrc/rpl: Move GNRC_RPL_DAO_DELAY_LONG to 'CONFIG_' namespace 2020-05-14 15:56:57 +02:00
Leandro Lanzieri
c162631aa3
gnrc/rpl: Move GNRC_RPL_DAO_ACK_DELAY to 'CONFIG_' 2020-05-14 15:56:57 +02:00
Leandro Lanzieri
df29a769ba
gnrc/rpl: Move GNRC_RPL_DAO_SEND_RETRIES to 'CONFIG_' namespace 2020-05-14 15:56:56 +02:00
Leandro Lanzieri
51939c3608
gnrc/rpl: Move GNRC_RPL_LIFETIME_UNIT to 'CONFIG_' namespace 2020-05-14 15:56:56 +02:00
Leandro Lanzieri
3b06b41fa9
gnrc/rpl: Move GNRC_RPL_DEFAULT_LIFETIME to 'CONFIG_' namespace 2020-05-14 15:56:56 +02:00
Leandro Lanzieri
c61b6bca38
gnrc/rpl: Move GNRC_RPL_DEFAULT_DIO_REDUNDANCY_CONSTANT to 'CONFIG_' 2020-05-14 15:56:55 +02:00
Leandro Lanzieri
f353ca8225
gnrc/rpl: Move GNRC_RPL_DEFAULT_DIO_INTERVAL_MIN to 'CONFIG_' namespace 2020-05-14 15:56:55 +02:00
Leandro Lanzieri
7216c21dbc
gnrc/rpl: Move GNRC_RPL_DEFAULT_DIO_INTERVAL_DOUBLINGS to 'CONFIG_' 2020-05-14 15:56:52 +02:00
Martine Lenders
a6fe69b0e8
Merge pull request #13740 from miri64/gnrc_ipv6_nib/fix/abr-add-pio-iface
gnrc_ipv6_nib: only add prefix of same interface to ABR
2020-05-12 15:43:45 +02:00
Martine S. Lenders
d66583b542
gnrc_sock: re-issue MSG_RECV event if there are still received messages
... after `*_recv()` was called.

This prevents a client from needing to call `*_recv()` in a loop.
2020-05-12 14:01:56 +02:00
Martine Lenders
4e6df34576
gnrc_ipv6_nib: only add prefix of same interface to ABR
It doesn't make sense for an Authoritative Border Router to manage a
prefix that does not belong to the border router's downstream
interface.
2020-05-12 13:06:20 +02:00
José Alamos
089e0a2b44
Merge pull request #14048 from jue89/fix/gnrc_lorawan_abp
net/gnrc/netif/lorawan: fix ABP device activation
2020-05-11 11:34:59 +02:00
Juergen Fitschen
1eb3b596c4 net/gnrc/netif/lorawan: fixed ABP device activation 2020-05-09 20:16:29 +02:00
Juergen Fitschen
255c76ff35 net/gnrc/netif/lorawan: fixed deprecated NETOPT_LINK_CONNECTED 2020-05-09 20:11:16 +02:00
Leandro Lanzieri
2d1d13d452
Merge pull request #14028 from miri64/gnrc_pktdump/fix/opt-deps
gnrc_pktdump: fix dependencies
2020-05-08 08:53:31 +02:00
Martine Lenders
18bd56d2d9
Merge pull request #13979 from benpicco/net/gnrc/netif/6lo-frag_size
gnrc/netif: 6lo: use 16 bit for max_frag_size
2020-05-06 12:43:02 +02:00
8ffd34ddd0
Merge pull request #12776 from maribu/test_event_wait_timeout
tests/event_wait_timeout: Fix for 8bit platforms
2020-05-05 21:33:06 +02:00
Martine S. Lenders
a349748354
gnrc_pktdump: reorder switch-cases in accordance with enum order 2020-05-05 21:05:00 +02:00
Martine S. Lenders
d43384d238
gnrc_pktdump: remove some duplicate calls to od_hex_dump()
`od_hex_dump()` is called if `hdr_len < pkt->size` to print the rest
after `hdr_len` of `pkt`. So if we just leave `hdr_len = 0` instead of
calling `od_hex_dump()` for every other NETTYPE, we achieve the same
effect.

As it is more effective (and already done in some cases) to re-set
`hdr_len` when the header was printed, we initialize `hdr_len` first
with 0 now.
2020-05-05 21:05:00 +02:00
Martine S. Lenders
5414164119
gnrc_pktdump: use gnrc_nettype_% module where appropriate 2020-05-05 21:05:00 +02:00
Ken Bannister
595e8c631f
Merge pull request #13726 from benpicco/nanocoap-payload_helper
nanocoap: add payload helper functions
2020-05-03 08:56:30 -04:00
Benjamin Valentin
e5c20b143d nanocoap: add coap_payload_put_char() 2020-05-01 13:58:22 +02:00
Benjamin Valentin
2751708341 nanocoap: add payload helper functions
This adds two functions `coap_payload_add()` and `coap_payload_advance()`.

 - `coap_payload_add()` will add n bytes to the payload buffer and advance
    payload pointer accordingly.

    const char hello[] = "Hello CoAP!";
    coap_payload_add(pkt, hello, sizeof(hello));

 - `coap_payload_advance()` will advance the payload buffer after data
    has been added to it.

    int len = snprintf(pkt->payload, pkt->payload_len, "%s %s!", "Hello", "CoAP");
    coap_payload_advance(pkt, len);

I considered adding an additional parameter to keep track of the total request size
(returned size from coap_opt_finish() incremented by each added payload fragment),
but decided against it to keep consistency with the existing API.
2020-05-01 13:58:22 +02:00
Benjamin Valentin
18651eb399 gnrc_netif: Use full L2-PDU as IPv6 MTU
If the L2-PDU is greater than IPV6_MIN_MTU, use that as the MTU instead.
2020-04-29 12:49:36 +02:00
Francisco
80b300289d
Merge pull request #13912 from benpicco/at86rf215-mr-qpsk
drivers/at86rf215: implement MR-O-QPSK
2020-04-29 12:44:00 +02:00
Benjamin Valentin
504d02038d gnrc_netif: update PDU after changing PHY mode 2020-04-29 10:41:37 +02:00
Benjamin Valentin
fac35644d0 ieee802154: add definitions & config options for MR-O-QPSK
Define options for IEEE 802.15.4g MR-O-QPSK as well as shell commands
to set them via ifconfig.
2020-04-29 10:41:37 +02:00
Martine Lenders
633d0f486d
Merge pull request #13669 from bergzand/pr/netif/async_events
gnrc_netif: Add support for internal event loop
2020-04-28 13:03:39 +02:00
943450a567
Merge pull request #13959 from leandrolanzieri/pr/nanocoap/kconfig/add_type
nanocoap/kconfig: Explicitly define type of MODULE_NANOCOAP
2020-04-28 12:48:47 +02:00
Leandro Lanzieri
b91c8502dc
net/nanocoap/kconfig: Explicitly define type of MODULE_NANOCOAP 2020-04-27 10:06:01 +02:00
Martine S. Lenders
cb8a6c36b0
gnrc_ipv6_nib: 6ln: use interface-specific DR for address registration
With multiple 6LoWPAN interfaces the router for the given interface
—the one the triggering RA came over—should be used to register the
address with.

Co-Authored-By: Benjamin Valentin <benpicco@googlemail.com>
2020-04-25 01:20:55 +02:00
Martine S. Lenders
245c04f368
gnrc_ipv6_nib: internal: add capability to search DR by interface
Co-Authored-By: Benjamin Valentin <benpicco@googlemail.com>
2020-04-24 17:57:09 +02:00
Leandro Lanzieri
eeea9b7dae
net/coap: Expose configurations to Kconfig 2020-04-24 10:06:45 +02:00
Leandro Lanzieri
9e427e1584
net/coap: Move COAP_MAX_RETRANSMIT to 'CONFIG' namespace
COAP_MAX_RETRANSMIT is moved to the compile time configuration macro
namespace.
2020-04-24 10:06:43 +02:00
Leandro Lanzieri
afe4244ac9
net/coap: Move COAP_RANDOM_FACTOR_1000 to 'CONFIG' namespace
COAP_RANDOM_FACTOR_1000 is moved to the compile time configuration macro
namespace.
2020-04-24 10:06:43 +02:00
Leandro Lanzieri
072a0d8563
net/coap: Move COAP_ACK_TIMEOUT to 'CONFIG' namespace
COAP_ACK_TIMEOUT is moved to the compile time configuration macro
namespace.
2020-04-24 10:06:40 +02:00
Marian Buschsieweke
7b67e74bed
sys/net/gnrc: Use %lu to print times 2020-04-23 21:16:57 +02:00
Cenk Gündoğan
ea616abfda nanocoap: allow coap_opt_add_string() for zero-terminated strings 2020-04-22 12:28:48 +02:00
Leandro Lanzieri
46507ff247
Merge pull request #13894 from kb2ma/gcoap/ping
net/gcoap: add CoAP ping request
2020-04-21 12:23:54 +02:00
Ken Bannister
cac350901f
Merge pull request #13893 from cgundogan/pr/nanocoap-get-opt-uint
nanocoap: export coap_opt_get_uint()
2020-04-18 10:00:27 -04:00
Martine Lenders
55a7010a0a
Merge pull request #13157 from nmeum/pr/fuzzing_tcp_only
Add AFL-based fuzzing setup for network modules
2020-04-18 10:54:14 +02:00
Cenk Gündoğan
6859de7855 nanocoap: export coap_opt_get_uint() 2020-04-17 22:39:44 +02:00
Sören Tempel
ac9c1f4a69 gnrc_tcp: disable checksum checks during fuzzing 2020-04-17 17:11:15 +02:00
Martine Lenders
652276f00f
gnrc_netif: provide PID-based version for netif ID 2020-04-17 16:59:21 +02:00
Martine S. Lenders
b8294f1ba0
netif: add functions to get and get by identifier 2020-04-17 16:59:21 +02:00
Ken Bannister
6eae4ded84 net/gcoap: create CoAP ping request 2020-04-17 08:15:20 -04:00
Ken Bannister
f5a85e2aff net/gcoap: handle CoAP ping request 2020-04-17 08:15:20 -04:00
Ken Bannister
2d3eb1a343 net/nanocoap: validate empty message length 2020-04-17 08:15:20 -04:00
Joakim Nohlgård
2013ac75f5
gnrc_netif: Add support for internal event loop
Enabled by the gnrc_netif_events pseudo module. Using an internal event
loop within the gnrc_netif thread eliminates the risk of lost interrupts
and lets ISR events always be handled before any send/receive requests
from other threads are processed.
The events in the event loop is also a potential hook for MAC layers and
other link layer modules which may need to inject and process events
before any external IPC messages are handled.

Co-Authored-By: Koen Zandberg <koen@bergzand.net>
2020-04-17 12:02:39 +02:00
Leandro Lanzieri
a06d9bbb66
Merge pull request #13315 from jia200x/pr/kconfig/ieee802154
ieee802154: Expose configurations to Kconfig
2020-04-08 19:34:55 +02:00
Jose Alamos
d33e44a85c ieee802154: Expose configurations to Kconfig 2020-04-08 18:28:23 +02:00
14706d7423
Merge pull request #13243 from leandrolanzieri/pr/kconfig_migrate/net/nanocoap
net/nanocoap: Expose configurations to Kconfig
2020-04-08 10:51:54 +02:00
Benjamin Valentin
f198d689be gnrc_dhcpv6_client: fix for SLIP link-layer
In a point-to-point serial connection, we don't have L2 addresses.
Set the link type & packet length accordingly and we will get a
prefix from KEA.
2020-04-07 22:08:57 +02:00
Sören Tempel
65c7bbf76d gnrc_sock: Implement termination condition for fuzzing
The termination condition implemented in gnrc_pktbuf_malloc does not
work when using the sock interface as sock copies packet data to a local
buffer and frees the packet afterwards. As such, the fuzzing application
would exit before performing any input processing.

For this reason, the termination condition in gnrc_pktbuf_malloc is
disabled when using sock. Instead, the application terminates if
gnrc_sock_recv previously returned the fuzzing packet. The underlying
assumption of this implementation is that gnrc_sock_recv is called in a
loop.
2020-04-07 17:48:39 +02:00
Sören Tempel
e0570181e4 gnrc_pktbuf_malloc: Terminate when fuzzing packet is freed
Since RIOT is an operating system the native binary will never terminate
[0]. The termination condition for fuzzing GNRC is that the packet was
handled by the network stack and therefore freed. If it is never freed
we will deadlock meaning a memory leak was found, afl should be able to
detect this through timeouts.

This is currently only supported for gnrc_pktbuf_malloc since this is
the pktbuf implementation I used for fuzzing. Implementing this in
pktbuf.h is not possible.

[0]: Except NATIVE_AUTO_EXIT is defined, however, even with that define
set RIOT will only terminate when all threads terminated. Unfortunately,
gnrc_udp and other network threads will never terminate.
2020-04-07 17:48:39 +02:00
Leandro Lanzieri
0137a06896
net/nanocoap: Expose configurations to Kconfig 2020-04-07 17:00:55 +02:00
Leandro Lanzieri
e80dcf2d8b
net/application_layer: Add Kconfig file and CoAP menu 2020-04-07 17:00:54 +02:00
Leandro Lanzieri
b6be8af81c
net/nanocoap: Move NANOCOAP_QS_MAX to 'CONFIG_' namespace 2020-04-07 17:00:53 +02:00
Leandro Lanzieri
2f72189aa2
net/nanocoap: Move NANOCOAP_BLOCK_SIZE_EXP_MAX to 'CONFIG_' namespace 2020-04-07 17:00:53 +02:00
Leandro Lanzieri
4052c01e85
net/nanocoap: Move NANOCOAP_URI_MAX to 'CONFIG_' namespace 2020-04-07 17:00:53 +02:00
Leandro Lanzieri
c84576ef6e
net/nanocoap: Move NANOCOAP_NOPTS_MAX to 'CONFIG_' namespace 2020-04-07 17:00:52 +02:00
Ken Bannister
b32fcd28d1
Merge pull request #13815 from kb2ma/nanocoap/add_canonical_uri_query
net/gcoap: add canonical uri query function names
2020-04-07 06:32:13 -04:00
Ken Bannister
5d95436334 net/cord: use canonical function name to add Uri-Query option 2020-04-06 06:19:44 -04:00
Ken Bannister
d57340c964 net/nanocoap: use new Uri-Query functions as primary implementation 2020-04-06 06:19:44 -04:00
Martine Lenders
5c95df3151
Merge pull request #13806 from benpicco/sys/net/dhcpv6-multiple_prefixes
sys/net/dhcpv6: fix requesting multiple prefixes
2020-04-05 01:14:27 +02:00
Benjamin Valentin
c8b2483de5 net/gcoap: make use of coap_opt_add_path() 2020-04-04 17:06:04 +02:00
Benjamin Valentin
0e5595cffd sys/net/dhcpv6: fix requesting multiple prefixes
There were two subtle bugs that prevented the DHCPv6 client to request
multiple prefixes for different interfaces.

 - `dhcpv6_client_req_ia_pd()` would fill up *all* leases with the same interface
 - `_parse_reply()` would return after parsing the first answer

With this patch, `gnrc_border_router` gets a prefix on both interfaces of the at86rf215.
2020-04-03 17:02:57 +02:00
Martine Lenders
76acde0984
Merge pull request #13779 from miri64/sock/enh/sock_buf_recv-iterate-chunks
sock: amend API to iterate over stack-internal buffer chunks
2020-04-01 16:59:03 +02:00
Martine S. Lenders
d934579817
gnrc_sock: adapt for *_recv_buf() API change 2020-04-01 15:50:51 +02:00
Leandro Lanzieri
461f40949d
gnrc/ipv6: Group IPv6 related Kconfig files 2020-04-01 14:34:13 +02:00
Leandro Lanzieri
4476e06814
gnrc/uhcpc: Fix lines lengths 2020-03-31 19:02:55 +02:00
Leandro Lanzieri
184bbd32e5
gnrc/netif: Fix lines lengths 2020-03-31 19:02:54 +02:00
Leandro Lanzieri
87ac1a652d
gnrc/nib: Expose configurations to Kconfig 2020-03-31 19:02:51 +02:00
Leandro Lanzieri
64dde8f317
gnrc/nib: Move GNRC_IPV6_NIB_ABR_NUMOF to 'CONFIG_' namespace 2020-03-31 18:07:13 +02:00
Leandro Lanzieri
a77d0dd9c5
gnrc/nib: Move GNRC_IPV6_NIB_OFFL_NUMOF to 'CONFIG_' namespace 2020-03-31 18:07:13 +02:00
Leandro Lanzieri
f6ee712e98
gnrc/nib: Move GNRC_IPV6_NIB_DEFAULT_ROUTER_NUMOF to 'CONFIG_' namespace 2020-03-31 18:07:12 +02:00
Leandro Lanzieri
f2ed8b06c0
gnrc/nib: Move GNRC_IPV6_NIB_L2ADDR_MAX_LEN to 'CONFIG_' namespace 2020-03-31 18:07:12 +02:00
Leandro Lanzieri
acd789bd87
gnrc/nib: Move GNRC_IPV6_NIB_CONF_REACH_TIME_RESET to 'CONFIG_' 2020-03-31 18:07:11 +02:00
Leandro Lanzieri
07771de08f
gnrc/nib: Move GNRC_IPV6_NIB_NUMOF to 'CONFIG_' namespace 2020-03-31 18:07:11 +02:00
Leandro Lanzieri
1f20ffc150
gnrc/nib: Move GNRC_IPV6_NIB_CONF_NO_RTR_SOL to 'CONFIG_' namespace
Also evaluate using IS_ACTIVE macro.
2020-03-31 18:07:10 +02:00
Leandro Lanzieri
53a522d642
gnrc/nib: Move GNRC_IPV6_NIB_CONF_MULTIHOP_P6C to 'CONFIG_' namespace
Also evaluate using IS_ACTIVE macro.
2020-03-31 18:07:10 +02:00
Leandro Lanzieri
22b4df9537
gnrc/nib: Move GNRC_IPV6_NIB_CONF_MULTIHOP_DAD to 'CONFIG_' namespace
Also evaluate using IS_ACTIVE macro.
2020-03-31 18:07:09 +02:00
Leandro Lanzieri
3ec296400d
gnrc/nib: Move GNRC_IPV6_NIB_CONF_DC to 'CONFIG_' namespace
Also evaluate using IS_ACTIVE macro.
2020-03-31 18:07:09 +02:00
Leandro Lanzieri
219d5a1de2
gnrc/nib: Move GNRC_IPV6_NIB_CONF_REDIRECT to 'CONFIG_' namspace
Also evaluate using IS_ACTIVE macro.
2020-03-31 18:07:08 +02:00
Leandro Lanzieri
bad9abd349
gnrc/nib: Move GNRC_IPV6_NIB_CONF_DNS to 'CONFIG_' namespace
Also evaluate using IS_ACTIVE macro.
2020-03-31 18:07:07 +02:00
Leandro Lanzieri
e52b93cef0
gnrc/nib: Move GNRC_IPV6_NIB_CONF_ARSM to 'CONFIG_' namespace
Also evaluate it using IS_ACTIVE macro.
2020-03-31 18:07:07 +02:00
Leandro Lanzieri
f23267b67b
gnrc/nib: Move GNRC_IPV6_NIB_CONF_QUEUE_PKT to 'CONFIG_' namespace
Also evaluate it using IS_ACTIVE macro.
2020-03-31 18:07:06 +02:00
Leandro Lanzieri
ce931f179c
gnrc/nib: Move GNRC_IPV6_NIB_CONF_SLAAC to 'CONFIG_' namespace
Also evaluate it using IS_ACTIVE macro.
2020-03-31 18:07:05 +02:00
Leandro Lanzieri
49ec28867c
gnrc/nib: Move GNRC_IPV6_NIB_CONF_ROUTER to 'CONFIG_' namespace
Also evaluate it using IS_ACTIVE macro.
2020-03-31 18:07:05 +02:00
Leandro Lanzieri
1acfe7ae19
gnrc/nib: Move GNRC_IPV6_NIB_CONF_6LN to 'CONFIG_' namespace
Also evaluate it using IS_ACTIVE macro.
2020-03-31 18:07:04 +02:00
Leandro Lanzieri
398bb6d025
gnrc/nib: Move GNRC_IPV6_NIB_CONF_6LR to 'CONFIG_' namespace
Also evaluate it using IS_ACTIVE
2020-03-31 18:07:03 +02:00
Leandro Lanzieri
40c78f1c75
gnrc/nib: Move GNRC_IPV6_NIB_CONF_6LBR to 'CONFIG_' namespace
Also evaluate it using IS_ACTIVE macro.
2020-03-31 18:07:03 +02:00
Ken Bannister
7d624def4e
Merge pull request #13637 from cgundogan/coap_proxy
gcoap: allow proxied client requests
2020-03-28 10:30:27 -04:00
Cenk Gündoğan
50900a1fbe nanocoap: add convenience function for PROXY_URI 2020-03-28 14:50:51 +01:00
Benjamin Valentin
a3adaa7ec0 gnrc_ipv6_nib: fix index calculation
We must divide the pointer difference (in bytes) by the size of
the individual elements to get the index of the element.
2020-03-28 00:00:16 +01:00
Benjamin Valentin
a835ad3e13 gnrc_ipv6_nib: append ext_opts when adding sixco 2020-03-27 22:52:31 +01:00
benpicco
8024380f7b
Merge pull request #13700 from miri64/gnrc_sock/enh/recv_buf
gnrc_sock: provide implementation for `sock_*_recv_buf()`
2020-03-27 16:34:57 +01:00
benpicco
15dc9fe0de
Merge pull request #13731 from benpicco/upstream_no_rtr_adv
gnrc_uhcp, gnrc_dhcpv6_client_6lbr: disable Router Advertisements on upstream interface
2020-03-27 10:32:59 +01:00
Benjamin Valentin
3f24eaefb9 gnrc_uhcp: disable router advertisements on upstream interface 2020-03-27 00:37:54 +01:00
Benjamin Valentin
fec156899c gnrc_dhcpv6_client_6lbr: disable router advertisements on upstream interface
We don't want to advertise ourselves as a router to the upstream router.
This also leads to the border router ignoring advertisements from the upstream
router.
2020-03-27 00:37:54 +01:00
Martine Lenders
f39cfc7556
Merge pull request #13253 from nmeum/pr/random_ephemeral_port
gnrc_sock_udp: choose random ephemeral port
2020-03-26 15:00:14 +01:00
Martine Lenders
061eb88c05
Merge pull request #12994 from jia200x/pr/gnrc_netif_desc_alloc
gnrc_netif: implementation of dynamic GNRC_NETIF_NUMOF approach
2020-03-26 14:30:44 +01:00
Jose Alamos
44f7cb712c gnrc_netif: add GNRC_NETIF_SINGLE macro 2020-03-26 14:19:02 +01:00
Martine Lenders
cba1a2da0c
Merge pull request #13666 from jue89/feature/evtimer_now_msec
net/gnrc/ipv6/nib: remove direct dependency to xtimer
2020-03-26 13:50:13 +01:00
Jose Alamos
e451570219 gnrc_netif: remove GNRC_NETIF_NUMOF macro 2020-03-26 11:12:23 +01:00
Jose Alamos
67ed9defbe gnrc_netif_xxx_create: use external netif allocation 2020-03-26 11:12:23 +01:00
Martine Lenders
ab5deca3b0
Merge pull request #13712 from miri64/gnrc_uhcp/fix/prefix_len
gnrc_uhcp: use actually advertised prefix length
2020-03-25 18:46:00 +01:00
Martine S. Lenders
01d94f268a
gnrc_uhcp: use actually advertised prefix length
This makes the UHCP client to use the actually advertised prefix length
instead of assuming /64.
2020-03-25 16:55:01 +01:00
benpicco
6ae0fd7c82
Merge pull request #13485 from miri64/gnrc_dhcpv6/enh/configure-context
gnrc_dhcpv6_client: configure prefix as compression context on 6LBRs
2020-03-25 16:48:11 +01:00
benpicco
53790d1269
Merge pull request #13713 from miri64/gnrc_sixlowpan_iphc/bug/encode-zero-header
gnrc_sixlowpan_iphc: zero IPv6 header before decompressing into it
2020-03-25 16:43:17 +01:00
4c59e93a35
Merge pull request #13711 from cgundogan/pr/nanocoap/coap_opt_get_opaque/const
nanocoap: add const qualifier to pkt of coap_opt_get_opaque()
2020-03-25 15:21:23 +01:00
Martine S. Lenders
ac222521ab
gnrc_sixlowpan_iphc: zero IPv6 header before decompressing into it 2020-03-25 14:54:18 +01:00
Cenk Gündoğan
5e42e26a6e nanocoap: add const qualifier to pkt of coap_opt_get_opaque() 2020-03-25 13:38:21 +01:00
Martine S. Lenders
4fc0251b4b
gnrc_ipv6_nib: only route to prefix list entry if on-link
In 06aa65e1ba (#10627) a new behavior was
introduced in IPv6 route resolution to try address resolution only at
interfaces that have the prefix of the address to be resolved configured
in the prefix list. This however only makes sense, if the prefix
configured is [on-link], otherwise there is small likelihood of the
address to be resolved being on that link.

For the error case presented for 06aa65e (circular routing at the border
router) this made sense, however within a 6LoWPAN, due to the prefix
being valid for the entire mesh, this leads to the nodes always trying
classic address resolution for in-network addresses instead of just
routing to the default route.
Classic address resolution however fails, as 6LoWPAN hosts typically
[don't join the solicited-node multicast address of their unicast
addresses][6LN-iface-init], resulting in in-network addresses not being
reachable.

As such, to prevent both error cases

- the fallback to address resolution by prefix list must only be used
  when the prefix is on-link,
- the prefix configured by DHCPv6/UHCP at the 6LoWPAN border router
  must be configured as on-link, but
- the prefix must not be advertised as on-link within the 6LoWPAN to
  still be [in line with RFC 6775][RFC-6775-forbidden]

With this change these cases are covered.

[on-link]: https://tools.ietf.org/html/rfc4861#page-6
[RFC 6775]: https://tools.ietf.org/html/rfc6775
[6LN-iface-init]: https://tools.ietf.org/html/rfc6775#section-5.2
[RFC-6775-forbidden]: https://tools.ietf.org/html/rfc6775#section-6.1
2020-03-25 13:13:40 +01:00
Martine Lenders
e47c8fa91c
Merge pull request #10627 from miri64/gnrc_ipv6_nib/fix/forward-to-pl
gnrc_ipv6_nib: don't ignore PL for route
2020-03-24 21:49:56 +01:00
Martine Lenders
06aa65e1ba
gnrc_ipv6_nib: don't ignore PL for route
When pinging to a prefix for which there is a prefix list entry on the
node (so no next hop) but a default route, a packet to a non-existent
address under that prefix results in the packet being forwarded to the
default route instead. This fixes it, so the node tries address
resolution on the interface the prefix list entry is associated to.
2020-03-24 18:19:18 +01:00
Martine S. Lenders
39cd293a0e
gnrc_sock: provide implementation for sock_*_recv_buf() 2020-03-24 17:15:17 +01:00
Juergen Fitschen
877e0a9b32 net/gnrc/ipv6/nib: fix typos 2020-03-24 13:07:20 +01:00
Juergen Fitschen
47f5cd8618 net/gnrc/ipv6/nib: make use of the evtimer system time getter
This commit removes the implication that evtimer uses xtimer as timer backend.
2020-03-24 13:07:20 +01:00
1d5010e126
nanocoap: make separate tree handling function
This refactors nanocoap to seperate out the resource tree parsing. It
allows for calling the tree handler with custom resource trees. The
advantage is that a resource with COAP_MATCH_SUBTREE can parse a new
separate resource tree.
2020-03-23 15:08:53 +01:00
Francisco
cdbf0b2d69
Merge pull request #13583 from benpicco/at86rf215-minimal
drivers/at86rf215: add basic support for AT86RF215 dual-band radio
2020-03-20 09:33:50 +01:00
benpicco
5435792034
Merge pull request #12277 from benemorius/pr/kw41zrf
drivers: add kw41zrf
2020-03-20 00:49:56 +01:00
Joakim Nohlgård
5bd67d88a8 drivers/kw41zrf: Transceiver driver for the KW41Z radio
This is the radio found in NXP Kinetis KW41Z, KW21Z. Only 802.15.4 mode
is implemented (KW41Z also supports BLE on the same transceiver).

The driver uses vendor supplied initialization code for the low level
XCVR hardware, these files were imported from KSDK 2.2.0 (framework_5.3.5)
2020-03-19 17:00:04 -05:00
Benjamin Valentin
d35511bee7 drivers/at86rf215: Add basic driver for the AT86RF215 radio
This adds a driver for the SPI based AT86RF215 transceiver.
The chip supports the IEEE Std 802.15.4-2015 and IEEE Std 802.15.4g-2012 standard.

This driver supports two versions of the chip:
    - AT86RF215:  dual sub-GHz & 2.4 GHz radio & baseband
    - AT86RF215M: sub-GHz radio & baseband only

Both radios support the following PHY modes:
    - MR-FSK
    - MR-OFDM
    - MR-O-QPKS
    - O-QPSK (legacy)

The driver currently only implements support for legacy O-QPSK.

To use both interfaces, add

    GNRC_NETIF_NUMOF := 2

to your Makefile.

The transceiver is able to send frames of up to 2047 bytes according to
IEEE 802.15.4g-2012 when operating in non-legacy mode.

Known issues:

 - [ ] dBm setting values are bogus
 - [ ] Channel spacing for sub-GHz MR-O-QPSK might be wrong
 - [ ] TX/RX stress test will lock up the driver on openmote-b
2020-03-19 14:39:18 +01:00
Jose Alamos
4393822b0f gnrc_netif: add function to check if device requires 6Lo 2020-03-17 10:54:30 +01:00
Jose Alamos
6ace7b5472 gnrc_netif: use gnrc_netif_single where possible 2020-03-17 10:54:30 +01:00
Leandro Lanzieri
d281d4843f
Merge pull request #13628 from jia200x/pr/gnrc_rpl_macro
gnrc_rpl: add default value to GNRC_RPL_DEFAULT_NETIF
2020-03-13 15:47:13 +01:00
Jose Alamos
b553535cea gnrc_rpl_auto_init: replace preprocessor logic with if chain 2020-03-13 13:30:29 +01:00
Ken Bannister
ec2aff4546
Merge pull request #13240 from kb2ma/gcoap/deprecate_add_qstring
net/coap: deprecate gcoap_add_qstring() and update uses
2020-03-13 08:04:50 -04:00
Martine Lenders
20e30ec58b
Merge pull request #13622 from gschorcht/net/dhcpv6_fix_opt_len
sys/net/dhcpv6: fixes option length handling in client implementation
2020-03-12 18:56:43 +01:00
Gunar Schorcht
a25c61bc8b sys/net/dhcpv6: fix client option length handling 2020-03-12 18:33:17 +01:00
benpicco
1212165222
Merge pull request #13584 from kb2ma/nanocoap/add_uquery_improvements
net/nanocoap: add uquery improvements
2020-03-12 15:18:07 +01:00
Ken Bannister
c55837d809 net/nanocoap: add query option directly 2020-03-12 08:44:26 -04:00
Martine S. Lenders
411e320b0c
sock_async_event: update for async callback argument support 2020-03-11 16:54:12 +01:00
Martine S. Lenders
4bdd138021
gnrc_sock: update implementation for async callback argument 2020-03-11 16:54:11 +01:00
Martine S. Lenders
612e782b3c
sock_async: supply optional callback argument with callback setter 2020-03-11 16:54:11 +01:00
Martine S. Lenders
6e6e435c65
sock_async: add optional callback argument 2020-03-11 16:54:11 +01:00
José Alamos
de4a1bf552
Merge pull request #13595 from gschorcht/gnrc/lorawan/fix_downlink_handling
gnrc/lorawan: fixes the handling of downlink frames without payload
2020-03-09 15:08:25 +01:00
Martine S. Lenders
c110337f6a
gnrc_dhcpv6_client: only configure 6Lo-ND features if interface is 6LN 2020-03-09 14:21:53 +01:00
Martine S. Lenders
06d1d79ffa
gnrc_dhcpv6_client: configure prefix as compression context on 6LBRs 2020-03-09 14:21:53 +01:00
Martine S. Lenders
079b9f717f
gnrc_dhcpv6_client: replace #if guards with if expressions 2020-03-09 14:21:52 +01:00
Gunar Schorcht
de38fc5e2e gnrc/lorawan: fix handling of downlink message without payload 2020-03-09 12:33:03 +01:00
Gunar Schorcht
32c78e3317 gnrc/lorawan: fix netopt_state_t size in link_layer
`netopt_state_t` is an enumeration type which is not necessarily 1 byte. If `uint8_t` is used, the cast `*((const netopt_state_t*) val` in `sx127x_netdev::_set`tries to read the real size, which can be more than the given length of 1 byte. Therefore, `netstat_opt_t` has to be used instead of `uint8_t`
2020-03-08 17:10:24 +01:00
Martine Lenders
c30f83ac3b
Merge pull request #13579 from jia200x/pr/gnrc_netif_send
gnrc_netif_send: add send function
2020-03-06 20:07:45 +01:00
Jose Alamos
6143cd800b gnrc_netif: use gnrc_netif_send where possible 2020-03-06 15:22:58 +01:00
Gunar Schorcht
fc37d7bf81
Merge pull request #13427 from miri64/lwip/enh/sock_async
lwip: provide sock_async support
2020-03-06 14:37:54 +01:00
Ken Bannister
2fb2a3b260
Merge pull request #13022 from pokgak/pr/gcoap/gcoap_add_qstring_with_len
nanocoap: add coap_opt_add_uquery2() with parameter key value length
2020-03-06 06:09:35 -05:00
Martine S. Lenders
f159b86b8a
gnrc_uhcpc: only configure 6Lo-ND features if wireless-interface is 6LN
Otherwise the border router has no way to disseminate the context
throughout the network.
2020-03-05 19:59:27 +01:00
Aiman Ismail
64f9658472 nanocoap: add coap_opt_add_uquery2() 2020-03-05 19:06:14 +01:00
Martine Lenders
c1a34ce860
Merge pull request #13560 from miri64/gnrc_uhcpc/fix/rm-before-adding
gnrc_uhcpc: ensure compression context is managed by the ABR
2020-03-05 17:12:45 +01:00
benpicco
7af046d740
Merge pull request #13548 from benpicco/sys/auto_init/netif-manual
sys/auto_init: allow delayed initialisation of SAUL & gnrc_netif
2020-03-05 17:05:02 +01:00
Martine S. Lenders
eacd0814d2
gnrc_uhcpc: remove wild comment 2020-03-05 15:51:52 +01:00
Martine S. Lenders
081499e280
gnrc_uhcpc: add compression context before ABR
This way the context is added to the ABR's context list automatically.
2020-03-05 15:51:52 +01:00
Martine S. Lenders
f626e5e7ef
gnrc_uhcpc: remove old prefix before adding new 2020-03-05 15:51:52 +01:00
Benjamin Valentin
4f7d5b105b sys/net/gnrc: Flag esp_now as 6LN
In gnrc_netif_init_6ln() the flag GNRC_NETIF_FLAGS_6LN is accidentally not set
for esp_now devices. This commit fixes this.
2020-03-05 15:18:43 +01:00
Benjamin Valentin
d765098d72 sys/auto_init: allow delayed initialisation of gnrc_netif
Co-authored-by: Martine S. Lenders <m.lenders@fu-berlin.de>
2020-03-04 16:13:40 +01:00
Martine S. Lenders
6c5d9e4f39
gnrc_uhcpc: fix NULL pointer dereference 2020-03-03 13:56:56 +01:00
ddee330bbd sys/net/sock/sock_util: use MODULE_FMT instead of RIOT_VERSION
sock_util used ot check RIOT_VERSION for selecting fmt functions.
RIOT's Makefile.dep sets fmt as a dependency for sock_util,
so the usual MODULE_FMT can be used.

One special case less.
2020-02-28 12:13:44 +01:00
benpicco
244c7da050
Merge pull request #13026 from brummer-simon/gnrc_tcp-prepare_for_sock_integration
gnrc_tcp: Prepare for sock integration.
2020-02-26 23:22:58 +01:00
Simon Brummer
10872d9a85 gnrc_tcp: Add Endpoints for connection specification 2020-02-26 21:24:06 +01:00
ad7c19d584
Merge pull request #8576 from miri64/gnrc_uhcpc/enh/update-context
gnrc_uhcpc: update compression context with new prefix
2020-02-26 14:20:44 +01:00
Martine S. Lenders
d99d0a0df0
gnrc_uhcpc: use LOG_INFO() for configuration information 2020-02-26 13:22:56 +01:00
Martine Lenders
8cc9c5ebe7
gnrc_uhcpc: update compression context with new prefix
This updates (or adds) a compression context whenever a new prefix
arrives at the border router. This allows 6LoWPAN to compress said
prefix in the network.

Sadly, there is now way to just remove the context when the prefix is
overwritten, so I do not do it. If an administrator chooses to reset the
prefix they can use `6ctx del` which timeouts the prefix appropriately,
but IMHO it doesn't hurt to keep the old contexts.
2020-02-26 13:22:56 +01:00
Martine Lenders
ec6c07d35d
Merge pull request #13424 from miri64/examples/enh/dhcpv6-br
examples/gnrc_border_router: add optional DHCPv6 support
2020-02-25 20:08:31 +01:00
benpicco
d044800300
Merge pull request #13450 from benpicco/dns-fixes
fix DNS resolution in ping6
2020-02-24 21:58:34 +01:00
Benjamin Valentin
1de14931b8 sock_dns: use the same buffer for request & reply
Saving RAM is more important than saving a few cycles
used by re-creating the request buffer in the error case.

Also reduce the size of the buffer to 128 bytes.
If we are just requesting the AAAA record it is unlikely
for the reply to take up the maximum size of 512 bytes.

We were already placing restrictions on the domain name length,
those are now actually a bit more relaxed (112 bytes instead of 64)
2020-02-24 14:29:17 +01:00
Benjamin Valentin
e9a40933f7 sock_dns: fix off-by-one error in _parse_dns_reply() 2020-02-24 14:19:50 +01:00
Ken Bannister
e98a6e5932 net/gcoap: update copyright date 2020-02-24 06:22:04 -05:00
Ken Bannister
c8cd3f0229 net/gcoap: fix vera++ code style warnings 2020-02-24 06:20:43 -05:00
Martine Lenders
cba056d560
Merge pull request #13386 from kb2ma/gcoap/sock_async
net/gcoap: use sock_async and events
2020-02-23 16:17:53 +01:00
Ken Bannister
9b63abb718 net/gcoap: cast required for pic32 platform
Fixes bug found during rework for sock_async implementation.
2020-02-22 05:46:07 -05:00
Ken Bannister
0dc1e4c4e7 net/gcoap: fix when no timeout event
Fixes bug found during rework for sock_async implementation.
2020-02-22 05:46:07 -05:00
Martine S. Lenders
0f391a554e sock_async_event: fix typo in tcp_queue function
This was never checked at compile time before so a naming error sneaked
in.
2020-02-21 19:07:47 +01:00
Martine Lenders
d26355fbb4 sock_async_event: fix race-condition
If a new event is fired during the execution of the event callback,
`event->type` might change. However as `event->type` is set to 0 after
the execution of the callback, that leads to it being 0 on the next
round of the event handler's execution, leading in the event getting
lost.
2020-02-21 15:52:12 +01:00
Martine S. Lenders
b929d013d8
dhcpv6_client: re-send SOLICITs after failed ADVERTISE 2020-02-20 16:41:48 +01:00
Sören Tempel
0e2a620788 gnrc_tftp: remove module
Has been deprecated for awhile (01fc3d8f0b).
2020-02-20 12:04:01 +01:00
benpicco
030e7ebc06
Merge pull request #13307 from miri64/dhcpv6-client-6lbr/feat/init
gnrc_dhcpv6_client_6lbr: initial import of a 6LBR DHCPv6 client
2020-02-20 11:00:35 +01:00
Martine Lenders
c6331bfc77
Merge pull request #13379 from cgundogan/pr/gnrc_rpl_p2p
gnrc_rpl_p2p: several compilation fixes
2020-02-20 10:25:55 +01:00
Martine S. Lenders
db463a3373
gnrc_dhcpv6_client_6lbr: initial import of a 6LBR DHCPv6 client 2020-02-19 17:37:47 +01:00
Leandro Lanzieri
9026823bb9 net: Remove NHDP module
NHDP has been flagged as deprecated in
056bd35e6c, due to lack of maintenance.
2020-02-18 13:20:05 +01:00
Sören Tempel
5cf433806e gnrc_sock_udp: fix null check in port generation function
Still check if the port is unused if no socket has been given.
2020-02-17 10:20:22 +01:00
Ken Bannister
d6fa3c7c2f net/gcoap: add timeout event/handler for server response 2020-02-16 09:17:48 -05:00
Ken Bannister
ea62734baf net/gcoap: add sock_async event handling
Rework from earlier custom event/msg handling.
2020-02-16 09:17:48 -05:00
Cenk Gündoğan
08c3dedf38 gnrc_rpl_p2p: use correct netif functions 2020-02-14 11:42:33 +01:00
Cenk Gündoğan
50423d60cf gnrc_rpl_p2p: use correct parameters for trickle_start() 2020-02-14 11:41:56 +01:00
Cenk Gündoğan
4b58e5d41b gnrc_rpl_p2p: fix cleanup timer usage 2020-02-14 11:41:30 +01:00
benpicco
5b608ef712
Merge pull request #12766 from miri64/gnrc_netapi/enh/report-error
gnrc_netapi: report errors on dispatch
2020-02-11 23:41:39 +01:00
Martine S. Lenders
a0740ee535 gnrc_netapi: report errors on dispatch 2020-02-11 18:16:02 +01:00
Martine Lenders
ebb20f2d44
Merge pull request #13305 from miri64/gnrc_ipv6_ext_frag_stats/feat/initial
gnrc_ipv6_ext_frag: initial import of statistics module
2020-02-10 20:23:13 +01:00
Martine S. Lenders
cf69e61289
gnrc_ipv6_ext_frag: initial import of statistics module 2020-02-06 13:48:42 +01:00
Martine S. Lenders
ed9f43ab3a
gnrc_sixlowpan_frag_stats: add average fragments per datagram statistic 2020-02-06 13:40:23 +01:00
Sören Tempel
b37bed8a1d gnrc_sock_udp: choose random ephemeral port
Implements a random ephemeral port selection as per the second algorithm
from RFC 6056, see https://tools.ietf.org/html/rfc6056#section-3.3.2.
2020-02-03 16:55:00 +01:00
Leandro Lanzieri
5e1ef498a7
Merge pull request #13245 from miri64/gnrc_sixlowpan_frag_rb/enh/doc-fix-kconfig
gnrc_sixlowpan_frag_rb: fix doc on DO_NOT_OVERRIDE
2020-02-03 13:54:37 +01:00
Martine Lenders
02c16479cf
Merge pull request #13244 from miri64/gnrc_ipv6_ext/enh/rbuf-do-not-override
gnrc_ipv6_ext_frag: add configuration option to keep oldest entry
2020-02-03 13:23:20 +01:00
Martine S. Lenders
90ed5bf4af
gnrc_sixlowpan_frag_rb: fix doc on DO_NOT_OVERRIDE 2020-02-03 12:48:19 +01:00
Martine S. Lenders
d99012561a
gnrc_ipv6_ext_frag: add configuration option to keep oldest entry 2020-02-03 12:44:15 +01:00