summaryrefslogtreecommitdiff
path: root/components/net/lwip-2.0.2/src
diff options
context:
space:
mode:
Diffstat (limited to 'components/net/lwip-2.0.2/src')
-rw-r--r--components/net/lwip-2.0.2/src/api/sockets.c3
-rw-r--r--components/net/lwip-2.0.2/src/arch/include/arch/cc.h24
-rw-r--r--components/net/lwip-2.0.2/src/lwipopts.h2
3 files changed, 17 insertions, 12 deletions
diff --git a/components/net/lwip-2.0.2/src/api/sockets.c b/components/net/lwip-2.0.2/src/api/sockets.c
index dc2477b611..87e0f86dff 100644
--- a/components/net/lwip-2.0.2/src/api/sockets.c
+++ b/components/net/lwip-2.0.2/src/api/sockets.c
@@ -531,7 +531,8 @@ lwip_accept(int s, struct sockaddr *addr, socklen_t *addrlen)
return -1;
}
LWIP_ASSERT("invalid socket index", (newsock >= LWIP_SOCKET_OFFSET) && (newsock < NUM_SOCKETS + LWIP_SOCKET_OFFSET));
- // LWIP_ASSERT("newconn->callback == event_callback", newconn->callback == event_callback);
+ /* RT-Thread has changed callback when using BSD socket API, so remove this assert. */
+ /* LWIP_ASSERT("newconn->callback == event_callback", newconn->callback == event_callback); */
nsock = &sockets[newsock - LWIP_SOCKET_OFFSET];
/* See event_callback: If data comes in right away after an accept, even
diff --git a/components/net/lwip-2.0.2/src/arch/include/arch/cc.h b/components/net/lwip-2.0.2/src/arch/include/arch/cc.h
index e3014f552c..28f86d257e 100644
--- a/components/net/lwip-2.0.2/src/arch/include/arch/cc.h
+++ b/components/net/lwip-2.0.2/src/arch/include/arch/cc.h
@@ -37,6 +37,7 @@
#include <rthw.h>
#include <rtthread.h>
+#include <string.h>
#define U16_F "hu"
#define S16_F "hd"
@@ -45,12 +46,18 @@
#define S32_F "ld"
#define X32_F "lx"
-#if defined(RT_USING_LIBC) || defined(RT_LIBC_USING_TIME) || (defined( __GNUC__ ) && !defined(__ARMCC_VERSION))
+#include <sys/errno.h>
+/* some errno not defined in newlib */
+#ifndef ENSRNOTFOUND
+#define ENSRNOTFOUND 163 /* Domain name not found */
+/* WARNING: ESHUTDOWN also not defined in newlib. We chose
+ 180 here because the number "108" which is used
+ in arch.h has been assigned to another error code. */
+#endif
+
+/* LWIP_TIMEVAL_PRIVATE: provided by <sys/time.h> */
#include <sys/time.h>
#define LWIP_TIMEVAL_PRIVATE 0
-#else
-#define LWIP_TIMEVAL_PRIVATE 1
-#endif
#if defined(__CC_ARM) /* ARMCC compiler */
#define PACK_STRUCT_FIELD(x) x
@@ -84,11 +91,8 @@ void sys_arch_assert(const char* file, int line);
#define LWIP_PLATFORM_DIAG(x) do {rt_kprintf x;} while(0)
#define LWIP_PLATFORM_ASSERT(x) do {rt_kprintf(x); sys_arch_assert(__FILE__, __LINE__);}while(0)
-#include "string.h"
-
-#define SYS_ARCH_DECL_PROTECT(level)
-#define SYS_ARCH_PROTECT(level) rt_enter_critical()
-#define SYS_ARCH_UNPROTECT(level) rt_exit_critical()
+#define SYS_ARCH_DECL_PROTECT(level) register rt_base_t level
+#define SYS_ARCH_PROTECT(level) do {level = rt_hw_interrupt_disable();} while(0)
+#define SYS_ARCH_UNPROTECT(level) do {rt_hw_interrupt_enable(level);} while(0)
#endif /* __ARCH_CC_H__ */
-
diff --git a/components/net/lwip-2.0.2/src/lwipopts.h b/components/net/lwip-2.0.2/src/lwipopts.h
index 09bd223aa4..d559684c02 100644
--- a/components/net/lwip-2.0.2/src/lwipopts.h
+++ b/components/net/lwip-2.0.2/src/lwipopts.h
@@ -3,7 +3,7 @@
#include <rtconfig.h>
-#define ERRNO 1
+#define LWIP_ERRNO_STDINCLUDE
#define LWIP_IPV4 1