Martine Lenders
3c19aa7dfc
gnrc_netif_ieee802154: check if mhr_len is lesser than nread
2019-04-15 16:36:31 +02:00
Martine Lenders
768a117ade
gnrc_netif: fix fall-through comment
...
gcc 8.2.1 has problems with the comment being within the `#ifdef`
2019-03-27 19:45:40 +01:00
Martine Lenders
39fe2a30e4
gnrc_netif: use l2util for some functions
...
The following functions can now be wrapped around the more generalized
approach:
- gnrc_netif_ipv6_iid_from_addr()
- gnrc_netif_ipv6_iid_to_addr()
- gnrc_netif_ndp_addr_len_from_l2ao()
- gnrc_netif_eui64_from_addr()
2019-03-26 21:37:20 +01:00
Martine Lenders
05bca5b2cf
gnrc_netif: fix DEBUG output on error
...
`res` is an integer that is always negative in the given case, so using
`%u` here might be a little bit confusing.
2019-03-26 18:23:56 +01:00
Martine Lenders
bcb6b921d3
Merge pull request #11255 from aabadie/pr/gnrc_netif_nrfmin_fix
...
net/gnrc_netif/nrfmin: put NETOPT_PROTO assert at the right place
2019-03-24 15:01:50 +01:00
5fa2528185
net/gnrc_netif/nrfmin: put NETOPT assert at the right place
...
NETOPT depends on GNRC_SIXLOWPAN and should be moved inside the corresponding preprocessor conditional code
2019-03-24 14:34:12 +01:00
Jose Alamos
83ba971412
gnrc_netif: add NETDEV_TYPE_LORA to L2ADDR check
2019-03-24 11:10:41 +01:00
ccc09d9ed4
Merge pull request #11023 from miri64/gnrc_netif_ieee802154/enh/propagate-pend-frames
...
gnrc_netif_ieee802154: propagate pend. frame flag to stack
2019-03-15 12:51:50 +01:00
Martine Lenders
7d8f6abd45
gnrc_netif: check all required options on initialization
...
With `DEVELHELP` activated all required options required by GNRC are
now checked at interface initialization, so that developers of new
link-layer protocols or device drivers notice as soon as possible that
something is missing.
2019-02-26 16:45:21 +01:00
Martine Lenders
0f1bfad15b
gnrc_netif: provide addr_len_from_l2ao for nordic_softdevice_ble
2019-02-26 15:43:39 +01:00
Martine Lenders
13030d5a35
gnrc_netif: expose message queue size configurable
2019-02-26 13:26:20 +01:00
Martine Lenders
727a843ce4
Merge pull request #10905 from maribu/packet_size_l2_pdu
...
net: NETOPT_MAX_{PACKET_SIZE -> PDU_SIZE}
2019-02-22 15:23:00 +01:00
Martine Lenders
998b9ed0d4
gnrc_netif_hdr: make in parameters const
2019-02-21 12:43:08 +01:00
Marian Buschsieweke
4672368d5a
sys/net: NETOPT_MAX_{PACKET_SIZE -> PDU_SIZE}
...
Updated code to use NETOPT_MAX_PDU_SIZE instead of deprecated
NETOPT_MAX_PACKET_SIZE.
2019-02-18 20:15:08 +01:00
Martine Lenders
eac066a1e5
gnrc_netif_ieee802154: propagate pend. frame flag to stack
...
This way we can re-use the flag e.g. for forwarding
2019-02-15 14:46:43 +01:00
Peter Kietzmann
63fd8bc89b
Merge pull request #7577 from miri64/gnrc_netif2/feat/ieee802154-dup-bcast
...
gnrc_netif_ieee802154: drop duplicate broadcast packets (optionally)
2019-02-11 09:42:06 +01:00
Martine Lenders
985d98073f
gnrc_netif_ieee802154: drop duplicate broadcast packets (optionally)
2019-02-04 16:19:48 +01:00
Peter Kietzmann
2c5d1b013e
Merge pull request #10918 from maribu/cc110x_mtu
...
drivers/cc110x: Fixed MTU calculation
2019-02-04 09:44:10 +01:00
Marian Buschsieweke
dae680dcb2
sys/net: Added NETDEV_TYPE_CC110X to MTU init
2019-02-04 09:16:29 +01:00
smlng
6d0384f068
netstats: collect layer 2 netstats in gnrc_netif
...
This the first step in moving the collection of layer 2 netstats from
the low level driver to a central location, ie. gnrc_netif, to avoid
code duplication.
2019-02-01 10:35:03 +02:00
Martine Lenders
0fa8419c4a
gnrc_netif: wrap _ipv6_iid_from_addr() around _eui64_from_addr()
2019-01-29 21:52:53 +01:00
Martine Lenders
16e7fc8336
gnrc_netif: introduce L2 address to EUI-64 conversion
2019-01-29 21:52:53 +01:00
Martine Lenders
a2b2f96fe3
gnrc_netif: rename _create_iid_from_short() to emphesize EUI-64
2019-01-29 21:52:53 +01:00
Cenk Gündoğan
82f30fd8c4
Merge pull request #10514 from miri64/pkg/enh/nordic-softdevice-ble-mac48
...
pkg/nordic_softdevice_ble: Use MAC48 as hardware address
2019-01-17 19:22:36 +01:00
Martine Lenders
7f7bc8fc20
pkg/nordic_softdevice_ble: Use MAC48 as hardware address
...
This is just a compatibility issue waiting to happen as soon as there
is support for a more standard-compliant implementation of BLE (like
e.g. NimBLE ;-)).
2019-01-17 18:08:55 +01:00
Martine Lenders
55b9757044
gnrc_netif: centralize function to init IPv6 MTU
2019-01-16 15:52:54 +01:00
Martine Lenders
ea9bbd72b8
gnrc_netif: centralize function to get l2addr NETOPT
2019-01-16 15:52:54 +01:00
Martine Lenders
8f763535ac
gnrc_netif: centralize S/TLLAO length to address length function
...
The function to infer the link-layer address length from the length of
a S/TLLAO is very dependent on the IPv6 over X specification and thus
should be grouped with the other IP over X functions.
2019-01-16 15:52:53 +01:00
Cenk Gündoğan
6a4c764c95
Merge pull request #10569 from miri64/gnrc_netif/enh/rm-get-NETOPT_IPV6_IID
...
gnrc_netif: make _get_iid() just wrapper around _iid_from_addr()
2019-01-14 14:09:34 +01:00
Martine Lenders
7ae90564d9
gnrc_netif: make _get_iid() just wrapper around _iid_from_addr()
...
This way the IID generation gets much simplified and code duplication
is avoided since it removes GNRC's requirement for NETOPT_IPV6_IID.
2019-01-14 13:42:58 +01:00
Gunar Schorcht
dbb5e886e5
gnrc_netif_ieee802154: use pid member in netif header
...
Use the `gnrc_netif_t::pid` member instead of the pid of the current thread when generating the the `gnrc_netif_hdr` in `gnrc_netif_ieee802154::_recv` function.
2019-01-10 00:09:52 +01:00
Gunar Schorcht
3876dd4bb9
gnrc_netif_ethernet: use pid member in netif header
...
Use the `gnrc_netif_t::pid` member instead of the pid of the current thread when generating the the `gnrc_netif_hdr` in `gnrc_netif_ethernet::_recv` function.
2019-01-10 00:09:24 +01:00
Martine Lenders
481f742c71
gnrc_netif: interface configuration for 6LoENC
2019-01-04 13:32:24 +01:00
b77c802f9b
Merge pull request #10666 from miri64/netopt/new/6lo
...
netopt: provide option to (de-)activate 6Lo
2019-01-03 18:50:31 +01:00
Martine Lenders
45b9dd6f50
gnrc_netif: implement get NETOPT_6LO
2019-01-03 16:21:52 +01:00
Timo Rothenpieler
814e4ecbbe
gnrc_netif: ESP-NOW talks 6Lo now
2018-12-29 13:15:44 +01:00
Hauke Petersen
ec37ff5825
gnrc/netif: use eui48_x() for IID handling
2018-12-06 22:02:01 +01:00
Hauke Petersen
92fcb4de6a
Merge pull request #10513 from miri64/gnrc_netif/enh/iid-conversion
...
gnrc_netif: add general IID to/from l2addr conversion functions
2018-12-06 15:57:06 +01:00
Martine Lenders
a44f7f7b38
gnrc_netif: use general IID conversion function for netif-based
2018-12-06 14:41:30 +01:00
Martine Lenders
5ca30b9b03
gnrc_netif: add general IID to/from l2addr conversion functions
...
They are required to make GNRC's 6Lo IPHC implementation ready for
hardware addresses other than IEEE 802.15.4's.
2018-12-06 14:41:30 +01:00
Martine Lenders
08524ca1d2
gnrc_netif_hdr: move path resolve to gnrc_netif submodule resolution
...
No that we introduced sub-modules to `gnrc_netif` we can move that here
as well.
2018-12-05 15:04:45 +01:00
Martine Lenders
72c5fd06b4
gnrc_netif: make link-layer specific operations proper submodules
2018-12-05 15:04:04 +01:00
Martine Lenders
6547b2185b
gnrc_netif: remove ESP-Now related code-duplication
2018-11-29 15:32:09 +01:00
Martine Lenders
03b91cbcb8
esp_now: use NETDEV_TYPE_ESP_NOW as device type
2018-11-29 13:35:20 +01:00
Hauke Petersen
ace5db70e8
net/gnrc_netif: opt of _ipv6_get_iid()
2018-11-22 15:30:11 +01:00
Joakim Nohlgård
52ac53b4d9
gnrc_netif_ieee802154: Provide LQI, RSSI in raw mode via netif_hdr
...
Useful in sniffer situations to see the signal strength of a received
packet. Also avoids the crash described in
https://github.com/RIOT-OS/applications/pull/54
2018-10-27 00:22:51 +02:00
Gaëtan Harter
c5deac4865
Merge pull request #10023 from miri64/gnrc_netif/fix/no-addr-but-addr-len
...
gnrc_netif: Fix l2addr_len > 0, but no l2addr edge-case
2018-10-25 14:31:32 +02:00
Kevin "Bear Puncher" Weiss
7187bbf8cf
Merge pull request #9426 from gschorcht/esp32
...
ESP32 port
2018-10-16 15:24:25 +02:00
Schorcht
3ac99877ac
cpu: add esp32
2018-10-08 12:20:49 +02:00
Peter Kietzmann
ed24d3622a
Merge pull request #9621 from bergzand/pr/netif/use_fmt
...
gnrc_netif: Use fmt for bytes to hex string
2018-10-04 14:34:37 +02:00
0d71c1ccf7
gnrc_netif: Use fmt for bytes to hex string
2018-10-04 13:34:18 +02:00
90ad1a0782
gnrc_netif_ieee802154: remove state access in recv
...
This replaces the netif->state accesses in netif::recv with a netdev call
and the new netif RAWMODE flag
2018-10-03 21:00:35 +02:00
3c032e5688
gnrc_netif: add rawmode flag
...
Adds a gnrc_netif specific rawmode flag to indicate that the netdev
device is configured in raw mode. This flag is kept in sync with a
possible flag in the netdev device and should only be modified via the
setter call.
2018-10-03 20:59:03 +02:00
Martine Lenders
05aa8ab66b
gnrc_netif: assert that l2addr_len is 0 without address
...
If the device provides an address length, but no address it is
obviously faulty.
2018-09-25 18:45:32 +02:00
05b6af466c
sys: add missig <string.h> includes
2018-09-20 23:47:40 +02:00
Joakim Nohlgård
6d6a6efac7
gnrc_netif: Check return value of netdev init during thread start
2018-08-24 12:11:12 +02:00
Joakim Nohlgård
a247d8bfa5
gnrc_netif_ieee802154: set Frame Pending bit sometimes
...
Set frame pending bit in IEEE 802.15.4 FCF when
GNRC_NETIF_HDR_FLAGS_MORE_DATA is set on the netif header on outbound
frames.
2018-08-13 09:27:18 +02:00
smlng
d4e8c57621
gnrc_netif: generalise address search functions
...
Reduce code duplication by combining internal helper functions
that either loop over interface addresses or multicast groups.
2018-08-06 16:28:48 +02:00
smlng
7cb41ba829
gnrc_netif: cleanup debug output
...
Correct typos and wording in debug output.
2018-08-06 16:28:48 +02:00
smlng
8e3953cd6c
gnrc_netif: cleanup address matching
...
Cleanup of internal helper functions for IPv6 address matching.
2018-08-06 16:28:48 +02:00
30e683ccfe
gnrc_netif: reapply event flags on device reset
...
On a NETOPT_STATE set call with NETOPT_STATE_RESET the netdev device
resets the callback event flags. This requires that after the netdev
device resets, the network stack also reapplies these callback event
flags
2018-07-19 14:51:14 +02:00
ea6a2ef494
gnrc_netif_ieee802154: drop frame on buffer error
...
This adds a netdev recv call to indicate that the received frame should be
dropped when there is no buffer space available to store the frame.
2018-07-12 16:15:00 +02:00
Martine Lenders
8d47210228
gnrc_netif: don't spam user if dev doesn't support NETOPT_RX/TX_END_IRQ
2018-07-09 17:23:31 +02:00
Joakim Nohlgård
bbf4f1e453
gnrc_netif: Enable RX and TX complete events after netdev init
2018-06-29 21:53:23 +02:00
Martine Lenders
55adbee488
gnrc_ipv6_nib: add full RFC4862 DAD support
...
Parts of [RFC4862] were already implemented when NDP via the NIB was
first implemented. This change just includes the DAD portion of
[RFC4862]. This should be enough to make RIOT fully RFC4862 compliant.
[RFC4862]: https://tools.ietf.org/html/rfc4862
2018-05-31 17:11:25 +02:00
Martine Lenders
fce5c758f7
Merge pull request #8841 from miri64/netif/api/initial2
...
netif: Initial import of a common network interface API (second try)
2018-05-29 22:10:50 +02:00
Martine Lenders
a082e10157
gnrc_netif: add GNRC specific implementation of netif.h
2018-05-29 19:49:29 +02:00
Martine Lenders
ea64d39e21
gnrc_netif: fail IPv6 address addition if no space for solicited nodes
2018-05-29 19:30:30 +02:00
Martine Lenders
53c30eef4b
gnrc_netif: check if input for address search is ::
2018-04-03 17:38:26 +02:00
2f179f26bb
sys/net/gnrc/netif: adapt to netdev with iolist
2018-03-06 14:00:31 +01:00
Daniel Krebs
cbc9121ad4
gnrc/netif: fix source address selection for non-matching prefixes
...
According to RFC 6724 ch. 5 rule 8, the source address candidate with
the longest matching prefix has to be selected. The current
implementation discards source addresses that have no matching prefix
(`match = 0`) which is perfectly fine for any global address.
2018-02-08 13:46:46 +01:00
Martine Lenders
d4661af4c8
gnrc: 6Lo fixes for BLE
2018-02-05 22:34:31 +01:00
Martine Lenders
51ae9d9c87
nordic_softdevice_ble: fixes for gnrc_netif usage
2018-02-05 22:34:11 +01:00
Sören Tempel
cfe0143eec
gnrc_netif: Fix out-of-bounds buffer access in ieee802154 netif
2018-02-03 13:08:59 +01:00
Martine Lenders
c40a05b6a8
gnrc: fix link-layer/IPv6 address conversion for XBee
2018-01-31 10:54:28 +01:00
Martine Lenders
d0140a9ec8
Merge pull request #8380 from miri64/gnrc_netif/enh/6lo-nrfmin
...
gnrc_netif: set-up 6Lo for NRFmin
2018-01-23 11:17:29 +01:00
Martine Lenders
851eb767be
gnrc_netif: set-up 6Lo for NRFmin
2018-01-18 13:00:25 +01:00
smlng
026bc281ae
gnrc/netif: fix format error in debug output
2018-01-17 15:25:15 +01:00
7b72f623d2
gnrc: netif2: DEBUG fixes
2018-01-15 14:37:05 +01:00
Martine Lenders
c6833704dc
gnrc_netif: add nrfmin IID support
...
Adds a `nrfmin` case to IID generation, so an IID can be generated
from a `nrfmin` device's (short) address (the long address is just
4-time repetition of the short address).
2018-01-05 13:06:35 +01:00
Martine Lenders
3a493436ba
gnrc_netif: generalize IID generation for short addresses
...
Moves setting of addresses of length lesser than 3 to a function that
initializes the first 5 byte of the IID with `00:00:00:ff:fe` and then
fills up the rest with zeroes and the given short address.
2018-01-05 13:06:35 +01:00
17ac0fa3a7
Merge pull request #8101 from miri64/gnrc_netif2/opt/flag-checkers
...
gnrc_netif: assume flag settings on compile time
2017-12-19 12:10:25 +01:00
Martine Lenders
7b5a42ba58
gnrc_netif: assume flag settings on compile time
2017-12-19 12:04:36 +01:00
Martine Lenders
8a058d32f9
gnrc_netif: pass up returned error of internal function
...
If there is no space left on the interface, a user should be notified
about that when using `gnrc_netapi_set()`
2017-12-18 17:01:17 +01:00
3a572d82cd
Merge pull request #8252 from miri64/gnrc_netif/api/rename-ipv6_addr
...
gnrc_netif: rename IPv6 address "setters"
2017-12-18 17:00:31 +01:00
PeterKietzmann
70810ae697
sys/netif: include release of iovec in gnrc_netif_raw
2017-12-13 17:29:10 +01:00
PeterKietzmann
6295e4a7c9
sys/netif: add missig pkt release in gnrc_netif_raw
2017-12-13 15:44:39 +01:00
Martine Lenders
2ae30cf582
gnrc_netif: rename IPv6 address "setters"
...
This renames the following functions
* `gnrc_netif_ipv6_addr_add()`
* `gnrc_netif_ipv6_addr_remove()`
* `gnrc_netif_ipv6_group_join()`
* `gnrc_netif_ipv6_group_leave()`
by appending the suffix `_internal`.
\## Reasoning
I'd like to provide a helper function for the *public* equivalent using
`gnrc_netapi_set()`, and those names are to nice to not be taken for
those.
\## Procedure
I used a combination of `git grep` and `sed` to do this and fixed the
alignment in the result of some cases by hand.
```sh
git grep --name-only "\<gnrc_netif_ipv6_\(addr\|group\)_\(add\|remove\|join\|leave\)\>" | \
xargs sed -i 's/\<gnrc_netif_ipv6_\(addr\|group\)_\(add\|remove\|join\|leave\)/\0_internal/g'
```
2017-12-13 13:50:39 +01:00
039bdf2aa6
gnrc_netif: Fix debug printing in ieee802154
2017-12-05 14:49:48 +01:00
ef8222e4bd
gnrc_netif: Include od when debugging
2017-12-05 14:48:02 +01:00
smlng
b283b7784c
make: fix various compile errors with Wextra
...
pkg, nordic_softdevice_ble: disable CFLAGS to omit compiler error
sys, pm_layered: fix casting nonscalar to the same type
cpu, stm32_common: fix type-limits, remove always true assert
cpu, stm32f4: fix pointer arithmetic in periph/i2c
drivers, at86rf2xx: fix type-limits where condition always true
saul, gpio: fix if no gpio configured for saul
cpu, saml21: add frequency check to periph/timer
driver, cc110x: fix unused param and type-limts errors
boards, wsn430-common: fix old-style-declaration
make: fix old style definition
drivers, sdcard_spi: fix old style typedef
driver, at30tse: remove unnecessary check
driver, nrf24: fix type-limit
driver, pn532: change buffer from char to uint8_t
tests/driver_sdcard: fix type limits
boards, feather-m0: add missing field inits
driver, tcs37727: fix type limits
pkg, emb6: disable some compiler warnings
tests/emb6: disable some compiler warings
pkg, openthread: fix sign compare and unused params
tests/trickle: fix struct init
tests/pthread_cooperation: fix type limits
board, mips-malta: remove feature periph_uart
shell: fix var size for netif command
gnrc, netif: fix sign-compare
gnrc, nib: fix sign-compare
shell: fix output in netif command
posix: fix type-limits in pthread_cond
2017-11-28 18:31:43 +01:00
Martine Lenders
a63bb6d47b
Merge pull request #6895 from bergzand/drivers/radio-rssi-conv
...
drivers/radios Apply register to rssi dBm conversion to all radios
2017-11-27 23:52:15 +01:00
fa64e93313
netdev: Represent RSSI as int16_t
2017-11-27 21:49:15 +01:00
e5cf4a5396
Merge pull request #8089 from miri64/gnrc_netif/fix/add-sol-nodes
...
gnrc_netif: join/leave solicited nodes IPv6 address add/remove
2017-11-20 14:35:49 +01:00
Martine Lenders
d4e60dae2e
gnrc_netif: join/leave solicited nodes IPv6 address add/remove
2017-11-20 14:22:55 +01:00
Martine Lenders
10b74740eb
gnrc_netif: fix GNRC_NETAPI_GET of arrays
...
The target array currently moves with the loop instead of with the
results. This fixes that.
2017-11-20 14:18:09 +01:00
Cenk Gündoğan
de5e0c677f
gnrc_netif: fix DEBUG output
2017-11-20 00:35:17 +01:00
Martine Lenders
f90a9a875f
gnrc_ndp2: rename to gnrc_ndp
2017-11-17 10:41:54 +01:00
Martine Lenders
31b1ceb440
gnrc_netif2: rename to gnrc_netif
2017-11-17 10:41:54 +01:00
Martine Lenders
71a7dbf918
gnrc: remove legacy network interface structures
2017-11-17 09:20:29 +01:00
Martine Lenders
861035f22d
gnrc: integrate gnrc_netif2
...
Not link-able, since NDP and NC are missing (intentionally)
2017-11-07 19:08:44 +01:00
smlng
645ea902dd
cppcheck: grnc/netif/hdr fix cppcheck warnings
2016-12-20 16:49:10 +01:00
zhuoshuguo
d749962134
gnrc_netif: add fetch-address and fetch-netif-flag functionalities.
2016-12-02 13:22:47 +01:00
Dennis Kirsch
8c25ffeba8
gnrc_netif_hdr: Fix debug output format of if_pid, rssi and lqi
2016-10-17 10:11:08 +02:00
Martine Lenders
f844008a12
gnrc_netif_hdr: print flags
2016-07-26 21:06:36 +02:00
kYc0o
6df58ac767
gnrc: use correct l2addr print len
2016-04-10 16:31:38 +02:00
Oleg Hahm
9f7be0a2e5
gnrc netif: add a check for interface existence
2015-12-03 18:35:23 +01:00
Martine Lenders
74722888f6
gnrc_netif_hdr: un-inline build function
2015-11-27 13:19:50 +01:00
Martine Lenders
58ff31bfe9
gnrc: make all gnrc modules sub-modules of gnrc
2015-08-18 23:00:07 +02:00