aboutsummaryrefslogtreecommitdiffstats
path: root/Projects/Webserver/Lib/uip/uip.c
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2010-02-03 14:09:56 +0000
committerDean Camera <dean@fourwalledcubicle.com>2010-02-03 14:09:56 +0000
commitf4f44f9fc11d0ee9e0dbaf3323d095af32e8b0ef (patch)
tree6eb9d93748b655d5b3e69249b8248ce29cc689e4 /Projects/Webserver/Lib/uip/uip.c
parent7d3ed400704f76e4ea3bae759d1c2298b1098585 (diff)
downloadlufa-f4f44f9fc11d0ee9e0dbaf3323d095af32e8b0ef.tar.gz
lufa-f4f44f9fc11d0ee9e0dbaf3323d095af32e8b0ef.tar.bz2
lufa-f4f44f9fc11d0ee9e0dbaf3323d095af32e8b0ef.zip
Re-add Webserver uIP application polling, apply patch to uIP by Andrew Ruder to fix corrupt TCP streams when multiple applications are used and the applications are polled for more data.
Diffstat (limited to 'Projects/Webserver/Lib/uip/uip.c')
-rw-r--r--Projects/Webserver/Lib/uip/uip.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/Projects/Webserver/Lib/uip/uip.c b/Projects/Webserver/Lib/uip/uip.c
index 1abefd5dc..22a72043f 100644
--- a/Projects/Webserver/Lib/uip/uip.c
+++ b/Projects/Webserver/Lib/uip/uip.c
@@ -689,6 +689,7 @@ uip_process(u8_t flag)
if(flag == UIP_POLL_REQUEST) {
if((uip_connr->tcpstateflags & UIP_TS_MASK) == UIP_ESTABLISHED &&
!uip_outstanding(uip_connr)) {
+ uip_len = uip_slen = 0;
uip_flags = UIP_POLL;
UIP_APPCALL();
goto appsend;
@@ -794,6 +795,7 @@ uip_process(u8_t flag)
} else if((uip_connr->tcpstateflags & UIP_TS_MASK) == UIP_ESTABLISHED) {
/* If there was no need for a retransmission, we poll the
application for new data. */
+ uip_len = uip_slen = 0;
uip_flags = UIP_POLL;
UIP_APPCALL();
goto appsend;