anonftpd is a fast, read-only, anonymous FTP server.

Fast: anonftpd has built-in LIST and NLST commands, so it never runs any
outside programs. You don't have to bother setting up shared libraries
and etc/passwd and etc/group and bin/ls inside your anonymous FTP area.

Read-only: anonftpd never attempts to modify the filesystem; its only
open() is O_RDONLY. So you don't have to worry about file permissions
inside your FTP area. anonftpd dodges all the pitfalls mentioned in
http://iss.net/iss/anonftp.html.

Anonymous: anonftpd is dedicated to supplying files to the public. It
doesn't let users log in. This means that intruders can't check your
usernames and passwords. anonftpd chroot()s to the anonymous FTP
area and sheds all privileges before accepting any commands.

FTP server: With two exceptions, anonftpd complies with the FTP
standards, RFC 959 and RFC 1123. The exceptions are for security:
first, to prevent connection laundering, anonftpd refuses unusual PORT
commands; second, to prevent rsh subversion and avoid bouncing back and
forth to root, anonftpd refuses to use port 20 for outgoing connections.

anonftpd goes beyond the standards in two ways. First, it can supply
files to Netscape. (Netscape was unable to talk to old versions of
anonftpd, because Netscape disobeys RFC 1123, section 4.1.2.6.) Second,
it supports EPLF, including options "i", "s", and "m".
