goldsimon
ca9342c549
fixed bug #49725 (send-timeout: netwonn_write() can return ERR_OK without all bytes being written)
2016-11-28 12:51:45 +01:00
Dirk Ziegelmeier
9366c0eaab
I decided to keep the "complexity" of handling IPv6 mapped IPv4 addresses out of netconn API.
...
Only socket API understands this address type now.
2016-11-17 12:41:00 +01:00
Dirk Ziegelmeier
4b7e0f50b7
Fix indent in api_lib.c
2016-11-17 09:14:29 +01:00
Dirk Ziegelmeier
44e430ebc2
Fix compile with MSVC 2010 and remove handling for IP6_ADDR_ANY in netconn_connect() - IP6_ADDR_ANY does not make sense in connect()
2016-11-17 09:12:38 +01:00
Dirk Ziegelmeier
180ba72a06
Dual-stack: Use IPv6 mapped IPv4 addresses in receive() and getaddr() only in socket API, not in netconn API.
...
It is better to present correct IP types in netconn API.
Netconn API now accepts IPv6 mapped IPv4 addresses as well as IPv6 and IPv4 in send(), bind() and connect(), but does NOT map IPv4 to IPv6 mapped IPv4 in getaddr() and receive() functions.
2016-11-17 08:51:07 +01:00
Dirk Ziegelmeier
1712b06a64
Work on dual-stack netconn
...
IPv6 netconns are created as IPADDR_TYPE_ANY raw/udp/tcp PCBs internally
bind, connect and sendto now accept IPv6 mapped IPv4 addresses or IPv4 addresses as argument
getaddr and receive functions now return IPv6 mapped IPv4 addresses instead of IPv4 addresses
This behavior is close to BSD socket API
2016-11-16 22:58:38 +01:00
sg
0a343948d9
Fix netconn/socket race condition when receiving RST while waiting on recvmbox
2016-10-10 21:35:07 +02:00
Dirk Ziegelmeier
f6e27940bd
Make lwIP compile with clang -Wdocumentation -> several documentation fixes
2016-10-09 12:21:39 +02:00
Dirk Ziegelmeier
682b82aad8
Improve documentation: Some words about multiple execution contexts in lwIP
2016-09-29 12:51:45 +02:00
Dirk Ziegelmeier
633696c153
Implement consistent IPx_ADDR_ANYx macro naming between IPv4 and IPv6
...
- rename IP4_ADDR_ANY to IP4_ADDR_ANY4
- IP4_ADDR_ANY (= IP_ADDR_ANY) is now IPv4 any address in ip_addr_t format
2016-09-28 12:56:57 +02:00
Dirk Ziegelmeier
8d07629b71
Some documentation cleanups and include more comments that have been already in code into doxygen docs
2016-08-07 10:05:34 +02:00
Dirk Ziegelmeier
6b524367a3
Documentation review with Simon, minor changes
2016-07-27 08:05:38 +02:00
Dirk Ziegelmeier
8a9de94b1f
Restructure documentation. Create two top-level sections for thread-safe and callback-style APIs.
2016-07-26 18:39:53 +02:00
Dirk Ziegelmeier
0fea2bc02e
Document netconn API in doxygen module style
2016-07-26 17:40:55 +02:00
sg
f98c3dd4b5
LWIP_MPU_COMPATIBLE: help dumb compilers to see 'msg' is used (MSVC :(
2016-07-21 21:54:13 +02:00
Dirk Ziegelmeier
8dc77ef558
doxygen updates - include IPv6 in documentation. Exclude include/netif/ppp/polarssl.
...
Convert TODO -> @todo
2016-06-22 20:18:23 +02:00
goldsimon
344de0e119
fixed comments on netconn_shutdown to prevent using full-duplex wording...
2016-05-24 10:01:03 +02:00
Dirk Ziegelmeier
6c8c3fd48c
Fix more doxygen errors
2016-05-23 21:38:18 +02:00
Dirk Ziegelmeier
30e6f908ee
Fix bug #47512 : MPU_COMPATIBLE may fail on empty pool
2016-04-27 21:14:17 +02:00
Dirk Ziegelmeier
e653ac9db7
Remove netconn_recved() call - it was only needed in sockets implementation and contributed to bug #47512
...
Simon and I think it can be removed - the receive window handling get a little less precise, but that should be OK for a lightweight stack.
Receive window is now updated with the whole pbuf size (instead of only count of read bytes from socket) as soon as socket implementation gets a pbuf from netconn layer.
Work on bug #47512 : MPU_COMPATIBLE may fail on empty pool (still not finished)
2016-04-27 21:02:16 +02:00
Dirk Ziegelmeier
21354af674
Work on bug #47512 : MPU_COMPATIBLE may fail on empty pool (still not finished)
2016-04-27 12:49:06 +02:00
Dirk Ziegelmeier
b07031479c
Revert "tcpip_send_msg_wait_sem() can return void now due to my last changes"
...
My brain was asleep
This reverts commit 475be665ff8805088a688dbb66713f1a9e383b4d.
2016-04-26 22:03:18 +02:00
Dirk Ziegelmeier
475be665ff
tcpip_send_msg_wait_sem() can return void now due to my last changes
2016-04-26 21:40:19 +02:00
Dirk Ziegelmeier
3d38af5174
Work on bug #47512 : MPU_COMPATIBLE may fail on empty pool (not finished!)
2016-04-26 21:33:02 +02:00
Dirk Ziegelmeier
5a123a3405
tcpip_priv.h: More flexible API by including return value in API_VAR_ALLOC macro
2016-04-25 21:00:28 +02:00
Dirk Ziegelmeier
2be86fbc3e
Fix compile of api_lib.c when LWIP_MPU_COMPATIBLE is enabled
2016-04-25 20:50:14 +02:00
sg
16c70dd60e
fixed bug# 43739 (Accept not reporting errors about aborted connections): netconn_accept() returns ERR_ABRT (sockets: ECONNABORTED) for aborted connections, ERR_CLSD (sockets: EINVAL) if the listening netconn is closed, which better seems to follow the standard
2016-04-05 21:42:10 +02:00
sg
dd80759bb9
tcp: changed accept handling to be done internally: the application does not have to call tcp_accepted() any more. Instead, when delaying accept (e.g. sockets do), call tcp_backlog_delayed()/tcp_backlog_accepted() (fixes bug #46696 )
2016-03-22 07:30:44 +01:00
sg
b24e5cd1c8
fixed compiling netconn_write_partly with LWIP_SO_SNDTIMEO==1 after recent api implementation changes (bug #47436 , patch by William Hayes)
2016-03-17 20:15:22 +01:00
Dirk Ziegelmeier
ee87d28252
Rename tcpip_apimsg to netconn_apimsg (better suits naming convention in api_lib.c)
2016-03-16 22:02:47 +01:00
Dirk Ziegelmeier
d6adc1f6cb
Rename tcpip_send_api_msg to tcpip_send_msg_wait_sem (hopefully a little bit clearer name)
2016-03-16 21:57:24 +01:00
Dirk Ziegelmeier
d38cdccbcd
netconn API: Remove api_msg wrapper struct, it is not needed any more
2016-03-16 21:35:21 +01:00
Dirk Ziegelmeier
2575c7fb5f
netconn API: Cleanup, remove lots of #defines, take advantage of new tcpip_send_api_msg function feature to abstract core locking away
2016-03-16 21:35:21 +01:00
sg
5e472badf1
Work on bug #44595 : remove check for recvmbox != NULL from netconn_recv() to let it return ERR_CLSD for half-closed TCP connections
2016-03-10 21:20:25 +01:00
Dirk Ziegelmeier
fc17d02451
Fix compile with LWIP_TCPIP_CORE_LOCKING
2016-03-08 19:41:32 +01:00
Dirk Ziegelmeier
c65eca58c9
Decouple tcpip.c/tcpip_priv.h from netconn API
2016-03-08 19:41:32 +01:00
Dirk Ziegelmeier
0a7f404d09
api_lib.c: Don't propagate NULL pointers as ip address to subsequent functions
2016-03-03 22:49:55 +01:00
Axel Lin
a3bccae173
Catch tcpip_callback call failure
...
tcpip_callback_with_block() can fail with ERR_MEM or ERR_VAL, and in the
error paths the code does not post the msg to the mailbox thus the
sys_sem_wait() call might wait forever. Fix it by testing return value of
tcpip_callback() and return error immediately.
Signed-off-by: Axel Lin <axel.lin@ingics.com>
2015-12-05 21:41:27 +01:00
goldsimon
98b9d31f24
Fixed compiling with LWIP_TCP==0
2015-11-16 09:37:56 +01:00
sg
c12fa7b4c4
started to move "private" header files containing implementation details to "lwip/priv/" include directory to seperate the API from the implementation.
2015-10-09 21:58:58 +02:00
sg
fc1db87318
Fixed compiling api with LWIP_NETCONN_SEM_PER_THREAD==1 && LWIP_MPU_COMPATIBLE==1
2015-10-09 21:00:21 +02:00
sg
2b971400fa
minor: coding style
2015-10-06 21:57:40 +02:00
sg
22df34fc70
minor/coding style: removed spaces before line ending (from file header)
2015-10-06 21:13:15 +02:00
sg
490581a0eb
minor/coding style: removed spaces before line ending
2015-10-06 21:08:28 +02:00
goldsimon
dc04118469
fixed missing comment after #endif
2015-09-15 08:19:26 +02:00
goldsimon
196120fabd
worked on task #12243 (Add support for AAAA/IPv6 records to DNS)
2015-09-04 13:57:20 +02:00
goldsimon
a6bd0944db
LWIP_NETCONN_SEM_PER_THREAD: ensure sys_sem_valid() is only called for non-NULL pointers (not all ports might check this)
2015-08-19 09:57:59 +02:00
sg
c2f7e166a0
fixed bug #45723 netconn_delete unconditionally uses macro TCP_SLOW_INTERVAL
2015-08-18 20:32:09 +02:00
sg
e171b4e3f0
Fixed usages of SYS_SEM_NULL after using pointers everywhere
2015-08-18 20:29:16 +02:00
goldsimon
bc4473b275
Fixed that netconn_thread_cleanup() did not call LWIP_NETCONN_THREAD_SEM_FREE() (!= vs ==)
2015-08-18 11:13:38 +02:00