- Jul 05, 2018
-
-
Martine Lenders authored
-
Martine Lenders authored
-
- Jul 03, 2018
-
-
Martine Lenders authored
While the current approach for garbage collection in the 6Lo reassembly buffer is good for best-effort handling of *fragmented* packets and nicely RAM saving, it has the problem that incomplete, huge datagrams can basically DoS a node, if no further fragmented datagram is received for a while (since the packet buffer is full and GC is not triggered). This change adds a asynchronous GC (utilizing the existing functionality) to the reassembly buffer, so that even if there is no new fragmented packet received, fragments older than `RBUF_TIMEOUT` will be removed from the reassembly buffer, freeing up the otherwise wasted packet buffer space.
-
- Jun 28, 2018
-
-
Martine Lenders authored
Since IPHC also manipulates the total number of bytes of a received datagram (by decompressing it), this also needs to be exposed. I guess I was too focused on introducing a *generic* packet buffer for a future virtual reassembly buffer (where it isn't needed, but so isn't `pkt` to be honest), that I totally forgot about it in #9352.
-
- Jun 26, 2018
-
-
Martine Lenders authored
This refactors the `gnrc_sixlowpan_frag` module for the API proposed in #8511. The `ctx` for `gnrc_sixlowpan_frag_send()` is required to be a `gnrc_sixlowpan_msg_frag_t` object, so IPHC can later on use it to provide the *original* datagram size (otherwise, we would need to adapt the API just for that, which seems to me as convoluted as this proposal). I also provide an expose function with a future possibility to provide more than just one `gnrc_sixlowpan_msg_frag_t` object later on (plus having cleaner module separation in general).
-
- Jun 22, 2018
-
-
Martine Lenders authored
`s/fuction/function/` ;-)
-
- Jun 20, 2018
-
-
Martine Lenders authored
-
Martine Lenders authored
This change allows the port for local endpoint to be zero 0. If this is the case the `sock_udp_create()` function binds the object to an ephemeral port.
-
- Jun 14, 2018
-
-
Joakim Nohlgård authored
-
Martine Lenders authored
While working on #9352 I noticed that the order of members in the `gnrc_sixlowpan_msg_frag_t` struct costs us 4 bytes in RAM due to byte alignment. This PR fixes the order of members, so they are the most packed.
-
Martine Lenders authored
This exposes the parts of the reassembly buffer to be usable as context as proposed in #8511. I only exposed *parts of* for two reasons: 1. I don't need to expose further types (like `rbuf_int_t`), that are not of interest outside of fragmentation. 2. This allows for an easy future extension for the virtual reassembly buffer as proposed in [[1]]. This makes this change a little bit more involved, because instead of just renaming the type, I also need to add the usage of the `super` member, but I think in the end this little preparation work will be beneficial in the future. [1]: https://tools.ietf.org/html/draft-watteyne-6lo-minimal-fragment-01#section-3
-
- Jun 11, 2018
-
-
Alexandre Abadie authored
-
- Jun 10, 2018
-
-
Ken Bannister authored
Includes string and uint options.
-
- Jun 07, 2018
-
-
Martine Lenders authored
-
- Jun 06, 2018
-
-
Martine Lenders authored
While browsing through the rendered doc, I found the precondition of `gnrc_netreg_register()` somewhat lacking. What is a "message queue"? `gnrc_netreg_entry_t`s have types. Does this apply for all types? This specifies the requirement more: The calling thread **only** needs a message queue (also provides a link to `msg_init_queue()` now for further information), if the provided `gnrc_netreg_entry_t` is of type `GNRC_NETREG_TYPE_DEFAULT` (i.e. thread-wise IPC).
-
- Jun 05, 2018
-
-
Ken Bannister authored
Fix re-register when using the same token. Handle edge cases when change token for a resource. Only set observer and resource on initial registration. Discuss re-registration in documentation.
-
- Jun 04, 2018
-
-
BytesGalore authored
-
- May 31, 2018
-
-
Martine Lenders authored
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
-
- May 29, 2018
-
-
Simon Brummer authored
-
Martine Lenders authored
-
Martine Lenders authored
-
Martine Lenders authored
-
- May 25, 2018
-
-
Koen Zandberg authored
The nanocoap_get function is refactored to split of the request part into a separate function for reuse by other modules. Support for retransmissions when the received frame is malformed is dropped as it was broken anyway.
-
- May 24, 2018
-
-
Cenk Gündoğan authored
-
Cenk Gündoğan authored
-
- May 23, 2018
-
-
Cenk Gündoğan authored
-
Cenk Gündoğan authored
-
- May 22, 2018
-
-
Cenk Gündoğan authored
-
Sebastian Meiling authored
-
Sebastian Meiling authored
-
- May 21, 2018
-
-
Bas Stottelaar authored
-
Bas Stottelaar authored
-
- May 14, 2018
-
-
Marian Buschsieweke authored
Reordered struct members to not waste memory due to padding. Before: ``` C typedef struct { uint8_t src_l2addr_len; uint8_t dst_l2addr_len; kernel_pid_t if_pid; // <-- 16 bit, is aligned to 16 bit uint8_t flags; uint8_t __padding_byte; // <-- Inserted to fulfill padding requirements int16_t rssi; // <-- 16 bit, is NOT aligned to 16 bit uint8_t lqi; uint8_t __padding_byte2;// <-- Inserted to fulfill padding requirements } gnrc_netif_hdr_t; ``` Now: ``` C typedef struct { uint8_t src_l2addr_len; uint8_t dst_l2addr_len; kernel_pid_t if_pid; // <-- 16 bit, is aligned to 16 bit uint8_t flags; uint8_t lqi; int16_t rssi; // <-- 16 bit, is aligned to 16 bit } gnrc_netif_hdr_t; ``` When build for the `bluepill` board, the new layout reduces the size by 2 bytes.
-
- May 06, 2018
-
-
Martine Lenders authored
-
- Apr 26, 2018
-
-
Koen Zandberg authored
-
- Apr 22, 2018
-
-
Kaspar Schleiser authored
-
- Apr 19, 2018
-
-
Hauke Petersen authored
-
- Apr 16, 2018
-
-
Kaspar Schleiser authored
-
- Apr 12, 2018
-
-
Hauke Petersen authored
this makes the configuration of the RD server much simpler, as it does not require the user to 'binary-code' the RD server's address anymore.
-
Hauke Petersen authored
-