From 48aae4ef2f9aa1abb99560e904d79a4fcac63fce Mon Sep 17 00:00:00 2001 From: Martine Lenders <m.lenders@fu-berlin.de> Date: Wed, 10 May 2017 20:50:28 +0200 Subject: [PATCH] lwip: port to v2.0.2 --- pkg/lwip/Makefile | 2 +- pkg/lwip/contrib/sock/lwip_sock.c | 5 +++++ pkg/lwip/contrib/sock/tcp/lwip_sock_tcp.c | 3 --- pkg/lwip/contrib/sys_arch.c | 5 +++++ pkg/lwip/include/arch/cc.h | 17 ----------------- pkg/lwip/include/lwipopts.h | 2 ++ pkg/lwip/patches/0001-Fix-warnings.patch | Bin 938 -> 1571 bytes .../patches/0002-Add-RIOT-Makefiles.patch | Bin 3176 -> 3176 bytes 8 files changed, 13 insertions(+), 21 deletions(-) diff --git a/pkg/lwip/Makefile b/pkg/lwip/Makefile index 9aef775e40..d564d1fce1 100644 --- a/pkg/lwip/Makefile +++ b/pkg/lwip/Makefile @@ -1,6 +1,6 @@ PKG_NAME=lwip PKG_URL=git://git.savannah.nongnu.org/lwip.git -PKG_VERSION=fd4a109ffa6513b28a0c780a952cef1110423717 +PKG_VERSION=STABLE-2_0_2_RELEASE_VER PKG_LICENSE=BSD-3-Clause .PHONY: all diff --git a/pkg/lwip/contrib/sock/lwip_sock.c b/pkg/lwip/contrib/sock/lwip_sock.c index a46790b04c..dba775c17d 100644 --- a/pkg/lwip/contrib/sock/lwip_sock.c +++ b/pkg/lwip/contrib/sock/lwip_sock.c @@ -249,6 +249,11 @@ static int _create(int type, int proto, uint16_t flags, struct netconn **out) if ((*out = netconn_new_with_proto_and_callback(type, proto, NULL)) == NULL) { return -ENOMEM; } +#if LWIP_IPV4 && LWIP_IPV6 + if (type & NETCONN_TYPE_IPV6) { + netconn_set_ipv6only(*out, 1); + } +#endif #if SO_REUSE if (flags & SOCK_FLAGS_REUSE_EP) { ip_set_option((*out)->pcb.ip, SOF_REUSEADDR); diff --git a/pkg/lwip/contrib/sock/tcp/lwip_sock_tcp.c b/pkg/lwip/contrib/sock/tcp/lwip_sock_tcp.c index df879ac3a9..77ee9b894a 100644 --- a/pkg/lwip/contrib/sock/tcp/lwip_sock_tcp.c +++ b/pkg/lwip/contrib/sock/tcp/lwip_sock_tcp.c @@ -27,7 +27,6 @@ static inline void _tcp_sock_init(sock_tcp_t *sock, struct netconn *conn, { mutex_init(&sock->mutex); mutex_lock(&sock->mutex); - netconn_set_noautorecved(conn, 1); sock->conn = conn; sock->queue = queue; sock->last_buf = NULL; @@ -340,8 +339,6 @@ ssize_t sock_tcp_read(sock_tcp_t *sock, void *data, size_t max_len, } } if (offset > 0) { - /* inform lwIP how much we receive*/ - netconn_recved(sock->conn, (u32_t)offset); res = offset; /* we received data so return it */ } /* unset flags */ diff --git a/pkg/lwip/contrib/sys_arch.c b/pkg/lwip/contrib/sys_arch.c index 6eec97f3e1..2794122b0d 100644 --- a/pkg/lwip/contrib/sys_arch.c +++ b/pkg/lwip/contrib/sys_arch.c @@ -36,6 +36,11 @@ void sys_init(void) return; } +u32_t sys_now(void) +{ + return (uint32_t)(xtimer_now_usec64() / US_PER_MS); +} + err_t sys_mutex_new(sys_mutex_t *mutex) { mutex_init((mutex_t *)mutex); diff --git a/pkg/lwip/include/arch/cc.h b/pkg/lwip/include/arch/cc.h index 663efe794a..d4a943684b 100644 --- a/pkg/lwip/include/arch/cc.h +++ b/pkg/lwip/include/arch/cc.h @@ -43,23 +43,6 @@ extern "C" { #endif #endif -/** - * @brief Generic types for lwIP - * @{ - */ -typedef uint8_t u8_t; /**< unsigned 8-bit type */ -typedef int8_t s8_t; /**< signed 8-bit type */ -typedef uint16_t u16_t; /**< unsigned 16-bit type */ -typedef int16_t s16_t; /**< signed 16-bit type */ -typedef uint32_t u32_t; /**< unsigned 32-bit type */ -typedef int32_t s32_t; /**< signed 32-bit type */ - -typedef unsigned long mem_ptr_t; /**< A generic pointer type. It has to be an integer type - * (not void*, due to some pointer arithmetics). */ -/** - * @} - */ - /** * @brief (sn)printf formatters for the generic lwIP types * @{ diff --git a/pkg/lwip/include/lwipopts.h b/pkg/lwip/include/lwipopts.h index 6dedf10f5a..c6632eec01 100644 --- a/pkg/lwip/include/lwipopts.h +++ b/pkg/lwip/include/lwipopts.h @@ -136,6 +136,8 @@ extern "C" { #endif #define LWIP_SOCKET (0) + +#define LWIP_DONT_PROVIDE_BYTEORDER_FUNCTIONS #define MEMP_MEM_MALLOC (1) #define NETIF_MAX_HWADDR_LEN (GNRC_NETIF_HDR_L2ADDR_MAX_LEN) diff --git a/pkg/lwip/patches/0001-Fix-warnings.patch b/pkg/lwip/patches/0001-Fix-warnings.patch index be2dc43362fd059adcd7bc5c15f36cd4623f1da5..c90f306ba72ebeebda08e245e705f1de5a13594c 100644 GIT binary patch literal 1571 zcma)6`%j}l5dNLNVxozm<xyUxwVuXmt!JX9(R$|M8M468?u9M{sE?d~{LMn^`KZZ} z(qU(2zn%T|n;jR~0+OEVBoT9>c-QWBUB>*x_Au^u?WFH@drs{3JVsu)$OK$t4t5VL zYf%5du`F8|6U+cESW$6-aE>CzqJ(b?#?!+^<2BO8YvS@i8L<inFr6=TupPL}9tg(n zg6$7npKw95Y|B!vm*H=WssY?hhSTHkV0WB*81pB1WQE{jRw{~N7z&g{)QPeJJ3N2z zJ0kYY2wuPe?QKk8#S;q9vyM5C@Dxjk=1j~m)@ceCCDJA`QL0)?I$}&|q8uA7MTvQm zfMLvd1+24a*>ICr;l#%iSfT6p?7nG+zRPw)+OB2!o+tOP8BNhN4K^bl9)jV!UA+fd zW5_`p54gyem0DKCGO8dCmkG3U9aiI-0%%iCOOZUR9-e^8;b0%E7W{b|01(J$^Drxd zh(&X}<M(ERu}?(hd+&2EPA-loKh@7u(v-z<p+jSXEU%1%#zP>+!TeDU0+L5-Pcha- zNy~FTsADBo>dppaflpO1&+<A8%aTrPr&{EMqiw{Avi$i!V036e;Qa<WZMeb+`2$H0 z7%XT(HbaOrl90%V?jn0YD3GXPAy0YrJb+B3&%_m3O5_EpnY3iS$AvbGFlEmYAVirR zu@d1CVTKh%nMioCU~(d4$vb>VWcx1j919=-`d6pNla>kX&KFW$cflJ~tz0XSdQLyI zJrZfsi|jt`ej(EJqz?*RyQMsB%X6eYS5^vCwqWq~RD+x@hjOjgIu7mHkZAh>b(xd~ zkDqi{x(<!G_4;M&4UOlwXOm!ba&&V#RxeMcXX9o-UEV~FPJ`>|aC)MHy7jq&K~q(| z5FIFlC{K5FBm5FuEfUj82eMB-0#tO7HBSAt))wr**~AZqqtR9HV|acxl6_@t)BL(3 zIwE*kRd+L*DB4$%*Q~4I?OHOt5j#;K@R7Kb1idyQ5g`}#)t!Gqz2=PDWF2~4xu0#i Wim4hB^rnKOdgw}09J6P7it-nQlGkql literal 938 zcma)4+iuf95PjdTIJ7S@zOEhYBp{Rs8c``}qb3p$6jk=_I9`<4l`o{I^xs*>g_fd3 ztSn2rGjlF8GcAiPJn{#`h4e$gCHX?6{Xs(U(BnZEg_LsHm*FspFfVc}=@vYK=Z*Fs ze9z--s$oW$$7QW@!i;iBWrcU!SZ&7J?$zFOuMRcu*~hr15ms4af%~{9zH1o%20R=E zp~i*janEDRCizC99^uPkvik4|-1Wa=s_w9h%UtE_iZR=^8LCpaDi@nZlDpZdTUS!j ztep%$5yI4`P2xz^h9I&yUz4=ZhsrC`f{VQBnT7=)k~Y-cZG$nX(iFD6RyAVxAVqR8 z#FXyB9fna5he6;tB1!@=6wuDXe!o?I1ea;mID$PM!ww^B08{_Dhw+#JueDsP3P@GO ziS`;-zYS_@>3%Yw&lfirmy_l4>}sVOfVdQyD}<9dZN1BIs!}aG#q4<|vrnG`bmhG* zRaLwu>xsvJEN~B%_Fnb=kQ)ZBnT-x{F`KNWmsj(fzcGxrc)%{x1L}DOGyj+Enwik& zAHI9dxR12ay_3VdkC_iItiLGGQ7X%##L0PzA4Q{AFt1S;Xezz$ZLc~*)^R%IM6zn@ d5_+78Y{#Gx%cohKv~0QFKfNSi+!;EYv0wS$8z}$) diff --git a/pkg/lwip/patches/0002-Add-RIOT-Makefiles.patch b/pkg/lwip/patches/0002-Add-RIOT-Makefiles.patch index 4b9ec25d1941e21fd4763a8b8ae05497e4399650..d6e0000b72d9f96bc7d152fb5b40c34b9a10931d 100644 GIT binary patch delta 62 zcmaDM@j^n^ttdZN!4L>i5)+e>Oij!TEsadf%}gv4O;ZfaOp{X$j15y$Qj8NV%`DP3 Q>YDJd8|j(rnQ(Cd07{t<$^ZZW delta 62 zcmaDM@j^n^ttdZN!6eNv%`(~4I3>wEEiE-QIn~0@2*|TcGPX=Hw=l9aOEpb0vq-eq QsB6N*Zm4IeXUN3`0C0p6hX4Qo -- GitLab