[riot-notifications] [RIOT-OS/RIOT] lwip_sock: provide implementation for `sock_*_recv_buf()` (#13701)

Martine Lenders notifications at github.com
Tue May 19 16:35:26 CEST 2020


I adapted `tests/lwip` to be able to receive such large packets:

```diff
diff --git a/tests/lwip/common.h b/tests/lwip/common.h
index 4cea2573df..6d0778a6f6 100644
--- a/tests/lwip/common.h
+++ b/tests/lwip/common.h
@@ -29,7 +29,7 @@ extern "C" {
  * @brief   Application configuration
  * @{
  */
-#define SOCK_INBUF_SIZE         (256)
+#define SOCK_INBUF_SIZE         (1500)
 #define SERVER_MSG_QUEUE_SIZE   (8)
 #define SERVER_BUFFER_SIZE      (64)
 /**
```

Then I started 3 terminals:

<details><summary><strong>Terminal 1 (<code>tshark</code> for sniffing)</strong></summary>

might also show other packets; the important part is the `IPv6 fragment` part

```
$ tshark -i tap0
Capturing on 'tap0'
    1 0.000000000 fe80::d827:1dff:fea8:6424 → fe80::e0bc:7dff:fecb:f550 IPv6 1510 IPv6 fragment (off=0 more=y ident=0xbf684be8 nxt=17)
    2 0.000158170 fe80::d827:1dff:fea8:6424 → fe80::e0bc:7dff:fecb:f550 UDP 122 1337 → 1337 Len=1500
```

</details>

<details><summary><strong>Terminal 2 (<code>tests/lwip</code> as UDP server)</strong></summary>

```
$ make -C tests/lwip all term
[…]
> ifconfig
ifconfig
ET_00:  inet6 fe80::e0bc:7dff:fecb:f550

> udp server start 1337
udp server start 1337
Success: started UDP server on port 1337
> Received UDP data from [fe80::d827:1dff:fea8:6424]:1337:
00000000  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000010  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000020  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000030  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000040  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000050  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000060  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000070  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000080  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000090  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000000A0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000000B0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000000C0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000000D0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000000E0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000000F0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000100  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000110  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000120  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000130  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000140  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000150  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000160  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000170  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000180  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000190  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000001A0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000001B0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000001C0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000001D0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000001E0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000001F0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000200  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000210  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000220  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000230  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000240  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000250  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000260  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000270  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000280  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000290  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000002A0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000002B0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000002C0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000002D0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000002E0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000002F0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000300  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000310  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000320  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000330  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000340  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000350  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000360  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000370  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000380  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000390  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000003A0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000003B0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000003C0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000003D0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000003E0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000003F0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000400  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000410  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000420  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000430  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000440  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000450  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000460  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000470  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000480  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000490  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000004A0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000004B0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000004C0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000004D0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000004E0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000004F0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000500  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000510  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000520  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000530  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000540  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000550  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000560  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000570  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000580  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
00000590  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000005A0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000005B0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000005C0  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01  01
000005D0  01  01  01  01  01  01  01  01  01  01  01  01
```

(1500 in hex is 0x5dc so we received the correct number of bytes)

</details>

<details><summary><strong>Terminal 3 (<code>tests/gnrc_udp</code> as UDP client)</strong></summary>

```
$ make -C tests/gnrc_udp all term
> udp send fe80::e0bc:7dff:fecb:f550 1337 1500                              
udp send fe80::e0bc:7dff:fecb:f550 1337 1500
Success: send 1500 byte to [fe80::e0bc:7dff:fecb:f550]:1337
```
</details>

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/RIOT-OS/RIOT/pull/13701#issuecomment-630860982
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.riot-os.org/pipermail/notifications/attachments/20200519/521aaac7/attachment-0001.htm>


More information about the notifications mailing list