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
benpicco
c7b0483549
Merge pull request #12879 from miri64/gnrc_sixlowpan_iphc/feat/nhc-ext
...
gnrc_sixlowpan_iphc: add support for IPv6 extension header compression
2020-01-31 12:02:47 +01:00
Cenk Gündoğan
0cf8bf1665
Merge pull request #12958 from leandrolanzieri/pr/kconfig_migrate/gnrc/ipv6_ext_hdr
...
Kconfig: Expose gnrc/ipv6/ext/frag configurations
2020-01-30 19:15:08 +01:00
Martine S. Lenders
0b3f785dfe
gnrc_sixlowpan_iphc: add extension header decoding
2020-01-30 17:59:59 +01:00
Leandro Lanzieri
fe820d8d9d
Kconfig: Expose gnrc/ipv6/ext/frag configurations
2020-01-30 17:42:42 +01:00
Leandro Lanzieri
5602bd55ed
gnrc/ipv6/ext/frag: Move configurations to 'CONFIG_' namespace
...
Macros that changed:
GNRC_IPV6_EXT_FRAG_SEND_SIZE -> CONFIG_GNRC_IPV6_EXT_FRAG_SEND_SIZE
GNRC_IPV6_EXT_FRAG_RBUF_SIZE -> CONFIG_GNRC_IPV6_EXT_FRAG_RBUF_SIZE
GNRC_IPV6_EXT_FRAG_LIMITS_POOL_SIZE -> CONFIG_GNRC_IPV6_EXT_FRAG_LIMITS_POOL_SIZE
GNRC_IPV6_EXT_FRAG_RBUF_TIMEOUT_US -> CONFIG_GNRC_IPV6_EXT_FRAG_RBUF_TIMEOUT_US
2020-01-30 17:42:41 +01:00
Sebastian Meiling
a4c4c25b3b
Merge pull request #12866 from jia200x/pr/gnrc_lorawan_remove_netdev
...
net/gnrc_lorawan: remove netdev layer from MAC
2020-01-30 14:02:59 +01:00
Ken Bannister
7f3e953893
net/cord: update for deprecated gcoap function
2020-01-30 06:00:53 -05:00
Ken Bannister
0ed4fe2da6
net/coap: move/rename function to add query option
2020-01-29 09:23:47 -05:00
Cenk Gündoğan
c84d7d2623
Merge pull request #12887 from leandrolanzieri/pr/kconfig_migrate/gcoap
...
Kconfig: Expose Gcoap configurations
2020-01-28 18:58:29 +01:00
Leandro Lanzieri
926d32ff30
Kconfig: Expose Gcoap configurations
2020-01-28 11:59:52 +01:00
Leandro Lanzieri
bab6f4737c
net/gcoap: Move config macros to 'CONFIG_' namespace
...
Macros that changed:
GCOAP_MSG_QUEUE_SIZE -> CONFIG_GCOAP_MSG_QUEUE_SIZE
GCOAP_NO_AUTO_INIT -> CONFIG_GCOAP_NO_AUTO_INIT
GCOAP_NO_RETRANS_BACKOFF -> CONFIG_GCOAP_NO_RETRANS_BACKOFF
GCOAP_NON_TIMEOUT -> CONFIG_GCOAP_NON_TIMEOUT
GCOAP_OBS_CLIENTS_MAX -> CONFIG_GCOAP_OBS_CLIENTS_MAX
GCOAP_OBS_OPTIONS_BUF -> CONFIG_GCOAP_OBS_OPTIONS_BUF
GCOAP_OBS_REGISTRATIONS_MAX -> CONFIG_GCOAP_OBS_REGISTRATIONS_MAX
GCOAP_OBS_VALUE_WIDTH -> CONFIG_GCOAP_OBS_VALUE_WIDTH
GCOAP_PDU_BUF_SIZE -> CONFIG_GCOAP_PDU_BUF_SIZE
GCOAP_PORT -> CONFIG_GCOAP_PORT
GCOAP_RECV_TIMEOUT -> CONFIG_GCOAP_RECV_TIMEOUT
GCOAP_REQ_OPTIONS_BUF -> CONFIG_GCOAP_REQ_OPTIONS_BUF
GCOAP_REQ_WAITING_MAX -> CONFIG_GCOAP_REQ_WAITING_MAX
GCOAP_RESEND_BUFS_MAX -> CONFIG_GCOAP_RESEND_BUFS_MAX
GCOAP_RESP_OPTIONS_BUF -> CONFIG_GCOAP_RESP_OPTIONS_BUF
GCOAP_TOKENLEN -> CONFIG_GCOAP_TOKENLEN
2020-01-28 11:59:52 +01:00
Leandro Lanzieri
3f382dc323
net/gcoap: Use COAP_RANDOM_FACTOR_1000 to calculate timeout range
...
With this the range for the random timeout is calculated using
COAP_RANDOM_FACTOR_1000 (ACK_RANDOM_FACTOR in RFC 7252).
2020-01-27 19:47:20 +01:00
Jose Alamos
cc2fd97194
net/gnrc_lorawan: remove netdev abstraction from MAC layer
2020-01-27 10:10:24 +01:00
Leandro Lanzieri
881f17a816
Merge pull request #13123 from PeterKietzmann/pr_kconf_6lo
...
Kconfig: Expose gnrc/sixlowpan configurations
2020-01-20 17:41:52 +01:00
Martine S. Lenders
28ef3b6b0b
gnrc_ipv6_ext_frag: remove fragment header when n-th fragment is first
...
The reassembly buffer only needs (and stores) the headers *before* the
fragment header (called per-fragment headers in RFC 8200, section 4.5).
Currently, when a subsequent IPv6 fragment is received before the first
fragment the fragment header is however not removed. With this fix it
does.
2020-01-17 18:54:37 +01:00
PeterKietzmann
55282a1b1d
net/gnrc/sixlowpan/frag/vrb:Move timeout macro to 'CONFIG_' namespace
2020-01-17 18:09:19 +01:00
PeterKietzmann
cc6bee4986
net/gnrc/sixlowpan/frag/vrb:Move size macro to 'CONFIG_' namespace
2020-01-17 18:09:19 +01:00
PeterKietzmann
7d2c9ef418
net/gnrc/sixlowpan/nd:Move ND time macro to 'CONFIG_' namespace
2020-01-17 18:09:19 +01:00
PeterKietzmann
582779a7a0
net/gnrc/sixlowpan/frag/rb:Move del. timer macro to 'CONFIG_' namespace
2020-01-17 18:09:19 +01:00
PeterKietzmann
811facfa15
net/gnrc/sixlowpan/frag/rb:Move timeout macro to 'CONFIG_' namespace
2020-01-17 18:09:19 +01:00
PeterKietzmann
9389d5b90f
net/gnrc/sixlowpan/frag/rb:Move size macro to 'CONFIG_' namespace
2020-01-17 18:09:19 +01:00
PeterKietzmann
89af238eec
net/gnrc/sixlowpan/frag/fb:Move size macro to 'CONFIG_' namespace
2020-01-17 18:09:19 +01:00
PeterKietzmann
b5ea3122e7
net/gnrc/sixlowpan:Move queue size macro to 'CONFIG_' namespace
2020-01-17 18:09:19 +01:00
PeterKietzmann
de99b99b35
Kconfig: Expose gnrc/sixlowpan configurations
2020-01-17 18:09:14 +01:00
Sebastian Meiling
48fbd446fe
Merge pull request #8796 from miri64/dhcpv6c-pd/feat/initial
...
dhcpv6: Initial implementation of a client (with IA_PD support)
2020-01-16 13:32:51 +01:00
Martine Lenders
15c828cf92
gnrc_dhcpv6_client: provide GNRC-specific DHCPv6 parts
2020-01-16 12:36:10 +01:00
Martine Lenders
1048d67c76
dhcpv6: provide initial client implementation
...
This implements a client for DHCPv6 IA_PD (Identity Association for
Prefix Delegation). Goal was to have a IETF-compliant alternative to
UHCP. The implementation was based on RFC 8415.
2020-01-16 12:36:03 +01:00
fc45c2cc83
Merge pull request #12848 from miri64/gnrc_sixlowpan_frag_rb/fix/interval-fixes
...
gnrc_sixlowpan_frag_vrb: fix issues with interval marker inherited from base
2020-01-15 20:57:49 +01:00
Martine S. Lenders
d9ecc0b9bb
gnrc_sixlowpan_frag_vrb: append intervals of given base if entry exists
...
Otherwise the list in `base->ints` will get lost.
2020-01-15 15:00:03 +01:00
Francisco
43d2ca4771
Merge pull request #12602 from miri64/sock_async_event/feat/initial
...
sock_async: initial import of event-based implementation
2020-01-15 14:32:05 +01:00
Martine Lenders
e46ad92cd3
sock_async_event: initial import of event-based implementation
2020-01-15 09:56:11 +01:00
Martine S. Lenders
3082710f65
gnrc_ipv6_nib: allow for configuration of static link-local addresses
...
This feature was removed without replacment in 71a7dbf918
, but it can
still be useful.
Co-Authored-By: smlng <s@mlng.net>
2020-01-14 15:46:18 +01:00
Francisco
1d206bca24
Merge pull request #12409 from miri64/gnrc_netif/fix/highest-source-scope-wins
...
gnrc_netif: highest source address scope wins selection
2020-01-14 10:43:24 +01:00
Martine S. Lenders
018e3dd437
gnrc_netif: use scope directly from address for multicast
2020-01-14 09:54:18 +01:00
Martine S. Lenders
85737a0436
gnrc_netif: remove misleading comment
...
The comment exists since the introduction of the [original
implementation], but its meaning is unclear and misleading, as the code
doesn't do anything with link-local.
[original implementation]: https://github.com/RIOT-OS/RIOT/pull/3561
2020-01-14 09:54:18 +01:00
Martine S. Lenders
46fd632e91
gnrc_netif: highest source address scope wins selection
...
Rule 2 of the source address algorithm outlined in [RFC6724] states the
possible source addresses must also be compared among each other:
> Rule 2: Prefer appropriate scope.
> If Scope(SA) < Scope(SB): If Scope(SA) < Scope(D), then prefer SB and
> otherwise prefer SA. Similarly, if Scope(SB) < Scope(SA): If
> Scope(SB) < Scope(D), then prefer SA and otherwise prefer SB.
Our current implementation doesn't do that. It just checks if the scope
of a possible source is lesser than the scope of the destination
(which involves the second "If" in the rule).
This fix grants points according to the scope of an address. If the
scope matches, they get the highest points, ensuring that the selected
source will always be reachable from the destination.
[RFC6724]: https://tools.ietf.org/html/rfc6724
2020-01-14 09:54:17 +01:00
PeterKietzmann
fb71ccc098
net/gnrc/netif:GNRC_NETIF_MIN_WAIT_AFTER_SEND_US to 'CONFIG_' namespace
2020-01-13 12:28:37 +01:00
PeterKietzmann
9e83d12bc0
net/gnrc/netif: Move GNRC_NETIF_IPV6_ADDRS_NUMOF to 'CONFIG_' namespace
2020-01-13 12:28:37 +01:00
PeterKietzmann
724d58b074
net/gnrc/netif: Move GNRC_NETIF_MSG_QUEUE_SIZE to 'CONFIG_' namespace
2020-01-13 12:28:37 +01:00
PeterKietzmann
b28a586702
net/gnrc/netif: Move GNRC_NETIF_DEFAULT_HL to 'CONFIG_' namespace
2020-01-13 12:28:37 +01:00
PeterKietzmann
c654d1fc8b
Kconfig: Expose gnrc/netif configurations
2020-01-13 12:28:31 +01:00
PeterKietzmann
b2f0642825
Kconfig: Expose gnrc/ipv6/configurations
2020-01-10 12:23:35 +01:00
PeterKietzmann
3f0a19a9bc
net/gnrc/ipv6: Move config macros to 'CONFIG_' namespace
2020-01-07 15:36:04 +01:00
Martine S. Lenders
37d99c11b0
gnrc_sock: use …/async/types.h
instead of …/async.h
2020-01-07 10:13:01 +01:00
Francisco
dcc5299682
Merge pull request #10667 from miri64/gnrc_sixloenc/enh/6lo-config
...
gnrc_netif: make 6LoENC dynamically configurable
2020-01-06 13:19:24 +01:00
Francisco
d4c3476669
Merge pull request #12944 from leandrolanzieri/pr/kconfig_migrate/net/sock_util
...
Kconfig: Expose net/sock/util configurations
2020-01-03 11:41:20 +01:00
Leandro Lanzieri
b58b5792e9
Kconfig: Expose gnrc/lorawan configurations
2019-12-20 14:14:32 +01:00
Leandro Lanzieri
449da7602d
gnrc/lorawan: Express timer drift in per mille instead of percentage
2019-12-20 14:12:43 +01:00
José Alamos
7d4082a6a3
Merge pull request #12922 from leandrolanzieri/pr/kconfig_migrate/gnrc/ipv6_blacklisting
...
Kconfig: Expose gnrc/ipv6/blacklist configurations
2019-12-20 11:32:46 +01:00
Martine S. Lenders
e1ae44b536
gnrc_sixlowpan_frag_stats: actualize pseudo-module
...
Having the definitions sit in the `net/gnrc/sixlowpan/frag.h` header
does not make much sense, when using Selective Fragment Forwarding
(and the fragmentation buffer already includes a
`net/gnrc/sixlowpan/frag/stats.h` header), so they are moved to their
own header. Since with this change it makes more sense to have the
statistics stored in their own sub-module, the pseudo-module is also
actualized.
2019-12-18 15:45:03 +01:00
Leandro Lanzieri
047c87d67f
Kconfig: Expose net/sock/util configurations
2019-12-13 12:22:36 +01:00
Leandro Lanzieri
c74fa5367c
net/sock/util: Move configuration macros to 'CONFIG_' namespace
...
Macros that changed:
SOCK_SCHEME_MAXLEN -> CONFIG_SOCK_SCHEME_MAXLEN
SOCK_HOSTPORT_MAXLEN -> CONFIG_SOCK_HOSTPORT_MAXLEN
SOCK_URLPATH_MAXLEN -> CONFIG_SOCK_URLPATH_MAXLEN
2019-12-13 12:04:54 +01:00
Leandro Lanzieri
3383bae8fe
Kconfig: Expose gnrc/ipv6/blacklist configurations
2019-12-11 10:51:04 +01:00
Leandro Lanzieri
56e61dac47
net/gnrc/ipv6_blacklist: Move config macros to 'CONFIG_' namespace
...
Macros that changed:
GNRC_IPV6_BLACKLIST_SIZE -> CONFIG_GNRC_IPV6_BLACKLIST_SIZE
2019-12-11 10:39:16 +01:00
Martine Lenders
d926810e0b
Merge pull request #12893 from leandrolanzieri/pr/kconfig_migrate/gnrc/ipv6_whitelisting
...
Kconfig: Expose gnrc/ipv6/whitelist configurations
2019-12-10 18:32:34 +01:00
Benjamin Valentin
00ff291f2e
gnrc_lwmac: use uintptr_t to get value of pointer
...
A pointer is not 32 bit on all platforms.
Since gnrc_lwmac only stores 16 bit in the pointer variable it is
still save to cast like this even on AVR, but cast to uintptr_t
instead of uint32_t.
fixes #12869
2019-12-10 17:18:30 +01:00
Martine S. Lenders
3bf426e6fc
gnrc_sixlowpan_iphc: factor-out IPv6 header decoding into own function
2019-12-10 15:46:51 +01:00
Martine S. Lenders
8ce3c745c8
gnrc_sixlowpan_iphc: add extension header encoding
2019-12-10 15:31:56 +01:00
Martine S. Lenders
a0a334a491
gnrc_sixlowpan_iphc: factor-out IPv6 header encoding into own function
2019-12-10 15:29:06 +01:00
Martine Lenders
f38f974d86
Merge pull request #12629 from miri64/gnrc_sixlowpan_iphc/enh/vrb-creation
...
gnrc_sixlowpan_iphc: add fragment forwarding stubs
2019-12-10 14:58:01 +01:00
Martine S. Lenders
3273602f24
tests: provide test application for IPHC+VRB behavior
2019-12-10 13:59:41 +01:00
Martine Lenders
a689f51e9a
gnrc_sixlowpan_iphc: add rudimentary forwarding routine
2019-12-10 13:56:33 +01:00
Martine S. Lenders
e31394536b
gnrc_sixlowpan_iphc: factor encoding out of sending function
2019-12-10 13:56:05 +01:00
Martine S. Lenders
556d71a7da
gnrc_sixlowpan_iphc: create VRB entry from uncompressed header
...
... when VRB is available
2019-12-10 13:56:02 +01:00
José Alamos
2027efa9f4
Merge pull request #12894 from leandrolanzieri/pr/gnrc_doc_config_group
...
net/gnrc: Group compile configuration Doxygen groups and add GNRC LoRaWAN
2019-12-09 18:20:35 +01:00
Martine Lenders
7b13781cd2
Merge pull request #12625 from miri64/gnrc_sock/enh/async-support
...
gnrc_sock: provide asynchronous event implementation
2019-12-09 12:39:58 +01:00
Leandro Lanzieri
9a0a514fdd
Kconfig: Expose gnrc/ipv6/whitelist configurations
2019-12-06 15:04:14 +01:00
Leandro Lanzieri
a626fec016
Kconfig: Add net/gnrc file and menu
2019-12-06 14:31:00 +01:00
Leandro Lanzieri
37624f4eed
Kconfig: Add 'Networking' file and menu
2019-12-06 14:23:39 +01:00
Leandro Lanzieri
de2fbeb112
net/gnrc/ipv6_whitelist: Move config macros to 'CONFIG_' namespace
...
Macros that changed:
GNRC_IPV6_WHITELIST_SIZE -> CONFIG_GNRC_IPV6_WHITELIST_SIZE
2019-12-06 13:57:52 +01:00
Leandro Lanzieri
47981b96c1
sys/net/gnrc: Add GNRC configuration Doxygen group
2019-12-06 12:18:03 +01:00
Martine Lenders
159accff37
gnrc_ipv6: fix source check for loopback address
...
When the destination address is the loopback address (`::1`) in GNRC
the selected network interface typically is `NULL`, as with GNRC no
loopback interface de facto exists. So the assertion when checking if
the source address is valid if `netif != NULL` fails on that check.
This change fixes that issue by checking if the destination address is
the loopback address, before checking the validity of the source
address.
2019-12-05 23:38:53 +01:00
Jose Alamos
8999528390
net/gnrc_lorawan: add MIB for setting RX2 datarate
2019-12-03 14:48:29 +01:00
Jose Alamos
1e9bb7c175
net/gnrc_lorawan: add MIB for setting L2 address
2019-12-03 14:27:56 +01:00
Jose Alamos
99dbcecc3a
net/gnrc_lorawan: remove netdev SAP interface
2019-12-03 14:08:35 +01:00
Martine Lenders
09c46e273d
Merge pull request #12845 from miri64/gnrc_sixlowpan_frag_rb/fix/rm-by-datagram-pkt-release
...
gnrc_sixlowpan_frag_rb: fix memory-leak in _rm_by_datagram()
2019-12-02 19:20:55 +01:00
benpicco
900c6994af
Merge pull request #12855 from miri64/gnrc_gomach/fix/i12853
...
gnrc_gomac: don't use constant as argument for RTT callback
2019-12-02 15:10:40 +01:00
Martine Lenders
e1f81f02fd
gnrc_gomac: don't use constant as argument for RTT callback
...
The RTT callback for a super-frame cycle uses the `arg` pointer to set
the message value that then is handed to the GoMacH thread. However,
in both instances the timer is scheduled the constant
`GNRC_GOMACH_EVENT_RTT_NEW_CYCLE` is provided. This means the argument
is not really necessary.
2019-12-02 08:14:55 +01:00
Martine S. Lenders
0251d6585e
gnrc_sixlowpan_frag_rb: error when interval buffer is full
2019-11-29 18:00:54 +01:00
Martine S. Lenders
3fe1bf59a4
gnrc_sixlowpan_frag_rb: fix memory-leak in _rm_by_datagram()
...
This fits with the semantics of this function which doesn't provide or
uses any state of the reassembly buffer provided by the user, but finds
the entry itself and then removes it. This gives the user no chance to
remove the packet in the reassembly buffer entry, so
`gnrc_sixlowpan_frag_rb_rm_by_datagram()` has to release the packet
(other than `gnrc_sixlowpan_frag_rb_remove()` where not releasing the
packet is desired as it might be handed up to an upper layer).
2019-11-29 15:38:13 +01:00
Leandro Lanzieri
8aa66e94ea
net/gnrc/netif: Remove 'if' prefix from interface names
2019-11-29 10:22:00 +01:00
Hauke Petersen
3a7b60e4d4
net/cord_epsim: adapt to gcoap API changes
2019-11-28 12:50:24 +01:00
Hauke Petersen
7b1217a529
net/cord_ep: adapt to gcoap API changes
2019-11-28 12:50:24 +01:00
Hauke Petersen
3fd8357071
net/gcoap: allow to pass user context to requests
2019-11-28 12:50:24 +01:00
Hauke Petersen
383f395af3
net/gcoap: pass memo to resp_handler directly
2019-11-28 12:48:37 +01:00
MichelRottleuthner
bf676d4728
Merge pull request #11022 from jia200x/pr/gnrc_lorawan
...
gnrc_lorawan: add support for GNRC based LoRaWAN stack
2019-11-27 09:25:20 +01:00
Jose Alamos
43b7164796
gnrc_pktdump: add NETTYPE_LORAWAN
2019-11-26 21:52:06 +01:00
Jose Alamos
2edaead13e
gnrc_netif: add gnrc_lorawan adaption layer
2019-11-26 21:52:06 +01:00
Jose Alamos
39951b8f70
gnrc_lorawan: add initial support for LoRaWAN stack
2019-11-26 21:52:06 +01:00
Jose Alamos
a70b1858c4
netopt: add NETOPTs required for gnrc_lorawan
2019-11-26 21:52:05 +01:00
Hauke Petersen
17b1b19fda
net/gcoap: do not allocate RX buf on stack
2019-11-26 15:00:03 +01:00
d4f3747705
sys/net: fix typos
2019-11-23 22:39:38 +01:00
Francois Berder
4a31f94cfc
many typo fixes
...
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-11-23 22:39:07 +01:00
Francisco Molina
ab16222c8b
sys/net/routing/nhdp: fix cpp.check unitialized variable
2019-11-21 11:58:07 +01:00
Francisco Molina
bf3c722abc
sys/net/network_layer: fix cpp.check unitialized variable
2019-11-21 11:58:07 +01:00
Martine S. Lenders
f2d1e661d1
gnrc_netapi: report errors on dispatch
2019-11-21 10:51:13 +01:00
Leandro Lanzieri
3c89597c83
net/gnrc/tcp: Adapt to change in ipv6_addr_split_iface
2019-11-15 14:02:50 +01:00
Leandro Lanzieri
4d4f6ae1d6
net/ipv6: Return string pointer when splitting IPv6 interface.
...
Right now 'ipv6_addr_split_iface' assumes that the interface specifier
will always be a number (based on GNRC way of identifying interfaces),
but this may not be always the case.In order to be able to use the
Network Interface API, interfaces should be referred by their name.
This changes 'ipv6_addr_split_iface' so it returns a pointer to the
string that specifies the interface.
2019-11-15 14:02:50 +01:00
Martine Lenders
02295ce5c7
Merge pull request #12593 from miri64/gnrc_sixlowpan_frag_rb/enh/deletion-timer
...
gnrc_sixlowpan_frag_rb: allow for deletion timer after completion
2019-11-12 17:54:15 +01:00
Martine S. Lenders
11669d9bdc
gnrc_sixlowpan_frag_rb: add missing \n
at end of DEBUG line
2019-11-12 17:06:52 +01:00
Martine S. Lenders
40138fdce8
gnrc_sixlowpan_frag_rb: allow for deletion timer after completion
...
This allows to set a timer between the completion of a datagram in the
reassembly buffer and the deletion of the corresponding reassembly
buffer entry. This allows to ignore potentially late incoming link-layer
duplicates of fragments of the datagram that then will have the
reassembly buffer entry be blocked.
This was noted in this [discussion] for classic 6LoWPAN reassembly (and
minimal fragment forwarding) and is recommended in the current
[selective fragment recovery draft][SFR draft].
[discussion]: https://mailarchive.ietf.org/arch/msg/6lo/Ez0tzZDqawVn6AFhYzAFWUOtJns
[SFR draft]: https://tools.ietf.org/html/draft-ietf-6lo-fragment-recovery-07#section-6
2019-11-12 17:06:52 +01:00
Martine Lenders
918a4ac04d
Merge pull request #12682 from miri64/gnrc_sock/fix/consider-all-snips-for-error
...
gnrc_sock: consider all pktsnip for gnrc_neterr reporting
2019-11-12 11:45:50 +01:00
Martine Lenders
8992dce4da
gnrc_sock: consider all pktsnip for gnrc_neterr reporting
...
As analyzed in #12678 there are cases where different reports can be
generated for the different snips of the packet send via the `sock`.
To catch all errors generated by the stack, the sock has to subscribe
for all snips of the packet sent. If any of the snips reports an error
distinct from `GNRC_NETERR_SUCCESS` or the previous one, we report that
status instead of just the first we receive. This way we are ensured to
have the first error reported by the stack for the given packet.
2019-11-11 16:40:32 +01:00
Marian Buschsieweke
bd8c4b36aa
sys/net/gnrc: Flag cc110x as 6LN
...
In gnrc_netif_init_6ln() the flag GNRC_NETIF_FLAGS_6LN is accidentally not set
for cc110x devices. This commit fixes this.
2019-11-11 09:24:01 +01:00
Martine Lenders
f092c27356
gnrc_ipv6: add missing new-line to debug message
2019-11-10 13:50:56 +01:00
José Alamos
20ea18637f
Merge pull request #10485 from miri64/gnrc_netif/enh/default-init
...
gnrc_netif: assume `netif->ops->init()` to be set to at least a default
2019-11-07 11:41:05 +01:00
Martine Lenders
6493a9e69f
gnrc_netif: assume netif->ops->init()
to be set
2019-11-07 11:00:36 +01:00
Martine Lenders
14a2f6bc18
gnrc: use gnrc_netif_default_init() for all implementations
2019-11-07 11:00:36 +01:00
Martine Lenders
09b5db28f1
gnrc_netif: expose common init function as default
2019-11-06 18:45:16 +01:00
Martine Lenders
4b82a56c89
gnrc_netif: introduce common init function
2019-11-06 18:45:15 +01:00
Martine Lenders
ca37cde142
gnrc_sixlowpan_frag_fb: introduce function to get entry by tag
2019-11-04 20:04:39 +01:00
Martine Lenders
8c3dc66ad8
gnrc_sixlowpan_frag: factor-out and rename fragmentation buffer
...
The name `fragment_msg` or `frag_msg`/`msg_frag` always to me was a bit
misplaced, as it basically implements an asynchronous fragmentation
buffer and doesn't necessarily have anything to do with messages.
This change
1. changes the name to `fb` (for fragmentation buffer)
2. factors its code out to its own sub-module so it can be re-used by
other 6LoWPAN fragmentation schemes like [Selective Fragment
Recovery]
[Selective Fragment Recovery]: https://tools.ietf.org/html/draft-ietf-6lo-fragment-recovery-05
2019-11-04 20:04:37 +01:00
Martine Lenders
79c8fc5405
Merge pull request #12599 from miri64/gnrc_sixlowpan_frag/enh/remove-code-dup
...
gnrc_sixlowpan_frag: various optimizations and clean-ups on sending
2019-11-04 19:54:33 +01:00
Martine Lenders
2a1e002d6d
Merge pull request #12627 from miri64/gnrc_sixlowpan_iphc_nhc/enh/frag+iphc-payload_len
...
gnrc_sixlowpan_iphc_nhc: determine UDP hdr length from RB
2019-11-01 19:47:08 +01:00
Martine S. Lenders
f33111a9c2
gnrc_sixlowpan_iphc: remove duplicate gnrc_netif_hdr_get_netif()
...
The interface is already fetched in the beginning of the function and
doesn't change during its run, so getting the interface again at this
point is just redundant.
2019-11-01 18:29:44 +01:00
Martine S. Lenders
806f33fce4
gnrc_sixlowpan_iphc_nhc: determine UDP hdr length from RB
...
When decoding IPHC in a fragmented datagram, relying on the size of the
allocated space for the decoded packet is wrong when fragments are
forwarded and decoded on an intermediate node (for which the reassembly
buffer's space is used): Using the full datagram size for allocation in
this case would be wasteful, so the allocated space is only marginally
larger than the fragment's compressed form.
This in turn results in the wrong UDP payload size being chosen and
even worse being forwarded to the subsequent nodes.
This change uses the (virtual) reassembly buffer's `datagram_size`
instead of relying on the allocated space for the encoded
datagram/fragment.
2019-11-01 13:18:00 +01:00
Martine S. Lenders
b713413c52
gnrc_sock: provide asynchronous event implementation
2019-11-01 00:21:04 +01:00
Martine Lenders
5d11cf26f0
gnrc_netif: use 6LoENC only when 6Lo flag is set
2019-10-30 17:10:34 +01:00
Martine Lenders
e04a190511
gnrc_netif_ethernet: make 6LO configurable for 6LoEnc
2019-10-30 17:10:34 +01:00
8b06560c02
sys/net/nanocoap: correctly initialize array
2019-10-30 17:03:06 +01:00
95da51bd7f
sys/net/nanocoap: fix potential use of uinitialized variable
2019-10-30 17:03:06 +01:00
5d1480a4b8
sys/net/nanocoap: fail when start data cannot be parsed
2019-10-30 17:03:06 +01:00
1aa1e2c8cc
sys/net/nanocoap: return ENOENT if parsing option failed
...
This fixes a potential use of uninitialized len in subsequent function calls.
This was reported by scan-build
2019-10-30 17:03:06 +01:00
Martine Lenders
bf5b53392c
Merge pull request #12603 from jia200x/pr/link_up
...
netopt: redefine NETOPT_LINK_CONNECTED
2019-10-30 15:19:07 +01:00
Jose Alamos
43a5fdc870
netopt: rename NETOPT_LINK_CONNECTED
2019-10-30 12:13:36 +01:00
Martine S. Lenders
dba2f9e5ea
gnrc_sixlowpan_frag: remove code duplication on fragment creation
2019-10-29 15:34:24 +01:00
Martine S. Lenders
d5e21f35c3
gnrc_sixlowpan_frag: copy netif header directly
2019-10-29 15:34:24 +01:00
Martine Lenders
05d338169d
Merge pull request #12367 from brummer-simon/gnrc_tcp-fix_recv_conn_closed
...
gnrc_tcp: return immediatly on gnrc_tcp_recv if a connection is closing
2019-10-29 09:54:43 +01:00
benpicco
456982f595
Merge pull request #12595 from aabadie/pr/net/sock_util_scan_build
...
sys/net/sock_util: fix dead initialization warning
2019-10-28 17:24:50 +01:00
2b0b591c85
sys/net/sock_util: fix dead initialization warning
...
This was reported by LLVM scan build. The value assigned at initialization is never used, so could be removed
2019-10-28 16:35:18 +01:00
a9399810d5
sys/net/uhcp: remove unused returned value in uhcp_client
2019-10-28 15:14:40 +01:00
aaadaccc3f
sys/net/nanocoap: fix dead assignment in nanocoap server
2019-10-27 10:49:41 +01:00
Francisco
0364c39694
Merge pull request #12408 from miri64/gnrc_netif/fix/src-addr-selection
...
gnrc_netif: only use prefix matching as tie-breaker in source selection
2019-10-24 17:14:17 +02:00
Martine S. Lenders
e9d75f5655
gnrc_netif: remove filter parameter from _match_to_idx()
...
`_match_to_idx()` was removed from source address selection (which was
the only one setting the filter parameter to a non-NULL value), so it
is the parameter is not needed anymore.
2019-10-24 16:04:41 +02:00
Martine S. Lenders
e787f6b60d
gnrc_netif: only use prefix matching as tie-breaker in source selection
...
When source address selection is done, both RFC and comments in the code
state, that a longest prefix match should *only* be used as a
tie-breaker between more than one viable candidate. If there is only one
address, there is
a) no need for a tie-breaker
b) in the case of either the destination address or the single remaining
address being ULAs ([which are considered to be of global scope]
[RFC4193]) possibly not matching, as `fd00::/7` and e.g. `2001::/8`
do not have a common prefix.
(b) in fact causes the match function to return -1, causing the source
address selection to return -1, causing the outer function to return the
first address it found (which most often is the link-local address),
causing e.g. a ping to an ULA to fail, even is there is a global
address.
[RFC4193]: https://tools.ietf.org/html/rfc4193
2019-10-24 16:04:41 +02:00