Prep for 0.4.11 release
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2072 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
parent
d72669723d
commit
024ebc70c4
17
ChangeLog
17
ChangeLog
@ -839,7 +839,7 @@
|
||||
* net/accept.c: Fix bug in accept(). The logic expected parts of the
|
||||
return address structure to be initialized or it would return an error.
|
||||
|
||||
0.4.11 2009-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
0.4.11 2009-09-16 Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
|
||||
* fs/fs_read.c and fs/fs_write.c. read() and write() to socket is the
|
||||
same as recv() and send() with flags = 0. Fixed!
|
||||
@ -878,4 +878,19 @@
|
||||
to new tasks.
|
||||
* net/net_clone.c. Similarly, after a socket is cloned, its reference count
|
||||
was not being initialized.
|
||||
* lib/lib_strstr.c. Improperly incremented pointer could cause comparison
|
||||
failures.
|
||||
* net/. Connection reference count must always be set to zero before calling
|
||||
uip_tcpfree() or it could trigger a DEBUGASSERT that verifies that the
|
||||
reference count is zero before freeing a connection structure.
|
||||
* net/uip/uip_listen.c. uip_accept() consulted the wrong list to find the
|
||||
listener on a socket. The previous logic worked most of the time, but
|
||||
occasionally picked the wrong listener.
|
||||
* net/net_close.c and net/net_sockets.c. Sockets were not being closed
|
||||
when a task exits. If many server tasks are created and exit without closing
|
||||
sockets (such as with CGI tasks), then eventually, you will run out of sockets.
|
||||
* netutils/thttpd. Basic functionality of THTTPD is complete. This includes
|
||||
serving up files from a file system and executing NXFLAT-based CGI programs
|
||||
and pipe the stdout back to the HTTP client.
|
||||
|
||||
0.4.12 2009-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
|
@ -8,7 +8,7 @@
|
||||
<tr align="center" bgcolor="#e4e4e4">
|
||||
<td>
|
||||
<h1><big><font color="#3c34ec"><i>NuttX RTOS</i></font></big></h1>
|
||||
<p>Last Updated: September 15, 2009</p>
|
||||
<p>Last Updated: September 16, 2009</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
@ -706,32 +706,32 @@
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<p><b>nuttx-0.4.10</b>.
|
||||
This 42<sup>nd</sup> release of NuttX (nuttx-0.4.10) was made on August 8, 2009
|
||||
and is available for download from the
|
||||
<a href="http://sourceforge.net/project/showfiles.php?group_id=189573">SourceForge</a>
|
||||
website.
|
||||
<p><b>nuttx-0.4.11</b>.
|
||||
|
||||
<p>
|
||||
This 43<sup>rd</sup> release of NuttX was made on September 16, 2009 and is available for download from the
|
||||
<a href="http://sourceforge.net/project/showfiles.php?group_id=189573">SourceForge</a> website.
|
||||
The change log associated with the release is available <a href="#currentrelease">here</a>.
|
||||
Unreleased changes after this release are available in CVS.
|
||||
These unreleased changes are listed <a href="#pendingchanges">here</a>.
|
||||
This release of NuttX incorporates the verified port of Jeff Poskanzer's <a href="http://acme.com/software/thttpd">THTTPD</a> HTTP server.
|
||||
Many of the key features of THTTPD have been tested on the Micromint Eagle-100 development board (Cortex-M3).
|
||||
These tests verify:
|
||||
</p>
|
||||
The changes in thsi release focus on the port of Jeff Poskanzer's
|
||||
<a href="http://acme.com/software/thttpd/">THTTPD</a> to NuttX.
|
||||
Do to limited time to work on NuttX, that port is still not fully functional.
|
||||
However, numerous related bug-fixes and functional additions for THTTPD were
|
||||
added:
|
||||
<ul>
|
||||
<li>Several new standard C-library functions (<code>fileno</code>, <code>strstr</code>,
|
||||
<code>strpbrk</code>, <code>fcntl</code>).</li>
|
||||
<li>Improved and extended timing APIs (<code>mktime</code>, <code>gmtime</code>, <code>gmtime_r</code>,
|
||||
<code>gettimeofday</code>, <code>localtime</code>, <code>localtime_r</code>, and
|
||||
<code>strftime</code>)</li>
|
||||
<li>Networking enhancements: <code>recvfrom</code> and <code>accept</code> now work with non-blocking
|
||||
sockets.</li>
|
||||
<li><a href="NuttXNxFlat.html">NXFLAT</a> extensions (<code>exec</code>)</li>
|
||||
<li>Pattern matching logic.</li>
|
||||
<li>And miscellaneous bug fixes (see the <a href="#currentrelease">ChangeLog</a> for a complete list).</li>
|
||||
</ul>
|
||||
<ul>
|
||||
<li>Serving of files from any file system, and </li>
|
||||
<li>Execution of CGI executable.
|
||||
This release supports execution of <a href="http://www.nuttx.org/NuttXNxFlat.html">NXFLAT executables</a> residing on a ROMFS file system.
|
||||
</ul>
|
||||
<p>
|
||||
A standard CGI interface is used: Information is pasted to the CGI program via POST commands and via environment variables.
|
||||
CGI socket I/O is redirected to <code>stdin</code> and <code>stdout</code> so that the CGI program only need to <code>printf()</code> to send its content back to the HTTP client.
|
||||
</p>
|
||||
<p>
|
||||
Another value to this THTTPD integration effort has been that THTTPD has provided a very good test bed for finding NuttX networking bugs.
|
||||
Several very critical networking bugs have been fixed with this 0.4.11 release (see the <a href="#currentrelease">ChangeLog</a> for details).
|
||||
Networking throughput has also been greatly improved.
|
||||
Anyone using NuttX networking should consider upgrading to this release.
|
||||
</p>
|
||||
|
||||
<table width ="100%">
|
||||
@ -1435,70 +1435,6 @@ Other memory:
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<ul><pre>
|
||||
nuttx-0.4.10 2009-08-08 Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
|
||||
* lib/: Added some basic regex-subset, pattern matching functions
|
||||
* lib/: Greatly simplified mktime() and gmtime_r(). The Gregorian and
|
||||
Julian time calculations were interesting, but not necessary in the
|
||||
typical embeddd system.
|
||||
* sched/: Added gettimeofday(). This implementation is simply a thin
|
||||
wrapper around clock_gettimer().
|
||||
* lib/: Add gmtime(), localtime(), and strftime()
|
||||
* binfmt/: Add exec(). This is just a wrapper that executes both
|
||||
load_ and exec_module() in a more familiar manner. It is not consistent
|
||||
with more standard exec() functions, however, because (1) it returns
|
||||
and (2) it requires symbol table arguments.
|
||||
* lib/: Add fileno()
|
||||
* examples/ostest: Several of the tests used a big, hard-coded stack size
|
||||
when creating test threads (16Kb stacksize). The stack size should
|
||||
be controlled by the .config file or the OSTest won't work on platforms
|
||||
with memory constraints.
|
||||
* netutils/thttpd: An initial port of Jef Poskanzer's THTTPD HTTP server.
|
||||
See http://acme.com/software/thttpd/.
|
||||
* examples/thttpd: A basic test program for THTTPD
|
||||
* configs/eagle100/thttpd: A build configuration for THTTPD on the Micromint
|
||||
Eagle-100 LMS6918 (Cortex-M3) board.
|
||||
* configs/ntosd-dm320/thttpd: A build configuration for THTTPD on the Neuros
|
||||
DM320 platform.
|
||||
* lib/: Added strstr() and strpbrk().
|
||||
* net/recvfrom.c and net/accept(): Sockets now support some non-blocking
|
||||
operations, specifically for (1) TCP/IP read operations when read-ahead
|
||||
buffering is enabled, and (2) TCP/IP accept() operations when TCP/IP
|
||||
connection backlog is enabled.
|
||||
* fs/fs_fcntl.c and net/net_vfcntl.c: Minimal support provided for fcntl().
|
||||
It can, at least, be used to mark sockets as blocking or non-blocking.
|
||||
* net/net_close.c: Fix bug in close(). If reference count not set to zero
|
||||
then uip_tcpfree() will assert when DEBUG is enabled.
|
||||
* net/accept.c: Fix bug in accept(). The logic expected parts of the
|
||||
return address structure to be initialized or it would return an error.
|
||||
|
||||
pascal-0.1.2 2008-02-10 Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
|
||||
* Add logic to build and link with the ZDS-II toolchain
|
||||
use with the z16f.
|
||||
* Make sure that POFF header structures are aligned
|
||||
* Standardized POFF file format to big-endian
|
||||
* Break up large switch statements to lower complexity
|
||||
and eliminate a compiler bug
|
||||
* Changes so that runtime compiles with SDCC.
|
||||
|
||||
buildroot-0.1.7 2009-06-26 <spudmonkey@racsa.co.cr>
|
||||
|
||||
* configs/avr-defconfig-4.3.3: Added support for AVR to support a NuttX
|
||||
port of the ATmega128.
|
||||
* toolchain/nxflat: Added logic to build NuttX NXFLAT binding support tools
|
||||
* toolchain/genromfs: Added support for the genromfs tool
|
||||
</pre></ul>
|
||||
|
||||
<table width ="100%">
|
||||
<tr bgcolor="#e4e4e4">
|
||||
<td>
|
||||
<a name="pendingchanges">Unreleased Changes</a>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<ul><pre>
|
||||
nuttx-0.4.11 2009-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
|
||||
@ -1538,6 +1474,49 @@ nuttx-0.4.11 2009-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
to new tasks.
|
||||
* net/net_clone.c. Similarly, after a socket is cloned, its reference count
|
||||
was not being initialized.
|
||||
* lib/lib_strstr.c. Improperly incremented pointer could cause comparison
|
||||
failures.
|
||||
* net/. Connection reference count must always be set to zero before calling
|
||||
uip_tcpfree() or it could trigger a DEBUGASSERT that verifies that the
|
||||
reference count is zero before freeing a connection structure.
|
||||
* net/uip/uip_listen.c. uip_accept() consulted the wrong list to find the
|
||||
listener on a socket. The previous logic worked most of the time, but
|
||||
occasionally picked the wrong listener.
|
||||
* net/net_close.c and net/net_sockets.c. Sockets were not being closed
|
||||
when a task exits. If many server tasks are created and exit without closing
|
||||
sockets (such as with CGI tasks), then eventually, you will run out of sockets.
|
||||
* netutils/thttpd. Basic functionality of THTTPD is complete. This includes
|
||||
serving up files from a file system and executing NXFLAT-based CGI programs
|
||||
and pipe the stdout back to the HTTP client.
|
||||
|
||||
pascal-0.1.2 2008-02-10 Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
|
||||
* Add logic to build and link with the ZDS-II toolchain
|
||||
use with the z16f.
|
||||
* Make sure that POFF header structures are aligned
|
||||
* Standardized POFF file format to big-endian
|
||||
* Break up large switch statements to lower complexity
|
||||
and eliminate a compiler bug
|
||||
* Changes so that runtime compiles with SDCC.
|
||||
|
||||
buildroot-0.1.7 2009-06-26 <spudmonkey@racsa.co.cr>
|
||||
|
||||
* configs/avr-defconfig-4.3.3: Added support for AVR to support a NuttX
|
||||
port of the ATmega128.
|
||||
* toolchain/nxflat: Added logic to build NuttX NXFLAT binding support tools
|
||||
* toolchain/genromfs: Added support for the genromfs tool
|
||||
</pre></ul>
|
||||
|
||||
<table width ="100%">
|
||||
<tr bgcolor="#e4e4e4">
|
||||
<td>
|
||||
<a name="pendingchanges">Unreleased Changes</a>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<ul><pre>
|
||||
nuttx-0.4.12 2009-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
|
||||
pascal-0.1.3 2009-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
|
||||
|
23
ReleaseNotes
23
ReleaseNotes
@ -957,4 +957,27 @@ added:
|
||||
|
||||
This tarball contains a complete CVS snapshot from August 8, 2009.
|
||||
|
||||
nuttx-0.4.11
|
||||
^^^^^^^^^^^^
|
||||
|
||||
This is the 43rd release of NuttX. This release of NuttX incorporates the
|
||||
verified port of Jeff Poskanzer's THTTPD HTTP server (see http://acme.com/software/thttpd/.).
|
||||
Many of the key features of THTTPD have been tested on the Micromint Eagle-100
|
||||
development board (Cortex-M3). These tests verify:
|
||||
|
||||
* Serving of files from any file system
|
||||
* Execution of CGI executable. This release supports execution of
|
||||
NXFLAT executables on a ROMFS file system (http://www.nuttx.org/NuttXNxFlat.html)
|
||||
|
||||
A standard CGI interface is used: Information is pasted to the CGI program via POST
|
||||
commands and via environment variables. CGI socket I/O is redirected to stdin and stdout
|
||||
so that the CGI program only need to printf() to send its content back to the HTTP
|
||||
client.
|
||||
|
||||
Another value to this THTTPD integration effort has been that THTTPD has provided a very
|
||||
good test bed for finding NuttX networking bugs. Several very critical networking bugs
|
||||
have been fixed with this 0.4.11 release (see the ChangeLog for details). Networking
|
||||
throughput has also been greatly improved. Anyone using NuttX networking should consider
|
||||
upgrading to this release.
|
||||
|
||||
This tarball contains a complete CVS snapshot from September 16, 2009
|
||||
|
51
TODO
51
TODO
@ -1,4 +1,4 @@
|
||||
NuttX TODO List (Last updated September 15, 2009)
|
||||
NuttX TODO List (Last updated September 16, 2009)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
(5) Task/Scheduler (sched/)
|
||||
@ -7,7 +7,8 @@ NuttX TODO List (Last updated September 15, 2009)
|
||||
(1) pthreads (sched/)
|
||||
(1) C++ Support
|
||||
(5) Binary loaders (binfmt/)
|
||||
(15) Network (net/, netutils/)
|
||||
(13) Network (net/, netutils/)
|
||||
(4) Network Utilities (netutils/)
|
||||
(1) USB (drivers/usbdev)
|
||||
(5) Libraries (lib/)
|
||||
(8) File system/Generic drivers (fs/, drivers/)
|
||||
@ -136,15 +137,8 @@ o Binary loaders (binfmt/)
|
||||
Status: Open
|
||||
Priority: Low
|
||||
|
||||
o Network (net/, netutils/)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Description: One critical part of netutils/ apps is untested: The uIP
|
||||
resolver in netutils/resolv. The webclient code has been
|
||||
tested on host using gethosbyname(), but still depends on the
|
||||
untested resolve logic.
|
||||
Status: Open
|
||||
Priority: Medium, Important but not core NuttX functionality
|
||||
o Network (net/)
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
Description: Should implement SOCK_RAW, SOCK_PACKET
|
||||
Status: Open
|
||||
@ -204,10 +198,6 @@ o Network (net/, netutils/)
|
||||
Status: Open
|
||||
Priority: Medium
|
||||
|
||||
Description: Port PPP support from http://contiki.cvs.sourceforge.net/contiki/contiki-2.x/backyard/core/net/ppp/
|
||||
Status: Open
|
||||
Priority: Low
|
||||
|
||||
Description: At present, there cannot be two concurrent active TCP send
|
||||
operations in progress using the same socket. This is because
|
||||
the uIP ACK logic will support only one transfer at a time. The
|
||||
@ -244,15 +234,36 @@ o Network (net/, netutils/)
|
||||
|
||||
Description: sockets do not support all modes except for O_NONBLOCK. Sockets
|
||||
support only (1) TCP/IP non-blocking read operations when read-ahead
|
||||
buffering is enabled, and (2) TCP/IP accept() operations when TCP/IP
|
||||
connection backlog is enabled.
|
||||
buffering is enabled, and (2) TCP/IP accept() operations when TCP/IP
|
||||
connection backlog is enabled.
|
||||
Status: Open
|
||||
Priority: Low.
|
||||
|
||||
Description: THTTPD is included in the source tree, but has not yet been fully
|
||||
integrated.
|
||||
o Network Utilities (netutils/)
|
||||
|
||||
Description: One critical part of netutils/ apps is untested: The uIP
|
||||
resolver in netutils/resolv. The webclient code has been
|
||||
tested on host using gethosbyname(), but still depends on the
|
||||
untested resolve logic.
|
||||
Status: Open
|
||||
Priority: High
|
||||
Priority: Medium, Important but not core NuttX functionality
|
||||
|
||||
Description: Port PPP support from http://contiki.cvs.sourceforge.net/contiki/contiki-2.x/backyard/core/net/ppp/
|
||||
Status: Open
|
||||
Priority: Low
|
||||
|
||||
Description: Not all THTTPD features/options have been verified. In particular, there is no
|
||||
test case of a CGI program receiving POST input. Only the configuration of
|
||||
examples/thttpd has been tested.
|
||||
Status: Open
|
||||
Priority: Medium
|
||||
|
||||
Description: The first GET received by THTTPD is not responded to. Refreshing the page
|
||||
from the browser solves the problem and THTTPD works fine after thatg. I
|
||||
believe that this is the duplicate of another bug: "Outgoing [uIP] packets are dropped
|
||||
and overwritten by ARP packets if the destination IP has not been mapped to a MAC."
|
||||
Status: Open
|
||||
Priority: Medium
|
||||
|
||||
o USB (drivers/usbdev)
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
Loading…
Reference in New Issue
Block a user