提交 722ee45b 编写于 作者: C c00546070

add OpenHarmony 1.0 baseline

上级 b2032efd
...@@ -529,6 +529,7 @@ alloc_socket(struct netconn *newconn, int accepted) ...@@ -529,6 +529,7 @@ alloc_socket(struct netconn *newconn, int accepted)
* (unless it has been created by accept()). */ * (unless it has been created by accept()). */
sockets[i].sendevent = (NETCONNTYPE_GROUP(newconn->type) == NETCONN_TCP ? (accepted != 0) : 1); sockets[i].sendevent = (NETCONNTYPE_GROUP(newconn->type) == NETCONN_TCP ? (accepted != 0) : 1);
sockets[i].errevent = 0; sockets[i].errevent = 0;
init_waitqueue_head(&sockets[i].wq);
#endif /* LWIP_SOCKET_SELECT || LWIP_SOCKET_POLL */ #endif /* LWIP_SOCKET_SELECT || LWIP_SOCKET_POLL */
return i + LWIP_SOCKET_OFFSET; return i + LWIP_SOCKET_OFFSET;
} }
...@@ -1041,6 +1042,7 @@ lwip_sock_make_addr(struct netconn *conn, ip_addr_t *fromaddr, u16_t port, ...@@ -1041,6 +1042,7 @@ lwip_sock_make_addr(struct netconn *conn, ip_addr_t *fromaddr, u16_t port,
#endif /* LWIP_IPV4 && LWIP_IPV6 */ #endif /* LWIP_IPV4 && LWIP_IPV6 */
IPADDR_PORT_TO_SOCKADDR(&saddr, fromaddr, port); IPADDR_PORT_TO_SOCKADDR(&saddr, fromaddr, port);
DF_NADDR(*fromaddr);
if (*fromlen < saddr.sa.sa_len) { if (*fromlen < saddr.sa.sa_len) {
truncated = 1; truncated = 1;
} else if (*fromlen > saddr.sa.sa_len) { } else if (*fromlen > saddr.sa.sa_len) {
...@@ -1069,11 +1071,11 @@ lwip_recv_tcp_from(struct lwip_sock *sock, struct sockaddr *from, socklen_t *fro ...@@ -1069,11 +1071,11 @@ lwip_recv_tcp_from(struct lwip_sock *sock, struct sockaddr *from, socklen_t *fro
/* get remote addr/port from tcp_pcb */ /* get remote addr/port from tcp_pcb */
u16_t port; u16_t port;
ip_addr_t tmpaddr; ip_addr_t tmpaddr;
netconn_getaddr(sock->conn, &tmpaddr, &port, 0); err_t err = netconn_getaddr(sock->conn, &tmpaddr, &port, 0);
LWIP_DEBUGF(SOCKETS_DEBUG, ("%s(%d): addr=", dbg_fn, dbg_s)); LWIP_DEBUGF(SOCKETS_DEBUG, ("%s(%d): addr=", dbg_fn, dbg_s));
ip_addr_debug_print_val(SOCKETS_DEBUG, tmpaddr); ip_addr_debug_print_val(SOCKETS_DEBUG, tmpaddr);
LWIP_DEBUGF(SOCKETS_DEBUG, (" port=%"U16_F" len=%d\n", port, (int)dbg_ret)); LWIP_DEBUGF(SOCKETS_DEBUG, (" port=%"U16_F" len=%d\n", port, (int)dbg_ret));
if (from && fromlen) { if (!err && from && fromlen) {
return lwip_sock_make_addr(sock->conn, &tmpaddr, port, from, fromlen); return lwip_sock_make_addr(sock->conn, &tmpaddr, port, from, fromlen);
} }
} }
...@@ -2557,6 +2559,7 @@ event_callback(struct netconn *conn, enum netconn_evt evt, u16_t len) ...@@ -2557,6 +2559,7 @@ event_callback(struct netconn *conn, enum netconn_evt evt, u16_t len)
} else { } else {
SYS_ARCH_UNPROTECT(lev); SYS_ARCH_UNPROTECT(lev);
} }
poll_check_waiters(s, check_waiters);
done_socket(sock); done_socket(sock);
} }
...@@ -3819,6 +3822,7 @@ lwip_ioctl(int s, long cmd, void *argp) ...@@ -3819,6 +3822,7 @@ lwip_ioctl(int s, long cmd, void *argp)
return 0; return 0;
default: default:
IOCTL_CMD_CASE_HANDLER();
break; break;
} /* switch (cmd) */ } /* switch (cmd) */
LWIP_DEBUGF(SOCKETS_DEBUG, ("lwip_ioctl(%d, UNIMPL: 0x%lx, %p)\n", s, cmd, argp)); LWIP_DEBUGF(SOCKETS_DEBUG, ("lwip_ioctl(%d, UNIMPL: 0x%lx, %p)\n", s, cmd, argp));
......
此差异已折叠。
...@@ -48,9 +48,9 @@ ...@@ -48,9 +48,9 @@
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
#ifndef LWIP_SOCKET_STDINCLUDE
#define IF_NAMESIZE NETIF_NAMESIZE #define IF_NAMESIZE NETIF_NAMESIZE
#endif /* LWIP_SOCKET_STDINCLUDE */
char * lwip_if_indextoname(unsigned int ifindex, char *ifname); char * lwip_if_indextoname(unsigned int ifindex, char *ifname);
unsigned int lwip_if_nametoindex(const char *ifname); unsigned int lwip_if_nametoindex(const char *ifname);
......
...@@ -48,7 +48,7 @@ ...@@ -48,7 +48,7 @@
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
#ifndef LWIP_SOCKET_STDINCLUDE
/* If your port already typedef's in_addr_t, define IN_ADDR_T_DEFINED /* If your port already typedef's in_addr_t, define IN_ADDR_T_DEFINED
to prevent this code from redefining it. */ to prevent this code from redefining it. */
#if !defined(in_addr_t) && !defined(IN_ADDR_T_DEFINED) #if !defined(in_addr_t) && !defined(IN_ADDR_T_DEFINED)
...@@ -160,7 +160,7 @@ extern const struct in6_addr in6addr_any; ...@@ -160,7 +160,7 @@ extern const struct in6_addr in6addr_any;
#define inet6_ntoa_r(addr, buf, buflen) ip6addr_ntoa_r((const ip6_addr_t*)&(addr), buf, buflen) #define inet6_ntoa_r(addr, buf, buflen) ip6addr_ntoa_r((const ip6_addr_t*)&(addr), buf, buflen)
#endif /* LWIP_IPV6 */ #endif /* LWIP_IPV6 */
#endif /* LWIP_SOCKET_STDINCLUDE */
#ifdef __cplusplus #ifdef __cplusplus
} }
......
...@@ -81,10 +81,12 @@ struct ip_hdr { ...@@ -81,10 +81,12 @@ struct ip_hdr {
PACK_STRUCT_FIELD(u16_t _id); PACK_STRUCT_FIELD(u16_t _id);
/* fragment offset field */ /* fragment offset field */
PACK_STRUCT_FIELD(u16_t _offset); PACK_STRUCT_FIELD(u16_t _offset);
#ifndef LWIP_SOCKET_STDINCLUDE
#define IP_RF 0x8000U /* reserved fragment flag */ #define IP_RF 0x8000U /* reserved fragment flag */
#define IP_DF 0x4000U /* don't fragment flag */ #define IP_DF 0x4000U /* don't fragment flag */
#define IP_MF 0x2000U /* more fragments flag */ #define IP_MF 0x2000U /* more fragments flag */
#define IP_OFFMASK 0x1fffU /* mask for fragmenting bits */ #define IP_OFFMASK 0x1fffU /* mask for fragmenting bits */
#endif /* LWIP_SOCKET_STDINCLUDE */
/* time to live */ /* time to live */
PACK_STRUCT_FLD_8(u8_t _ttl); PACK_STRUCT_FLD_8(u8_t _ttl);
/* protocol*/ /* protocol*/
......
...@@ -54,7 +54,7 @@ ...@@ -54,7 +54,7 @@
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
#ifndef LWIP_SOCKET_STDINCLUDE
/* If your port already typedef's sa_family_t, define SA_FAMILY_T_DEFINED /* If your port already typedef's sa_family_t, define SA_FAMILY_T_DEFINED
to prevent this code from redefining it. */ to prevent this code from redefining it. */
#if !defined(sa_family_t) && !defined(SA_FAMILY_T_DEFINED) #if !defined(sa_family_t) && !defined(SA_FAMILY_T_DEFINED)
...@@ -524,7 +524,7 @@ struct timeval { ...@@ -524,7 +524,7 @@ struct timeval {
long tv_usec; /* and microseconds */ long tv_usec; /* and microseconds */
}; };
#endif /* LWIP_TIMEVAL_PRIVATE */ #endif /* LWIP_TIMEVAL_PRIVATE */
#endif /* LWIP_SOCKET_STDINCLUDE */
#define lwip_socket_init() /* Compatibility define, no init needed. */ #define lwip_socket_init() /* Compatibility define, no init needed. */
void lwip_socket_thread_init(void); /* LWIP_NETCONN_SEM_PER_THREAD==1: initialize thread-local semaphore */ void lwip_socket_thread_init(void); /* LWIP_NETCONN_SEM_PER_THREAD==1: initialize thread-local semaphore */
void lwip_socket_thread_cleanup(void); /* LWIP_NETCONN_SEM_PER_THREAD==1: destroy thread-local semaphore */ void lwip_socket_thread_cleanup(void); /* LWIP_NETCONN_SEM_PER_THREAD==1: destroy thread-local semaphore */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册