1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-01-16 10:52:45 +01:00
Commit Graph

2146 Commits

Author SHA1 Message Date
Hauke Petersen
7c6b72d3b4 net/gnrc/rpl: use ztimer_msec if available 2021-06-16 20:39:32 +02:00
Jose Alamos
9dce6eba14
ieee802154: add Auto ACK compile time config 2021-06-16 14:19:39 +02:00
Jose Alamos
70815e012b
ieee802154/hal: add set config addr filter 2021-06-16 14:19:39 +02:00
Jose Alamos
eb7282db0a
ieee802154/hal: add set frame filter 2021-06-16 14:19:38 +02:00
Jose Alamos
e13aac3909
ieee802154/hal: add config src address match 2021-06-16 14:19:38 +02:00
Jose Alamos
7343c1c503
gnrc_netif_lorawan: add netif hdr support 2021-06-16 13:18:04 +02:00
Jose Alamos
dfacff9568
gnrc_lorawan: add support for RTT 2021-06-16 13:13:37 +02:00
Jose Alamos
2f680eaf01
gnrc_lorawan: remove xtimer and msg dependency
This commit removes the dependency to xtimer and RIOT messages.
This step is required to use other sources of events (e.g event_queue)
and timers (RTT)
2021-06-16 13:03:28 +02:00
Jose Alamos
7fd0364d59
net/netopt: deprecate NETOPT_LORAWAN_TX_PORT 2021-06-15 16:25:03 +02:00
benpicco
c7d12733ea
Merge pull request #16523 from benpicco/boards/same54-xpro-lock_eui
boards: lock EUI provider to interface type
2021-06-15 16:16:12 +02:00
Benjamin Valentin
056dcd8ae1 gnrc_dhcpv6_client_6lbr: choose downstream if as !upstream 2021-06-15 15:35:10 +02:00
Leandro Lanzieri
fee045d3e9
Merge pull request #16515 from fabian18/ieee802154_security_kconfig
Kconfig: expose IEEE 802.15.4 Security to Kconfig
2021-06-15 11:21:41 +02:00
Benjamin Valentin
118e08607a net/eui_provider: prohibit use of NETDEV_ANY for EUI device type
The EUI provider function only gets the index of a device within it's
device type.
Using NETDEV_ANY with two devices of different type causes the EUI
provider to be used for both (since both interfaces are index 0 of
their type).

To prevent this, require EUI providers to be locked to an interface type.
2021-06-08 14:30:40 +02:00
János Brodbeck
2e523bf101
net/gcoap: change return type from gcoap_req_send() to ssize_t 2021-06-04 17:15:04 +02:00
Fabian Hüßler
93759a747b ieee802154_security: adapt to Kconfig 2021-06-03 08:38:25 +02:00
Mumpfie
185570b034 gnrc tx-sync: add cast for c++ compatibility 2021-05-04 16:59:56 +02:00
Fabian Hüßler
346f92f663 sys/net/link_layer/ieee802154: stricter names for security types
stricter prefixing of security related types and constants with
"ieee802154_sec_"
2021-04-27 08:54:19 +02:00
Fabian Hüßler
7036c2b9ee sys/net/link_layer/ieee802154: fix small typos 2021-04-27 08:54:19 +02:00
Leandro Lanzieri
6428505017
net/sock/dtls: allow CREDMAN_TAG_EMPTY on sock creation 2021-04-01 09:47:39 +02:00
Leandro Lanzieri
95fd4f947a
net/sock/dtls: add documentation on multi-credential 2021-04-01 09:47:37 +02:00
Leandro Lanzieri
8b57b87258
net/sock/dtls: add RPK callback for credential selection 2021-04-01 09:47:37 +02:00
Leandro Lanzieri
81892ee389
net/sock/dtls: add client PSK callback for credential selection 2021-04-01 09:47:37 +02:00
Leandro Lanzieri
62fb9ad69f
net/sock/dtls: allow to register multiple credentials into a sock 2021-04-01 09:47:36 +02:00
Leandro Lanzieri
d7440ce1e3
net/sock/dtls: allow to set PSK Identity hint 2021-04-01 09:47:36 +02:00
Marian Buschsieweke
d86df5b217
sys/net/netopt: make NETOPT_TX_END_IRQ and friends read-only
Reasoning:

- Many drivers already just generate these events regardless of configuration.
  This will make behavior more consistent
- Run time configuration increases ROM, complexity and maintaining
  effort
- At least NETOPT_TX_END_IRQ is now de facto mandatory, as the new
  netdev driver API requires NETDEV_EVENT_TX_COMPLETE to always be
  generated.
2021-03-22 08:14:27 +01:00
Leandro Lanzieri
99c7ec57cf
Merge pull request #15943 from jia200x/pr/gnrc_lorawan_channel_mask
net/gnrc_lorawan: implement channel mask support
2021-03-19 16:23:13 +01:00
Jose Alamos
166ee57a5a
net/gnrc_lorawan: implement funcion to set channel mask 2021-03-19 12:15:03 +01:00
Martine Lenders
214fdf007d
Merge pull request #16193 from miri64/gnrc_netif_pktq/feat/usage
gnrc_netif_pktq: add function to check usage
2021-03-18 23:05:27 +01:00
Martine S. Lenders
db8415b5b6 gnrc_netif_pktq: add function to check usage 2021-03-15 15:13:27 +01:00
05224adc96
sys/net/loramac: move lora time on air compute helper in loramac.h 2021-03-14 11:09:39 +01:00
Marian Buschsieweke
9e55c2d9e9
sys/net/gnrc/lwmac: add missing const qualifier
The name of the thread running the MAC can be stored in ROM.
2021-03-02 17:12:01 +01:00
Marian Buschsieweke
f7f739046d
sys/net/gnrc/gomach: add missing const qualifier
The name of the thread running the MAC can be stored in ROM.
2021-03-02 17:10:58 +01:00
benpicco
b572e67846
Merge pull request #16112 from chrysn-pull-requests/cord-27
sys/net/app/cord: Update to RD draft -27
2021-03-01 14:13:33 +01:00
chrysn
049b5179a7 sys/net/app/cord and examples: Update references to -27
With all (the few necessary) changes done, this can claim -27
compatibility.
2021-03-01 11:59:57 +01:00
Jean Pierre Dudey
e99e2d222d net/ieee802154/submac: select and save PHY mode on device init
Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2021-02-26 11:16:27 +01:00
Jean Pierre Dudey
4ca37c96b3 net/ieee802154: add PHY mode capabilities
- Adds capabilities for each PHY mode. Converts the uint16_t caps field to an
uint32_t in order to hold all capability bits, size of the structure remains
unchanged due to alignment.
- Modifies the test application to configure the PHY mode using the shell
command. Also adds the PHY modes to the capabilities shell command.
- Updates the nrf802154 and cc2538 radio drivers to specify the PHY mode
supported.

Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2021-02-26 11:16:27 +01:00
Jean Pierre Dudey
0cd3deb74c net/ieee802154: add PHY mode configuration
Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2021-02-26 11:16:27 +01:00
Jean Pierre Dudey
8183b1fe78 net/ieee802154: add type for PHY modes enum
Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2021-02-26 11:16:27 +01:00
benpicco
9fc60da4ca
Merge pull request #15830 from benpicco/net/nanocoap_add_uri
nanocoap: add coap_opt_put_uri_pathquery()
2021-02-24 12:09:08 +01:00
Benjamin Valentin
d4e5c25b70 nanocoap: add coap_opt_put_uri_pathquery() 2021-02-23 18:27:54 +01:00
José Alamos
093272c562
Merge pull request #16000 from jeandudey/2021_02_12-ieee802154-bitcaps
net/ieee802154/radio: use bitflags for capabilities
2021-02-17 16:56:25 +01:00
Jean Pierre Dudey
243de6e501 net/ieee802154/radio: use bitflags for capabilities
Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2021-02-17 10:56:28 +01:00
Francisco Molina
3cd12d3e1b
sys/include/net/netstats: move xtimer header where it is needed 2021-02-16 18:18:21 +01:00
Benjamin Valentin
75bb317eba l2util: add l2util_addr_equal() 2021-02-09 12:27:58 +01:00
f97267ba68 sys/net: add netstats_neighbor 2021-02-09 12:27:58 +01:00
Martine Lenders
209b48e385
Merge pull request #15694 from maribu/gnrc_tx_sync
sys/net/gnrc/tx_sync: new module
2021-02-08 19:47:43 +01:00
Marian Buschsieweke
89c69c5450
sys/net/gnrc/tx_sync: new module
The new `gnrc_tx_sync` module allows users of the GNRC network stack to
synchronize with the actual transmission of outgoing packets. This is directly
integrated into gnrc_sock. Hence, if `gnrc_tx_sync` is used, calls to e.g.
sock_udp_send() will block until the network stack has processed the message.

Use cases:
1. Prevent packet drop when sending at high rate
    - If the application is sending faster than the stack can handle, the
      message queues will overflow and outgoing packets are lost
2. Passing auxiliary data about the transmission back the stack
    - When e.g. the number of required retransmissions, the transmission time
      stamp, etc. should be made available to a user of an UDP sock, a
      synchronization mechanism is needed
3. Simpler error reporting without footguns
    - The current approach of using `core/msg` for passing up error messages is
      difficult to use if other message come in. Currently, gnrc_sock is
      busy-waiting and fetching messages from the message queue until the number
      of expected status reports is received. It will enqueue all
      non-status-report messages again at the end of the queue. This has
      multiple issues:
        - Busy waiting is especially in lower power scenarios with time slotted
          MAC protocols harmful, as the CPU will remain active and consume
          power even though the it could sleep until the TX slot is reached
        - The status reports from the network stack are send to the user thread
          blocking. If the message queue of the user thread is full, the network
          stack would block until the user stack can fetch the messages. If
          another higher priority thread would start sending a message, it
          would busy wait for its status reports to completely come in. Hence,
          the first thread doesn't get CPU time to fetch messages and unblock
          the network stack. As a result, the system would lock up completely.
    - Just adding the error/status code to the gnrc_tx_sync_t would preallocate
      and reserve memory for the error reporting. That way gnrc_sock does not
      need to search through the message queue for status reports and the
      network stack does not need to block for the user thread fetching it.
2021-02-03 15:16:42 +01:00
Leandro Lanzieri
2f28a91c4f
net/ieee802154/security: make default cipher_ops implementations private 2021-02-02 09:16:50 +01:00
Leandro Lanzieri
e31daf1583
net/ieee802154: remove dependency of radio HAL in security 2021-02-02 09:16:50 +01:00
Jean Pierre Dudey
38ade8d2e9 ieee802154: add MR-FSK SFD values for 2FSK
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2021-01-27 11:52:53 +01:00
Jean Pierre Dudey
9fe6b9ac99 ieee802154: add MR-FSK PHR length definition
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2021-01-27 11:52:53 +01:00
Leandro Lanzieri
434b6b68d5
Merge pull request #15790 from akshaim/Kconfig_skald_update
net/skald: Update Kconfig implementation
2021-01-26 20:46:27 +01:00
Akshai M
42eb6c4097 net/lorawan : Update documentation
Marked as non-supported:
LORAMAC_DEFAULT_ADR_ACK_LIMIT
LORAMAC_DEFAULT_ADR_ACK_DELAY
LORAMAC_DEFAULT_ADR_TIMEOUT
2021-01-26 16:56:05 +01:00
Akshai M
a2f505f116 net/lorawan : Move 'LORAMAC_DEFAULT_MIN_RX_SYMBOLS' to 'CONFIG_' 2021-01-26 16:52:59 +01:00
Akshai M
216956d7b0 net/lorawan : Move 'LORAMAC_DEFAULT_SYSTEM_MAX_RX_ERROR' to 'CONFIG_' 2021-01-26 16:52:59 +01:00
Akshai M
ed269a7fd7 net/lorawan : Move 'LORAMAC_DEFAULT_MAX_FCNT_GAP' to 'CONFIG_' 2021-01-26 16:52:59 +01:00
Akshai M
85c4b5eb3b net/lorawan : Move 'LORAMAC_DEFAULT_JOIN_DELAY2' to 'CONFIG_' 2021-01-26 16:52:59 +01:00
Akshai M
b6e4e74a87 net/lorawan : Move 'LORAMAC_DEFAULT_JOIN_DELAY1' to 'CONFIG_' 2021-01-26 16:52:59 +01:00
Akshai M
ed1b86492f net/lorawan : Move 'LORAMAC_DEFAULT_JOIN_PROCEDURE' to 'CONFIG_'
Added symbols 'CONFIG_LORAMAC_DEFAULT_JOIN_PROCEDURE_XXX'
for Kconfig exposure
2021-01-26 16:52:59 +01:00
Akshai M
81dac00d5c net/lorawan : Move 'LORAMAC_DEFAULT_RX2_FREQ' to 'CONFIG_' 2021-01-26 16:52:59 +01:00
Akshai M
d5086ecf60 net/lorawan : Move 'LORAMAC_DEFAULT_RX2_DR' to 'CONFIG_'
Added symbols 'CONFIG_LORAMAC_DEFAULT_RX2_DR_XX' to define
choice in Kconfig
2021-01-26 16:52:58 +01:00
Akshai M
d48cee7c2a net/lorawan : Move 'LORAMAC_DEFAULT_RX1_DELAY' to 'CONFIG_' 2021-01-26 16:52:58 +01:00
Akshai M
ca4acbff12 net/lorawan : Move 'LORAMAC_DEFAULT_LINKCHK' to 'CONFIG_' 2021-01-26 16:52:58 +01:00
Akshai M
e93c362df2 net/lorawan : Move 'LORAMAC_DEFAULT_RETX' to 'CONFIG_' 2021-01-26 16:52:58 +01:00
Akshai M
97d873a5bd net/lorawan : Move 'LORAMAC_DEFAULT_ADR' to 'CONFIG_'
Move 'LORAMAC_DEFAULT_ADR' to 'CONFIG_' namespace and model
'CONFIG_LORAMAC_DEFAULT_ADR' as BOOL for Kconfig
2021-01-26 16:52:58 +01:00
Akshai M
d2d90fbce5 net/lorawan : Move 'LORAMAC_DEFAULT_TX_MODE' to 'CONFIG_'
Move 'LORAMAC_DEFAULT_TX_MODE' to 'CONFIG_' and added symbols
for Kconfig exposure
2021-01-26 16:52:58 +01:00
Akshai M
aa3b1da0c4 net/lorawan : Move 'LORAMAC_DEFAULT_TX_PORT' to 'CONFIG_' 2021-01-26 16:52:58 +01:00
Akshai M
3a6c4f2f71 net/lorawan : Move 'LORAMAC_DEFAULT_TX_POWER' to 'CONFIG_'
Move 'LORAMAC_DEFAULT_TX_POWER' to 'CONFIG_' namespace and
assign choices for Kconfig exposure
2021-01-26 16:52:58 +01:00
Akshai M
55f196095d net/lorawan : Move 'LORAMAC_DEFAULT_DR' to 'CONFIG_'
Move 'LORAMAC_DEFAULT_DR' to 'CONFIG_' and enable options for
Kconfig
2021-01-26 16:52:58 +01:00
Akshai M
1befae9022 net/lorawan : Invert 'LORAMAC_DEFAULT_PUBLIC_NETWORK'
Introduced a bool 'LORAMAC_DEFAULT_PRIVATE_NETWORK' to invert
the semantics of 'LORAMAC_DEFAULT_PUBLIC_NETWORK'. Move
'LORAMAC_DEFAULT_PRIVATE_NETWORK' to 'CONFIG_' namespace.
2021-01-26 16:52:58 +01:00
Akshai M
3c5c429541 net/lorawan : Move 'LORAMAC_DEFAULT_NETID' to 'CONFIG_' 2021-01-26 16:52:58 +01:00
Akshai M
e46c4401a9 net/lorawan : Move 'LORAMAC_DEFAULT_DEVICE_CLASS' to 'CONFIG_'
Move 'LORAMAC_DEFAULT_DEVICE_CLASS' to 'CONFIG_' and added
additional symbols for Kconfig exposure.
2021-01-26 16:52:57 +01:00
Akshai M
9e626f471a net/lorawan : Move 'LORAMAC_DEV_ADDR_DEFAULT' to 'CONFIG_' 2021-01-26 16:52:57 +01:00
Akshai M
50e979c600 net/lorawan : Move 'LORAMAC_NWK_SKEY_DEFAULT' to 'CONFIG_' 2021-01-26 16:52:57 +01:00
Akshai M
43d7f28e63 net/lorawan : Move 'LORAMAC_APP_SKEY_DEFAULT' to 'CONFIG_' 2021-01-26 16:52:57 +01:00
Akshai M
d138fa9aad net/lorawan : Move 'LORAMAC_APP_KEY_DEFAULT' to 'CONFIG_' 2021-01-26 16:52:57 +01:00
Akshai M
bcb0ed38ff net/lorawan : Move 'LORAMAC_APP_EUI_DEFAULT' to 'CONFIG_' 2021-01-26 16:52:57 +01:00
Akshai M
5b4a873de5 net/lorawan : Move 'LORAMAC_DEV_EUI_DEFAULT' to 'CONFIG_' 2021-01-26 16:52:57 +01:00
Akshai M
3ecd304354 net/gnrc_lorawan : String keywords for keys
Swapped hex input for keys with string keywords.
2021-01-26 16:52:57 +01:00
Akshai M
f7aff3c0aa net/skald : Add CONFIG_SKALD_ADV_CHANNELS to allow ordered list
Added `CONFIG_SKALD_ADV_CHANNELS` which is then parsed to
and ordered list `SKALD_ADV_CHAN`

Co-authored-by: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2021-01-26 16:17:17 +01:00
Martine Lenders
8e47621e7c
Merge pull request #15839 from maribu/gnrc_pktbuf_release_error
sys/net/gnrc_pktbuf: deduplicate code
2021-01-26 15:23:50 +01:00
Marian Buschsieweke
3970b667aa
sys/net/gnrc_pktbuf: deduplicate code
Implement gnrc_pktbuf_release_error() in gnrc_pktbuf once, rather than providing
two implementations in gnrc_pktbuf_static and gnrc_pktbuf_malloc
2021-01-26 10:50:19 +01:00
Hauke Petersen
4540b6273b ble/skald: switch from xtimer to ZTIMER_MSEC 2021-01-26 09:34:09 +01:00
benpicco
83201ddb00
Merge pull request #15760 from maribu/sock-aux-rssi
sys/net/sock: add sock_aux_rssi
2021-01-25 18:51:11 +01:00
fabian18
f7a77ebb04 drivers/nrf24l01p_ng: netdev driver for nrf24l01+
The driver uses the netdev interface. Due to the limited
capabilities of the transceiver (32 byte FIFO and no source address in the layer2 frame),
it relies on 6LowPAN compression and adds the source address to the frame for that.
2021-01-24 20:49:39 +01:00
Martine Lenders
879fbc179e
Merge pull request #15755 from janosbrodbeck/pr/dtls/get_event_session
sock/async: add function to retrieve session object of current DTLS event
2021-01-22 10:51:51 +01:00
János Brodbeck
050b268705
sock/async: fix typo in doc of sock_dtls_set_cb 2021-01-21 19:03:41 +01:00
János Brodbeck
80d592b1b8
sock/async: introduce function to retrieve session of current DTLS event 2021-01-21 18:58:12 +01:00
Benjamin Valentin
b24480538a nanocoap: add coap_opt_put_string_with_len() 2021-01-21 15:17:28 +01:00
Jose Alamos
0bee606bd4
gcoap: remove gcoap_add_qstring
This feature was marked to be deprecated after the release 2020.10.
Therefore this commit removes that feature.
2021-01-14 16:03:00 +01:00
Francisco Molina
960e0c5f43
sys/ieee802154/submac: add handling of invalid CRC frames 2021-01-13 23:42:45 +01:00
Francisco Molina
fe1e16cdc7
sys/net/iee802154/radio: add IEEE802154_RADIO_INDICATION_CRC_ERROR 2021-01-13 23:42:41 +01:00
Jose Alamos
49f4ecc595
ieee802154: add helpers for RSSI and dBm conversion 2021-01-13 14:14:45 +01:00
Marian Buschsieweke
f0ba796e5d
sys/net/sock: add sock_aux_rssi
Allow accessing the RSSI value of received UDP datagrams / IP packets with the
sock API.
2021-01-13 13:29:13 +01:00
Marian Buschsieweke
b50964f6fc
sys/net/gnrc: fix in-band signaling of no RSSI
Previously a value of 0 was used for the RSSI to signal that this value is not
present in `gnrc_netif_hdr_t`. However, an RSSI of 0 dBm is legal and even very
plausible data.

This commit defines `GNRC_NETIF_HDR_NO_RSSI` as `INT16_MIN`, which is below the
noise floor in the vacuum of outer space and hence impossible to receive.
For consistency, also GNRC_NETIF_HDR_NO_LQI is defined.
2021-01-13 08:53:33 +01:00
János Brodbeck
a72e053d32
sock/dtls: add example of a blocking handshake to the doc 2021-01-04 20:22:58 +01:00
János Brodbeck
a303081101
sock/dtls: introduce function to set the udp endpoint from a session 2021-01-04 20:22:57 +01:00
János Brodbeck
0e12a5d1c3
sock/dtls: introduce function to get the udp endpoint from a session 2020-12-21 18:24:22 +01:00
Hauke Petersen
44c4f1e307
Merge pull request #15652 from haukepetersen/opt_asymcute_asyncsock
net/asymcute: use sock async
2020-12-18 15:09:20 +01:00
Martine Lenders
6646682873
Merge pull request #15611 from benpicco/boards/eui_provider.h
net/eui_provider: API cleanup
2020-12-18 15:02:57 +01:00