nuttx/Documentation/applications/netutils/ftpd
Swatantra Yadav a4b6b8b8bf Documentation/netutils: add comprehensive guide for ftpd
Provide a complete documentation guide for the ftpd (FTP server) network
utility in Documentation/applications/netutils/ftpd/index.rst, replacing
the previous 6-line placeholder stub.

Includes:
- Protocol architecture overview (control/data connection separation, multi-session worker pthreads, VFS mapping)
- Security considerations regarding unencrypted plaintext FTP credentials, mandatory credential hardening, home directory isolation, and encrypted password authentication
- Comprehensive supported RFC 959 / RFC 2428 / RFC 3659 FTP commands reference table
- Configuration options table and networking prerequisites (CONFIG_NETUTILS_FTPD, worker stack size, buffer sizes)
- NSH terminal usage (ftpd -4 / -6, ftpd_stop) with address-family flag requirements and configured account placeholders
- External client connection walkthroughs (FTP CLI, cURL) using configured account and anonymous workflows
- Public C API reference for types, account flags, and lifecycle functions (ftpd_open, ftpd_adduser, ftpd_session, ftpd_close)
- Complete, runnable C application example demonstrating multi-user server setup, signal-driven termination (SIGINT/SIGTERM) with atomic sig_atomic_t state, POSIX kill stop routine, and credential placeholders
- Embedded design and resource tuning guidelines (stack sizing, flash/SD card I/O buffering, and NAT passive mode)

Addresses #11081

Assisted-by: Google Gemini
Signed-off-by: Swatantra Yadav <maverickswatantra@gmail.com>
2026-10-09 12:08:21 +08:00
..
index.rst