nuttx-apps/netutils
Marco Casaroli f1033082f9 netutils/dropbear, testing/nand_sim: do not use fork() to run in background.
Neither of these wants fork() semantics.  Both reach for fork() only to put
work in the background, and each has a NuttX-native way to do that, so
neither needs a fork primitive at all -- which matters once apache/nuttx#19562
makes ARCH_HAVE_FORK conditional on the architecture implementing POSIX
fork().

netutils/dropbear: the port already routes every fork-then-exec through
vfork(), because sysoptions.h selects DROPBEAR_VFORK when HAVE_FORK is
undefined and the port leaves it undefined.  spawn_command() in dbutil.c and
both call sites in scp.c follow that switch.  The one exception is the
daemon() fallback that compat.c compiles under #ifndef HAVE_DAEMON, which
calls fork() directly and bypasses it.  NuttX provides daemon() in
libs/libc/unistd/lib_daemon.c and declares it in unistd.h, so the fallback is
redundant; define HAVE_DAEMON alongside the HAVE_STRLCAT and HAVE_STRLCPY
entries that are there for exactly the same reason.  The code was unreachable
in any case -- the port hands svr_getopts() an argv containing -F, so
svr_opts.forkbg is always zero and dropbear never calls daemon() at all.

testing/drivers/nand_sim: forked so that the parent could return to the shell
while the child registered the MTD device and slept forever.  Nothing from
before the fork is used after it, so the child is a self-contained entry
point, and task_create() expresses that directly.  The emulator body moves
into nand_sim_daemon() unchanged.  TESTING_NAND_SIM therefore needs no fork
dependency, and the two sim configurations that enable it keep working
whatever ARCH_HAVE_FORK is set to.

Assisted-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Signed-off-by: Marco Casaroli <marco.casaroli@gmail.com>
2026-08-03 09:22:39 -03:00
..
bare netutils: Add BARE 2026-01-23 11:05:48 -03:00
chat apps: Fix unchecked strdup()/asprintf() as requested in #1727 2026-05-23 16:30:52 -04:00
cjson netutils/cjson: fix apps path in CMake 2026-03-26 20:18:52 -04:00
cmux include/debug.h: Use <nuttx/debug.h> in apps 2026-04-11 10:39:27 -03:00
codecs !fsutils/passwd: Replace TEA with PBKDF2-HMAC-SHA256 2026-07-22 17:21:22 +08:00
connectedhomeip netutils: migrate the license to ASF 2024-12-21 13:53:10 +08:00
cwebsocket netutils: migrate the license to ASF 2024-12-21 13:53:10 +08:00
dhcp6c include/debug.h: Use <nuttx/debug.h> in apps 2026-04-11 10:39:27 -03:00
dhcpc netutils/dhcpc: parse DHCP NTP server option 2026-04-24 10:44:08 -03:00
dhcpd !apps: replace sclock_t with clock_t and drop redundant time_t/off_t casts 2026-05-11 17:38:32 +08:00
discover include/debug.h: Use <nuttx/debug.h> in apps 2026-04-11 10:39:27 -03:00
dropbear netutils/dropbear, testing/nand_sim: do not use fork() to run in background. 2026-08-03 09:22:39 -03:00
esp8266 include/debug.h: Use <nuttx/debug.h> in apps 2026-04-11 10:39:27 -03:00
ftpc apps: Fix unchecked strdup()/asprintf() as requested in #1727 2026-05-23 16:30:52 -04:00
ftpd apps: Fix unchecked strdup()/asprintf() as requested in #1727 2026-05-23 16:30:52 -04:00
iperf iperf: compatible work with no IPv4 2026-01-04 00:06:17 +08:00
iptables netutils: migrate the license to ASF 2024-12-21 13:53:10 +08:00
jsoncpp netutils: migrate the license to ASF 2024-12-21 13:53:10 +08:00
libcoap netutils: migrate the license to ASF 2024-12-21 13:53:10 +08:00
libcurl4nx include/debug.h: Use <nuttx/debug.h> in apps 2026-04-11 10:39:27 -03:00
libshvc apps: fix distclean for partial builds and residual .kconfig files 2026-07-09 09:25:33 +08:00
libulut apps: fix distclean for partial builds and residual .kconfig files 2026-07-09 09:25:33 +08:00
libwebsockets netutils/libwebsockets: Fix error regarding building with CMake 2026-06-16 14:27:29 -03:00
mdns netutils/mdns: raise responder stack size default to 8KiB 2026-07-31 15:19:31 +08:00
mqttc netutils/mqttc: fix patch and add mbedtls dependency 2026-04-10 12:23:37 -03:00
nanopb netutils/nanopb: fix unpack step for MACOS 2025-07-14 15:48:08 -03:00
netcat netutils: migrate the license to ASF 2024-12-21 13:53:10 +08:00
netinit !apps: drop CONFIG_SYSTEM_TIME64 conditionals 2026-05-11 17:38:32 +08:00
netlib netlib: replace DNS ping with gateway ping for connectivity check 2026-05-14 11:58:15 +08:00
nng netutils/nng: Update help for NETUTILS_NNG 2026-01-21 09:48:11 +08:00
ntpclient !apps: drop redundant casts on tv_sec/tv_nsec and fix printf formats 2026-05-22 13:38:25 +08:00
paho_mqtt paho_mqtt: Add mqtt compilation files 2025-12-25 12:20:17 +08:00
ping icmpv6_ping.c: change socket type from SOCK_DGRAM to SOCK_RAW. 2026-01-19 22:52:06 +08:00
plcatool netutils: Add plcatool 2025-09-17 19:29:10 +08:00
pppd include/debug.h: Use <nuttx/debug.h> in apps 2026-04-11 10:39:27 -03:00
ptpd !apps: drop redundant casts on tv_sec/tv_nsec and fix printf formats 2026-05-22 13:38:25 +08:00
rexec netutils/rexec: initialize ret to avoid maybe-uninitialized 2026-06-27 08:47:46 -03:00
rexecd netutils/rexecd: forward PRIORITY/STACKSIZE config in CMake build 2026-07-23 17:18:08 -03:00
rtptools netutils: migrate the license to ASF 2024-12-21 13:53:10 +08:00
smtp netutils: smtp: treat recv EOF as an error 2026-07-09 09:29:57 +08:00
telnetc Remove unused header files across multiple source files 2025-01-10 21:42:00 +08:00
telnetd include/debug.h: Use <nuttx/debug.h> in apps 2026-04-11 10:39:27 -03:00
tftpc include/debug.h: Use <nuttx/debug.h> in apps 2026-04-11 10:39:27 -03:00
thttpd netutils/thttpd: Apply the same check to related allocation sites 2026-05-23 16:30:52 -04:00
wakaama wakaama: add support for TLV 2026-05-18 16:18:53 -04:00
wakeonlan netutils: migrate the license to ASF 2024-12-21 13:53:10 +08:00
webclient include/debug.h: Use <nuttx/debug.h> in apps 2026-04-11 10:39:27 -03:00
webserver apps: Fix unchecked strdup()/asprintf() as requested in #1727 2026-05-23 16:30:52 -04:00
xedge netutils/xedge: refactor Makefile to use git clone instead of zip downloads 2025-08-02 10:00:20 -03:00
xmlrpc netutils: migrate the license to ASF 2024-12-21 13:53:10 +08:00
.gitignore build: Remve the unnecessary .gitignore 2020-05-23 15:56:35 +01:00
CMakeLists.txt netutils: migrate the license to ASF 2024-12-21 13:53:10 +08:00
Make.defs netutils: migrate the license to ASF 2024-12-21 13:53:10 +08:00
Makefile netutils: migrate the license to ASF 2024-12-21 13:53:10 +08:00