diff --git a/Documentation/NuttX.html b/Documentation/NuttX.html index e718722219..3f67662f97 100644 --- a/Documentation/NuttX.html +++ b/Documentation/NuttX.html @@ -8,7 +8,7 @@
Last Updated: November 6, 2007
+Last Updated: November 8, 2007
DM320 (ARM9) This build for the ARM9 target includes a signficant subset of OS - features, ethernet driver and full TCP/IP stack (via uIP). + features, ethernet driver and full TCP/IP stack (via uIP). (11/8/07)
text data bss dec hex filename - 51368 296 6072 57736 e188 nuttx + 49472 296 3972 53740 d1ec nuttx
87C52 A reduced functionality OS test for the 8052 target requires only diff --git a/net/uip/uip-tcpcallback.c b/net/uip/uip-tcpcallback.c index 524b700847..72fae77366 100644 --- a/net/uip/uip-tcpcallback.c +++ b/net/uip/uip-tcpcallback.c @@ -75,6 +75,10 @@ uint8 uip_tcpcallback(struct uip_driver_s *dev, struct uip_conn *conn, uint8 flags) { + /* Preserve the UIP_ACKDATA & UIP_NEWDATA in the response. These are + * needed by uIP to handle ACKing and buffer state. + */ + uint8 ret = flags & (UIP_ACKDATA|UIP_NEWDATA); vdbg("flags: %02x\n", flags); @@ -83,7 +87,11 @@ uint8 uip_tcpcallback(struct uip_driver_s *dev, struct uip_conn *conn, uint8 fla if (conn->data_event) { - /* Perform the callback */ + /* Perform the callback. Callback function may return on of: + * UIP_CLOSE - Gracefully close the current connection + * UIP_ABORT - Abort (reset) the current connection on an error that + * prevents UIP_CLOSE from working. + */ ret |= conn->data_event(dev, conn, flags); }