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

1190 Commits

Author SHA1 Message Date
Jose Alamos
0759ad85a6 lora: add config macros to config doc group 2018-12-18 13:23:36 +01:00
Jose Alamos
a95bea6cf1 ieee802154: add brief tag to configuration macros 2018-12-18 13:22:21 +01:00
Jose Alamos
f50a239f8e ieee802154: add config macros to config doc group 2018-12-18 13:22:21 +01:00
José Alamos
0dd711cb9f
Merge pull request #10616 from miri64/gnrc_netif/enh/config-group
gnrc_netif: add config macros to config doc group
2018-12-18 11:05:29 +01:00
José Alamos
1c82f7804b
Merge pull request #10617 from miri64/gnrc_ipv6/enh/config-group
gnrc_ipv6: add config macros to config doc group
2018-12-17 13:55:28 +01:00
Sebastian Meiling
496daa0b9f
Merge pull request #10582 from miri64/gnrc_sixlowpan/enh/doc-update
gnrc_sixlowpan: update documentation
2018-12-17 13:32:11 +01:00
Martine Lenders
864ce4fed2 gnrc_ipv6_ext: rename nh to protnum for clarity 2018-12-15 18:21:48 +01:00
Martine Lenders
bbcb3161ea gnrc_ipv6_ext: make single header demux function private
The function is now only called by `gnrc_ipv6_ext_process_hopopt()` and
`gnrc_ipv6_ext_process_all()`, both are part of the `gnrc_ipv6_ext`
module.
2018-12-14 19:07:16 +01:00
Martine Lenders
0580fa5852 gnrc_ipv6: dispatch ext. headers to external interested parties
This way e.g. a raw socket listening for an extension headers protocol
number also get's it.
2018-12-14 19:07:16 +01:00
Martine Lenders
e4fa14370f gnrc_ipv6: handle hop-by-hop option before forwarding 2018-12-14 19:07:15 +01:00
Martine Lenders
5c0d18b25f gnrc_ipv6: move ext. hdr handling out of general demux
They are handled separately anyway and this allows us to handle
the Hop-by-hop option *before* forwarding in a later step.
2018-12-14 19:06:00 +01:00
Martine Lenders
3f17db141d gnrc_ipv6: add config macros to config doc group 2018-12-14 16:34:34 +01:00
Martine Lenders
d37bb41b03 gnrc_netif: add config macros to config doc group 2018-12-14 16:26:56 +01:00
Martine Lenders
a90943457f gnrc_sixlowpan: specify sections in RFC links 2018-12-14 13:57:44 +01:00
José Alamos
b709e63581
Merge pull request #10234 from miri64/gnrc_ipv6/enh/iterate-out-of-ext
gnrc_ipv6: move ipv6_ext iteration out of ext_demux()
2018-12-14 10:44:00 +01:00
Martine Lenders
4257b70c6f gnrc_pktbuf: update tense of deprecation note ;-)
With the preceding changes the subject of the deprecation note on
`gnrc_pktbuf_duplicate_upto()` becomes actual and thus doesn't need to
be referred to in future but past tense.
2018-12-13 17:22:12 +01:00
Martine Lenders
764ed8c300 gnrc_ipv6: make next-header demuxer private
Since the recursion into `gnrc_ipv6_demux()` was removed in
`gnrc_ipv6_ext`, `gnrc_ipv6.c` is the only user of this function,
so it can be made private. It was only made public so it can be used
from `gnrc_ipv6_ext`.
2018-12-13 17:22:12 +01:00
Martine Lenders
02a7bc252a gnrc_ipv6: move ipv6_ext iteration out of ext_demux()
Since with #10233 we now assume IPv6 packets always to not be
pre-parsed, we can iterate over the extension headers by gradually
"eating" them away. This allows us to move the iteration over them
out of `gnrc_ipv6_ext_demux()` and into `gnrc_ipv6_demux()`.

By moving the iteration over all extension headers out of
`gnrc_ipv6_ext_demux()` we also can

1. simplify the extension header handling a lot, as it now
   just a loop inside `gnrc_ipv6_demux()`,
2. remove the recursion to `gnrc_ipv6_demux()` within
   `gnrc_ipv6_ext_demux()`.
2018-12-13 17:22:11 +01:00
Martine Lenders
b0706ca82b netopt: deprecate getting NETOPT_IPV6_IID from netdev 2018-12-12 10:21:39 +01:00
Sebastian Meiling
4f646b4efc
Merge pull request #10441 from miri64/gnrc_netapi/enh/codesize-opt
gnrc_netapi: optimize code-size
2018-12-12 09:51:02 +01:00
Martine Lenders
c16d0bc96e gnrc_netapi: use static inline for high-level wrapper functions
This reduces the overall code size of GNRC applications by a few bytes.
2018-12-11 16:15:51 +01:00
Martine Lenders
26d55bb040 gnrc_sixlowpan: replace HTML links with markdown links 2018-12-10 15:30:59 +01:00
Martine Lenders
70b7c8b09f gnrc_sixlowpan: update flag doc from old gnrc_netif 2018-12-10 15:25:51 +01:00
Martine Lenders
ecd7250c9e gnrc_sixlowpan: update gnrc_netapi doc 2018-12-10 15:17:00 +01:00
Hauke Petersen
23abc89675 net/ble: add generic BLE helper module (bluetil)
So far, the helper module only contains functions for AD
(advertising data) processing
2018-12-07 18:13:53 +01:00
Hauke Petersen
3f93485eab net/ble: add GAP AD constants to generic ble.h 2018-12-07 18:10:53 +01:00
Hauke Petersen
bdc1b89c93
Merge pull request #10520 from miri64/gnrc_netif_hdr/enh/conv-iid-getter
gnrc_netif_hdr: provide wrappers for gnrc_netif_ipv6_iid_from_addr()
2018-12-07 14:37:07 +01:00
Martine Lenders
4d4e96f9f9 gnrc_netif_hdr: provide wrappers for gnrc_netif_ipv6_iid_from_addr()
For convenience ;-).
2018-12-07 12:59:37 +01:00
Hauke Petersen
bd4893277e net/ethernet: remove get_iid() function
the fuctionality was moved into eui48_to_ipv6_iid()
2018-12-06 22:02:01 +01:00
Hauke Petersen
f5355ba36e net: add generic EUI-48 header 2018-12-06 22:02:01 +01:00
Hauke Petersen
fe7fba7674 gnrc/netif/internal: fix copy-paste error
the names for iid_from_addr and iid_to_addr functions in the
else-block were switched around, so this fixes that
2018-12-06 17:16:23 +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
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
Hauke Petersen
6551d8aac0
Merge pull request #10500 from miri64/gnrc_netif_hdr/enh/conv-netif-getter
gnrc_netif_hdr: provide convenience function to get netif pointer from netif header.
2018-12-05 14:26:02 +01:00
Martine Lenders
f95cabe8df gnrc_netif_hdr: add convenience function to get netif pointer 2018-12-05 14:08:32 +01:00
Martine Lenders
959087f207 gnrc_netif_hdr: make input parameters constant 2018-11-30 10:01:52 +01:00
Martine Lenders
92fd8c12de ethernet: make input parameter const 2018-11-29 22:57:15 +01:00
Martine Lenders
9d6a32b551 gnrc_mac: fix header includes
The inclusion of `net/gnrc.h` in `net/gnrc/mac/types.h` header makes it
impossible to include the `net/gnrc/netif.h` header within
`net/gnrc/netif/hdr.h`, due to `net/gnrc/mac/types.h` being included
with `net/gnrc/netif/mac.h` (which is included in `net/gnrc/netif.h`)
2018-11-29 12:39:34 +01:00
Ken Bannister
bec94b0b7a net/gcoap: allow NULL path in gcoap_req_init() 2018-11-28 13:20:22 -05:00
Martine Lenders
310ef3c29e
Merge pull request #10227 from miri64/gnrc_rpl_srh/enh/cleanup-handler
gnrc_rpl_srh: cleanup and optimize SRH processing function
2018-11-27 16:41:44 +01:00
Ken Bannister
424a01ddc1 net/gcoap: remove gcoap attributes from coap_pkt_t 2018-11-24 07:09:25 -05:00
Ken Bannister
034c78d51c net/gcoap: move macros to implementation file 2018-11-24 07:09:25 -05:00
Ken Bannister
f0b966d65d net/gcoap: Use nanocoap options API
Observe still uses coap_pkt_t attribute.
2018-11-24 07:09:25 -05:00
Ken Bannister
fa5ab4eeb6 net/gcoap: Add format option to nanocoap 2018-11-24 07:09:25 -05:00
Martine Lenders
caeebd2787 gnrc_rpl_srh: make seg_left > 0 a precondition
The generic routing header handler is already checking this case, so
don't redo the check again.
2018-11-23 13:56:54 +01:00
José Alamos
1cb780ea26
Merge pull request #10447 from miri64/gnrc_pktbuf/feat/merge
gnrc_pktbuf: add gnrc_pktbuf_merge()
2018-11-22 13:58:14 +01:00
Martine Lenders
8644b5c33e gnrc_pktbuf: fix documentation formatting on gnrc_pktbuf_merge() 2018-11-22 11:35:39 +01:00
Tobias Heider
f03247e752 gnrc_pktbuf: add gnrc_pktbuf_merge()
Co-Authored-By: Martine Lenders <m.lenders@fu-berlin.de>
2018-11-22 11:13:33 +01:00
Hauke Petersen
3df1a82ceb
Merge pull request #10437 from miri64/doc/fix/gnrc_netapi-author-tag
gnrc_netapi: move author tag into file context
2018-11-21 12:40:32 +01:00
Martine Lenders
8f5f4a370d gnrc_netapi: declare data for set function as const 2018-11-20 11:59:38 +01:00
Martine Lenders
633b876c92 gnrc_netapi: move author tag into file context
Otherwise, the authorship is associated with `GNRC_NETAPI_MSG_TYPE_RCV`
in the rendered doc.
2018-11-20 11:09:08 +01:00
Martine Lenders
0aa96a4579 gnrc_icmpv6_error: fix doc alignment 2018-11-17 15:45:25 +01:00
Martine Lenders
ef1132384a gnrc_icmpv6_error: check IPv6 header before starting to build
Check for:

 - if it exists (critical error condition -- non-IPv6 headers should
   not trigger these functions) => assert
 - if it has a multicast source (that shouldn't really happen but
   people might try weird stuff ;-)
 - if it has an unspecified source (can't determine receiver of error
   message => don't send it, don't build it)
2018-11-17 15:45:25 +01:00
Martine Lenders
04a2827089 gnrc_icmpv6_error: provide NOPs when compiled without module
This is aimed to make the usage code of this module more readable.
2018-11-16 17:39:16 +01:00
Martine Lenders
697ad17ed1 icmpv6_error: doc: provide better references to error codes 2018-11-16 17:39:16 +01:00
Martine Lenders
b99e9f4185 gnrc_icmpv6_error: append IPv6 and netif header before sending 2018-11-16 17:39:16 +01:00
Martine Lenders
0b4230e5f6 gnrc_icmpv6_error: fix and optimize pointer search in _param_prob_build 2018-11-16 17:39:16 +01:00
Martine Lenders
36617f3733 gnrc_icmpv6_error: make input pointers constant 2018-11-16 17:39:15 +01:00
Martine Lenders
3b56c78a3b gnrc_icmpv6_error: make build functions private 2018-11-16 17:22:20 +01:00
Martine Lenders
a30bdebc2c gnrc_icmpv6_error: remove static inline from functions 2018-11-16 17:22:20 +01:00
21202e7e18
gnrc/pkt: Add const keyword to length functions 2018-11-16 15:06:39 +01:00
Martine Lenders
f2760c033c gnrc_pktbuf: deprecate gnrc_pktbuf_duplicate_upto 2018-11-13 18:05:09 +01:00
152a9dc325
Merge pull request #10247 from miri64/ipv6_ext_rh/cleanup/central-types
ipv6_ext_rh: define type numbers at central place
2018-11-06 20:31:27 +01:00
Ken Bannister
bcd3e311a4
Merge pull request #10248 from llueder/coap/data_ptr
net/nanocoap: make data pointer c++ compliant
2018-11-05 10:10:45 +00:00
Lasse Lueder
885544b4b0 net/nanocoap: remove convenience ptr in coap_hdr_t
Empty array uint8_t data[] is not allowed in ISO-C++. Replacement: function coap_hdr_data_ptr, which handles
the pointer arithmetic to point where hdr.data pointed
2018-11-02 16:34:57 +01:00
Lasse Lueder
2ddd8ce1a9 net/nanocoap: define coap_data_ptr 2018-11-02 16:33:29 +01:00
Martine Lenders
99e3d780ea gnrc_pktbuf: clarify doc of _start_write()
Resolves #10261
2018-10-28 17:28:24 +01:00
Martine Lenders
ac54a2d2b2 gnrc_pktbuf: add gnrc_pktbuf_reverse_snips() helper function
This allows for

a) testing the packet reversal properly in unittests
b) use it in other places than `gnrc_ipv6`'s receive function
2018-10-25 23:11:33 +02:00
Martine Lenders
521fa8d9cb gnrc_rpl_srh: remove type define
The only usage was removed in parent and we now have a centralized
definition of the routing header types.
2018-10-25 19:21:20 +02:00
Martine Lenders
3c4bd0ac57 ipv6_ext_rh: define RH type numbers at central place
This moves the type numbers for routing headers to a central place, as
we did it with other IANA-registered numbers.
2018-10-25 19:21:19 +02:00
Martine Lenders
84a62da102 gnrc_ipv6_ext_rh: rename GNRC_IPV6_EXT_RH_OK for clarity 2018-10-25 11:11:50 +02:00
Martine Lenders
c54ba49e82 gnrc_ipv6_ext: move ipv6_ext_rh (partly) to GNRC 2018-10-25 11:10:25 +02:00
f48deb48d4 net/nanocoap: rename variable name 'class'
'class' is keyword in c++ and leads to conflicts
2018-10-19 10:27:06 +02:00
Hauke Petersen
18cc7ee3ed net/rdcli: rename to cord_ep 2018-10-17 15:21:49 +02:00
Hauke Petersen
226b9fa383 net/rdcli_simple: rename to cord_epsim 2018-10-17 15:21:49 +02:00
Hauke Petersen
152623577e net/rdcli_config: rename to cord_config 2018-10-17 09:29:19 +02:00
Hauke Petersen
787524400c net/rdcli_common: rename to cord_common 2018-10-17 09:29:19 +02:00
bb3e859680
Merge pull request #10036 from kb2ma/nanocoap/module-doc
net/nanocoap: add module documentation
2018-10-15 13:20:26 +02:00
8ee2bc5ffb coap: deprecate COAP_CT_ content type defines
COAP_CT_ style defines for the content types are deprecated in favour of
COAP_FORMAT_ style defines. COAP_FORMAT_ is expanded to include any
missing content type that was available with COAP_CT_.
2018-10-15 09:44:17 +02:00
Ken Bannister
14c9b3062b
Merge pull request #8932 from bergzand/pr/nanocoap/block2
nanocoap: add server-side block2 support
2018-10-14 13:03:08 +00:00
551b3513db nanocoap: Add server-side block2 support 2018-10-14 14:30:29 +02:00
Hauke Petersen
9acce40aad net: added full RD endpoint implementation 2018-10-12 14:41:40 +02:00
Hauke Petersen
314dfcb805 net/rdcli_common: added RES_LOC_LEN 2018-10-12 14:41:40 +02:00
Ken Bannister
2382855f38 net/nanocoap: add module documentation 2018-10-10 13:31:40 -04: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
chrysn
f07308b07d gnrc: Extend gnrc_ipv6_get_header checks, use in sock recv
gnrc_sock_recv used to duplicate functionality of gnrc_ipv6_get_header,
but additionally checked whether the IPv6 snip is large enough.

All checks are now included in gnrc_ipv6_get_header, but as most of them
stem from programming / user errors, they were moved into asserts; this
constitutes an API change.
2018-09-28 19:40:59 +02:00
Hauke Petersen
f3f673eb45 net/nanocoap: factor out generic CoAP defines 2018-09-26 14:31:57 +02:00
Hauke Petersen
4a59113963 net/nanocoap: use correct type param for _bulid_hdr() 2018-09-26 13:00:39 +02:00
Ken Bannister
949eb21116 net/gcoap: fix doc for order of server resources 2018-09-11 04:31:54 -04:00
Hauke Petersen
4c08e77d00 net/nanocoap: improve option handling
- add generic string put and get functions
- add location path and location query options
- add dedicated functions for getting and setting
  URI query, URI path, location query, and location path
  options
2018-08-30 10:31:03 +02:00
Joakim Nohlgård
29e4a1ba3c gnrc_netif: Introduce GNRC_NETIF_HDR_FLAGS_MORE_DATA 2018-08-13 09:25:32 +02:00
Ken Bannister
3f3df74bcd
Merge pull request #7237 from Ell-i/feature-gcoap-extra-indirection
net/gcoap: Make references to coap_resource_t all const in gcoap
2018-08-07 23:52:59 -04:00
Gaëtan Harter
a7241384be
Merge pull request #9719 from miri64/gnrc_ipv6_nib/enh/emit-conf
gnrc_ipv6_nib: make automatic NDP packet emission (NS/RS) configurable
2018-08-07 17:55:00 +02:00
smlng
fd718dfc74 gnrc_udp: assert ports not zero
UDP port 0 is reserved for system usage, e.g., to tell the OS to
    set a random source port. Hence, neither source nor destination
    port should be 0 when transmitting. This PR adds proper asserts.
2018-08-06 16:09:22 +02:00
Martine Lenders
bdb1e80e0a gnrc_ipv6_nib: make RS emission configurable 2018-08-06 14:51:18 +02:00
Pekka Nikander
8f10d65ad5 net/gcoap: Make references to coap_resource_t const in gcoap
A CoAP resource is a primary object between the application
    and CoAP library.  The Library needs the paths, methods,
    and handlers from it, so that it can call the right handler.
    However, it never needs to change any of them.

    The application also needs the resources.  The application
    may want to declare the resources as const, since it may
    want to store them in flash.
2018-07-30 09:00:21 +03:00
Cenk Gündoğan
f03e52d157
Merge pull request #9484 from miri64/gnrc_sixlowpan_iphc/enh/i8511-recv
gnrc_sixlowpan_iphc: refactor reception for #8511
2018-07-26 07:58:52 +02:00
Martine Lenders
69d9ecc0d9 gnrc_sixlowpan_iphc: refactor reception for #8511
This refactors reception/decoding part of `gnrc_sixlowpan_iphc` to the
more layered approach modeled in #8511. Since the reception part is
already complicated enough I decided to divide send and receive up into
separate changes.
2018-07-25 18:15:09 +02:00
Martine Lenders
9a88cc8004 gnrc_sixlowpan: remove assertion on multiple_by_size function
During the review of #9485 [we found out][1] that an assertion in this
function was invalid. However, the documentation on this assertion
wasn't removed on that. This fixes that.

[1] https://github.com/RIOT-OS/RIOT/pull/9485#issuecomment-407794280
2018-07-25 18:00:30 +02:00
Cenk Gündoğan
7fef5e030a
Merge pull request #9485 from miri64/gnrc_sixlowpan_iphc/enh/i8511-send
gnrc_sixlowpan_iphc: refactor sending for #8511
2018-07-25 17:57:59 +02:00