Simon Goldschmidt
|
c60635855d
|
fixed bug #38404 getpeeraddr returns success on unconnected/listening TCP sockets
|
2014-02-27 21:28:15 +01:00 |
|
Simon Goldschmidt
|
e2c2afbbe0
|
patch #7885: modification of api modules to support FreeRTOS-MPU (don't pass stack-pointers to other threads) (based on patch by Artem Pisarenko)
|
2014-02-20 19:50:17 +01:00 |
|
Simon Goldschmidt
|
097bc4c622
|
patch #8008 Fix a potential null pointer dereference in assert
|
2013-04-24 22:28:22 +02:00 |
|
goldsimon
|
a4a41b9023
|
fixed bug #37405 'err_tcp()' uses already freed 'netconn' object
|
2012-09-26 21:50:42 +02:00 |
|
goldsimon
|
a070751061
|
fixed bug #37052: "netconn_alloc: undefined netconn_type" assertion skipped
|
2012-08-13 21:17:17 +02:00 |
|
James Smith
|
e65202f825
|
Applied patch by James Smith to implement IPV6_V6ONLY support in
sockets and netconns.
Change-Id: I2ecd8e218703114890b2d678cc1ccf997a16f5e3
|
2012-07-03 13:16:04 -06:00 |
|
goldsimon
|
8dbf572ea5
|
Fixed bug #35817: do_connect() invalidly signals op_completed for UDP/RAW with LWIP_TCPIP_CORE_LOCKING==1
|
2012-03-25 14:56:41 +02:00 |
|
goldsimon
|
f8af1a7443
|
fixed bug #35931: Name space pollution in api_msg.c and netifapi.c
|
2012-03-25 14:41:27 +02:00 |
|
Simon Goldschmidt
|
e039d4103f
|
fixed bug #34569: shutdown(SHUT_WR) crashes netconn/socket api
|
2011-10-17 19:38:47 +02:00 |
|
Simon Goldschmidt
|
a2aa43a426
|
Implemented timeout on send (TCP only, bug #33820)
|
2011-09-21 19:36:09 +02:00 |
|
Simon Goldschmidt
|
d0877153bf
|
netconn_alloc(): return on invalid protocol instead of initializing mbox size to 0
|
2011-09-03 21:24:06 +02:00 |
|
Simon Goldschmidt
|
f64808c385
|
fixed bug #33956 Wrong error returned when calling accept() on UDP connections
|
2011-08-24 21:12:12 +02:00 |
|
Ivan Delamer
|
b5305d5a8c
|
Initialize recvmbox size for undefined netconn type, to supress
compiler warning.
Change-Id: I14c3f1786a8ca3513b5d4cf375c4951e4c09ebd6
|
2011-08-12 09:04:29 -06:00 |
|
Simon Goldschmidt
|
46af0d38fa
|
fixed bug #31084 (socket API returns always EMSGSIZE on non-blocking sockets if data size > send buffers) -> now lwip_send() sends as much as possible for non-blocking sockets and only returns EWOULDBLOCK if the buffers are full
|
2011-07-22 22:05:24 +02:00 |
|
goldsimon
|
2aec3a9789
|
use PCB_IS_IPV6(pcb) instead of pcb->isipv6 everywhere
|
2011-05-28 09:28:18 +00:00 |
|
goldsimon
|
6865806b55
|
Combined IPv4 and IPv6 code where possible, added defines to access IPv4/IPv6 in non-IP code so that the code is more readable.
|
2011-05-25 17:16:35 +00:00 |
|
goldsimon
|
4bfbe7ebeb
|
... and finally, we got a first working version of a dual-stack lwIP runnin IPv4 and IPv6 in parallel - big thanks to Ivan Delamer! (this is work in progress, so please beware, test a lot and report problems!)
|
2011-05-17 19:35:14 +00:00 |
|
goldsimon
|
7203680146
|
fixed bug #31748 (Calling non-blocking connect more than once can render a socket useless) since it mainly involves changing "FATAL" classification of error codes: ERR_USE and ERR_ISCONN just aren't fatal.
|
2011-03-14 21:21:26 +00:00 |
|
goldsimon
|
effcb90fdf
|
Mreged back changes that were lost during the savannah hack 3 weeks ago (using the sources from http://git.infradead.org/users/dwmw2/lwip.git)
|
2010-12-20 18:03:51 +00:00 |
|
goldsimon
|
d73262a0e5
|
Fixed compilation with TCP or UDP disabled.
|
2010-07-29 19:25:50 +00:00 |
|
goldsimon
|
48be546357
|
fixed bug #30300 (shutdown parameter was not initialized in netconn_delete)
|
2010-06-30 08:33:14 +00:00 |
|
goldsimon
|
6929a786aa
|
Fixed bug #10088: Correctly implemented shutdown at socket level.
|
2010-06-24 19:33:14 +00:00 |
|
goldsimon
|
ddd2b69f27
|
bug #29976: forgot some places using the changed IP address (copy vs. pointer)
|
2010-06-12 18:37:41 +00:00 |
|
goldsimon
|
f7479781c1
|
bug #27352: removed packing from ip_addr_t, the packed version is now only used in protocol headers. Added global storage for current src/dest IP address while in input functions.
|
2010-05-22 21:11:02 +00:00 |
|
goldsimon
|
4b7288e8f4
|
use checksum-on-copy for sending UDP data for LWIP_NETIF_TX_SINGLE_PBUF==1
|
2010-05-02 17:25:33 +00:00 |
|
goldsimon
|
51061fb61e
|
Fixed bug #29617 (sometime cause stall on delete listening connection)
|
2010-04-21 19:59:40 +00:00 |
|
goldsimon
|
846a2fb933
|
Fixed compiling with different options disabled (TCP/UDP), triggered by bug #29345; don't allocate acceptmbox if LWIP_TCP is disabled
|
2010-03-26 16:09:02 +00:00 |
|
goldsimon
|
46b7bd6ec3
|
Make functions static where applicable, add default cases to switches where applicable, prevent old-style function prototypes (without arguments)
|
2010-03-26 14:07:05 +00:00 |
|
goldsimon
|
0a49f2e068
|
Corrected spelling of ERR_WOULDBLOCK (D was missing)
|
2010-03-20 12:56:47 +00:00 |
|
goldsimon
|
0b5d60db5e
|
Correctly set TCP_WRITE_FLAG_MORE when netconn_write is split into multiple calls to tcp_write.
|
2010-03-05 11:34:43 +00:00 |
|
goldsimon
|
19a9b52c06
|
Corrected comment
|
2010-02-21 19:28:46 +00:00 |
|
goldsimon
|
7c57ee0c17
|
Use tcp_debug_state_str() instead of tcp_debug_print_state()
|
2010-02-21 10:56:00 +00:00 |
|
goldsimon
|
0792effc2a
|
task #7865 (implement non-blocking send operation)
|
2010-02-13 17:08:40 +00:00 |
|
goldsimon
|
0f05a6aede
|
Fixed compilation for LWIP_DNS==1 after changing sys layer
|
2010-02-13 15:43:19 +00:00 |
|
goldsimon
|
7ccf8cb731
|
Fixed compilation with LWIP_DNS==1 after changing sys layer
|
2010-02-13 15:01:55 +00:00 |
|
goldsimon
|
c49a3ab2d6
|
Fixed compilation for LWIP_SO_RCVBUF==0
|
2010-02-13 10:06:42 +00:00 |
|
goldsimon
|
bd3f86e505
|
Code layout: splitted long line
|
2010-02-12 16:31:18 +00:00 |
|
goldsimon
|
c73b1b4fa2
|
Fixed bug #28865 (Cannot close socket/netconn in non-blocking connect)
|
2010-02-12 15:21:37 +00:00 |
|
goldsimon
|
0030d1ade5
|
task #10139 (Prefer statically allocated memory): converted mbox and semaphore functions to take pointers to sys_mbox_t/sys_sem_t; converted sys_mbox_new/sys_sem_new to take pointers and return err_t; task #7212: Add Mutex concept in sys_arch (define LWIP_COMPAT_MUTEX to let sys.h use binary semaphores instead of mutexes - as before)
|
2010-02-12 13:49:21 +00:00 |
|
goldsimon
|
2d1631792a
|
struct netconn.socket is only used with LWIP_SOCKET; added comments
|
2010-02-12 09:58:44 +00:00 |
|
goldsimon
|
306f2203fa
|
Fixed bug #22110 (recv() makes receive window update for data that wasn't received by application); added function-like macros to correctly access/change conn->recv_timeout and conn->recv_bufsize
|
2010-02-09 20:23:39 +00:00 |
|
goldsimon
|
a84590273d
|
Merge 3 u8_t for netconn-internal status into one u8_t 'flags' to prevent waisting memory when adding more flags
|
2010-02-09 18:41:07 +00:00 |
|
goldsimon
|
5d360a6711
|
Replaced struct ip_addr by typedef ip_addr_t to make changing the actual implementation behind the typedef easier.
|
2010-02-04 18:47:44 +00:00 |
|
goldsimon
|
855dcadf7a
|
Added except set support in select (patch #6860)
|
2010-01-29 23:05:33 +00:00 |
|
goldsimon
|
e58f4c567a
|
Add non-blocking support for connect (partly from patch #6860) plus many cleanups in socket & netconn API
|
2010-01-29 22:09:31 +00:00 |
|
goldsimon
|
32c16fad42
|
igmp related: renamed netif pointers from 'interface' to 'netif' to not use keywords (or at least my editor highlights it as one...)
|
2010-01-28 18:42:40 +00:00 |
|
goldsimon
|
04a8b0f85d
|
Added TCP_SNDQUEUELOWAT corresponding to TCP_SNDLOWAT and added tcp_sndqueuelen() - this fixes bug #28605
|
2010-01-27 18:24:57 +00:00 |
|
goldsimon
|
e678e1bdcb
|
bug #28659: Missing casts
|
2010-01-25 08:24:30 +00:00 |
|
goldsimon
|
dbcce3a4be
|
bug #26523: Compiler Warnings
|
2010-01-23 17:48:36 +00:00 |
|
goldsimon
|
82318c0ef1
|
Fixed bug #28651 (tcp_connect: no callbacks called if tcp_enqueue fails) both in raw- and netconn-API
|
2010-01-21 18:43:37 +00:00 |
|
goldsimon
|
52389fc09a
|
Fixed bug #27316 (netconn: Possible deadlock in err_tcp) by using sys_mbox_trypost in err_tcp
|
2010-01-19 18:34:01 +00:00 |
|
goldsimon
|
34139606ca
|
task #10102: "netconn: clean up conn->err threading issues" by adding error return value to struct api_msg_msg
|
2010-01-17 18:28:56 +00:00 |
|
goldsimon
|
97f797e859
|
do_connect(): set conn->err to an error if conn->pcb is NULL
|
2010-01-14 19:49:27 +00:00 |
|
goldsimon
|
9521f54741
|
Another fix for bug #28562: Segfault @ err_tcp
|
2010-01-14 15:43:11 +00:00 |
|
goldsimon
|
0e38a52edc
|
Again: Fixed bug #26672 (close connection when receive window = 0) by correctly draining recvmbox/acceptmbox
|
2010-01-13 15:59:47 +00:00 |
|
goldsimon
|
533e6b5f8d
|
Fixed bug #26672 (close connection when receive window = 0) by correctly draining recvmbox/acceptmbox
|
2010-01-08 15:10:03 +00:00 |
|
goldsimon
|
8a81cb4ba0
|
Fixed bug #27955: netconn_close may nether return when LWIP_TCPIP_CORE_LOCKING enabled
|
2009-11-22 16:08:52 +00:00 |
|
goldsimon
|
a9cbdc141b
|
patch #6888: Patch for UDP Netbufs to support dest-addr and dest-port
|
2009-10-07 17:58:30 +00:00 |
|
goldsimon
|
8a7c1c4926
|
do_connect: LWIP_ERROR on invalid/disabled protocol
|
2009-08-30 20:24:08 +00:00 |
|
goldsimon
|
cc4b968f0a
|
Fixed bug #27114: Missing #include in api_msg.c on LWIP 1.3.1RC1; added include <string.h>
|
2009-07-27 15:13:24 +00:00 |
|
fbernon
|
ce5699f41b
|
minor changes: typos and coding style
|
2009-07-09 10:21:16 +00:00 |
|
kieranm
|
1eee0be951
|
BUG23240 use signed counters for recv_avail and don't increment
counters until message successfully sent to mbox
|
2009-07-09 09:35:07 +00:00 |
|
kieranm
|
2b87f899ab
|
BUG26722: initialise netconn write variables in netconn_alloc
|
2009-06-25 10:17:18 +00:00 |
|
goldsimon
|
9d5bf57dd9
|
fixed bug #25695: Segmentation fault in do_writemore()
|
2009-04-18 17:48:41 +00:00 |
|
goldsimon
|
14cb4eb735
|
fixed arguments of socket functions to match the standard; converted size argument of netconn_write to 'size_t' for that; fixed some warnings
|
2009-02-16 19:33:51 +00:00 |
|
goldsimon
|
8c7705bbf9
|
added configurable default valud for netconn->recv_bufsize: RECV_BUFSIZE_DEFAULT (fixes bug #23726: pbuf pool exhaustion on slow recv())
|
2009-02-11 19:07:22 +00:00 |
|
goldsimon
|
b0c61ffbb1
|
Reverted last changes since it's wrong when sizeof(int)==2...
|
2008-12-20 12:24:41 +00:00 |
|
goldsimon
|
aa568727d1
|
patch #6699: fixed some warnings on platform where sizeof(int) == 2
|
2008-12-19 18:08:29 +00:00 |
|
jifl
|
1f3fe200df
|
Correct commented description of do_recv().
Reported by Charles Landau on lwip-users.
|
2008-11-12 19:14:21 +00:00 |
|
goldsimon
|
ae2d5266c5
|
removed invalid call to tcp_connect() in do_close_internal()
|
2008-07-15 11:18:58 +00:00 |
|
goldsimon
|
99db244124
|
fixed bug #23847: do_close_internal references freed memory
|
2008-07-14 20:12:36 +00:00 |
|
fbernon
|
7774b57a1c
|
api_msg.c: fix wrong mailbox invalidate (NULL was used instead of SYS_MBOX_NULL). Spoted by Silas Boyd-Wickizer.
|
2008-03-21 16:23:14 +00:00 |
|
goldsimon
|
90cb4b4e09
|
Corrected comment in do_writemore()
|
2008-03-19 20:59:59 +00:00 |
|
fbernon
|
afcf49ad3a
|
api_msg.c: minor change, fix warning.
|
2008-03-13 19:57:11 +00:00 |
|
fbernon
|
a2f1892480
|
api_msg.c: fix the netbuf::addr field to point on the ip_src on the pbuf's copy (about bug#22530).
|
2008-03-12 12:58:07 +00:00 |
|
fbernon
|
552106e2a4
|
api_msg.c: Fix bug #22530 "api_msg.c's recv_raw() does not consume data".
|
2008-03-12 10:55:54 +00:00 |
|
fbernon
|
7518acf634
|
rawapi.txt, api_msg.c, tcp.c, tcp_in.c, tcp.h: changes for task #7675 "Enable to refuse data on a TCP_EVENT_RECV call". Important, behavior changes for the tcp_recv callback (see rawapi.txt).
|
2008-01-14 21:07:08 +00:00 |
|
fbernon
|
55bcc20deb
|
tcpip.h, tcpip.c, api.h, api_lib.c, api_msg.c, sockets.c: replace the field netconn::sem per netconn::op_completed like suggested for the task #7490 "Add return value to sys_mbox_post".
|
2008-01-12 11:52:21 +00:00 |
|
fbernon
|
9906e4c984
|
api_msg.c, opt.h: replace DEFAULT_RECVMBOX_SIZE per DEFAULT_TCP_RECVMBOX_SIZE, DEFAULT_UDP_RECVMBOX_SIZE and DEFAULT_RAW_RECVMBOX_SIZE (to optimize queues sizes), like suggested for the task #7490 "Add return value to sys_mbox_post".
|
2008-01-11 23:50:10 +00:00 |
|
fbernon
|
bceff76c70
|
tcpip.h, tcpip.c, api.h, api_lib.c, api_msg.c, sockets.c: replace the field netconn::mbox (sys_mbox_t) per netconn::sem (sys_sem_t) for the task #7490 "Add return value to sys_mbox_post".
|
2008-01-10 21:34:25 +00:00 |
|
goldsimon
|
a41f113b8f
|
Added function netconn_free(), which deallocates all mboxes and frees the netconn (to be used from different places) - the PCB is not freed!
|
2008-01-06 14:28:04 +00:00 |
|
fbernon
|
5941b3c86e
|
sys_arch.txt, api.h, api_lib.c, api_msg.h, api_msg.c, tcpip.c, sys.h, opt.h: Introduce changes for task #7490 "Add return value to sys_mbox_post" with some modifications in the sys_mbox api: sys_mbox_new take a "size" parameters which indicate the number of pointers query by the mailbox. There is three defines in opt.h to indicate sizes for tcpip::mbox, netconn::recvmbox, and for the netconn::acceptmbox. Port maintainers, you can decide to just add this new parameter in your implementation, but to ignore it to keep the previous behavior. The new sys_mbox_trypost function return a value to know if the mailbox is full or if the message is posted. Take a look to sys_arch.txt for more details. This new function is used in tcpip_input (so, can be called in an interrupt context since the function is not blocking), and in recv_udp and recv_raw.
|
2008-01-05 21:10:32 +00:00 |
|
fbernon
|
9c4daa312d
|
Minor changes in lwip folder: fix some warnings, coding style, and rename "internal" netconn_alloc function.
|
2008-01-04 23:07:44 +00:00 |
|
fbernon
|
32005617b9
|
rawapi.txt, api.h, api_lib.c, api_msg.h, api_msg.c, sockets.c, tcp.h, tcp.c, tcp_in.c, init.c, opt.h: rename backlog options with TCP_ prefix, limit the "backlog" parameter in an u8_t, 0 is interpreted as "smallest queue", add documentation in the rawapi.txt file.
|
2008-01-04 22:18:27 +00:00 |
|
goldsimon
|
1ed34774c8
|
tcp.h, opt.h, api.h, api_msg.h, tcp.c, tcp_in.c, api_lib.c, api_msg.c, sockets.c, init.c: task #7252: Implement TCP listen backlog: Warning: raw API applications have to call 'tcp_accepted(pcb)' in their accept callback to keep accepting new connections.
|
2007-12-21 16:47:56 +00:00 |
|
goldsimon
|
48e62e25e9
|
sys.h, api_lib.c, api_msg.c, sockets.c: fix bug #21698: "netconn->recv_avail is not protected" by using new macros for interlocked access to modify/test netconn->recv_avail.
|
2007-12-21 14:59:10 +00:00 |
|
fbernon
|
2b54da5070
|
api_msg.c, err.h, err.c, sockets.c, dns.c, dns.h: replace "enum dns_result" by err_t type. Add a new err_t code "ERR_INPROGRESS".
|
2007-12-13 23:06:49 +00:00 |
|
goldsimon
|
113a52d091
|
fix bug #21656 (recvmbox problem in netconn API): always allocate a recvmbox in netconn_new_with_proto_and_callback. For a tcp-listen netconn, this recvmbox is later freed and a new mbox is allocated for acceptmbox. This is a fix for thread-safety and allocates all items needed for a netconn when the netconn is created.
|
2007-12-02 14:53:50 +00:00 |
|
goldsimon
|
6746beb2a3
|
Compacted code: moved the code creating a netconn (without pcb) from netconn_new_with_proto_and_callback to new (synchroneous) function netconn_alloc_with_proto_and_callback and call this function from netconn_new_with_proto_and_callback and accept_function.
|
2007-11-30 12:54:10 +00:00 |
|
goldsimon
|
03777ccb21
|
Changed error handling: ERR_MEM, ERR_BUF and ERR_RTE are seen as non-fatal, all other errors are fatal. netconns and sockets block most operations once they have seen a fatal error.
|
2007-11-27 21:15:44 +00:00 |
|
fbernon
|
3d9c76a69c
|
Minor change (doxygen tags)
|
2007-11-24 22:13:25 +00:00 |
|
goldsimon
|
7797ada1f5
|
Added documentation
|
2007-11-24 21:19:47 +00:00 |
|
goldsimon
|
dc515c7ad3
|
Fixed bug #20287: tcp_output_nagle sends too early. This fixes the nagle algorithm; nagle now also works for all raw API applications and has to be explicitly disabled with 'tcp_pcb->flags |= TF_NODELAY'
|
2007-11-21 17:59:03 +00:00 |
|
fbernon
|
f58515b51e
|
api_msg.c, dns.h, dns.c: Implement DNS_DOES_NAME_CHECK option (check if name received match the name query), implement DNS_USES_STATIC_BUF (the place where copy dns payload to parse the response), return an error if there is no place for a new query, and fix some minor problems.
|
2007-11-19 22:42:01 +00:00 |
|
fbernon
|
edc46281a4
|
Minor changes on DNS client.
|
2007-11-18 14:19:27 +00:00 |
|
goldsimon
|
e2cd201f6a
|
Added sequential dns resolver function for netconn api (netconn_gethostbyname)
|
2007-11-16 17:16:17 +00:00 |
|
fbernon
|
a4d14722f3
|
sockets.c, api.h, api_lib.c, api_msg.h, api_msg.c: Fixed bug #20900. Now, most of the netconn_peer and netconn_addr processing is done inside tcpip_thread context in do_getaddr.
|
2007-11-12 22:39:24 +00:00 |
|
goldsimon
|
f3dbd986cb
|
Task #7410: Removed the need to include core header files in api.h (ip/tcp/udp/raw.h) to hide the internal implementation from netconn api applications.
|
2007-11-06 20:31:28 +00:00 |
|
fbernon
|
ecce865cfe
|
api.h, api_lib.c, api_msg.c, sockets.c, opt.h: add SO_RCVBUF option for UDP & RAW netconn. You need to set LWIP_SO_RCVBUF=1 in your lwipopts.h (it's disabled by default). Netconn API users can use the netconn_recv_bufsize macro to access it. This is a first release which have to be improve for TCP. Note it used the netconn::recv_avail which need to be more "thread-safe" (note there is already the problem for FIONREAD with lwip_ioctl/ioctlsocket).
|
2007-11-02 10:37:08 +00:00 |
|
fbernon
|
cbe9b050a9
|
sockets.h, sockets.c, api.h, api_lib.c, api_msg.h, api_msg.c, tcp.h, tcp_out.c: Integrate "patch #6250 : MSG_MORE flag for send". MSG_MORE is used at socket api layer, NETCONN_MORE at netconn api layer, and TCP_WRITE_FLAG_MORE at raw api layer. This option enable to delayed TCP PUSH flag on multiple "write" calls. Note that previous "copy" parameter for "write" APIs is now called "apiflags".
|
2007-11-01 17:37:50 +00:00 |
|