Is it as "simple" as thttpd should do:

nwritten= send(sock_fd, buffer, totalbytesread, 0);

rather than the generic:

nwritten= write(sock_fd, buffer, nbytes);

On 27/06/2025 18:40, Tim Hardisty wrote:
Trying to get thttpd's CGI handling working and have found that the dup(2) calls of stdin and stdout return a file descriptor that's already been allocated to the NET socket (via thttpd I think).

That isn't right is it?

I am not sure if it's a side effect of something that thttpd does (that might have been OK in the past but is now not right) or a NuttX bug, of a missing Kconfig setting that relates to this.

The result is that the ultimate copying of buffered html that should be written via the socket FD gets rejected as the FD doesn't have WR access (and is now the wrong FD anyway!).

Perhaps there's been a change in the way NuttX deals with all of this that didn't get sorted in thttpd?

Reply via email to