21d03121d3
userglob [allow|deny] to userglob[@host] [allow|deny [classname]] where class is a userdefined classname. - if host is given it may either be a CIDR address (e.g, `1.2.3.0/24') or a hostglob (e.g, `*.foo.com'), and the remote host is matched against that. - if classname is given, use that to match entries in ftpd.conf (defaults to `guest' for `anonymous'/`ftp' logins, `chroot' for users found in /etc/ftpchroot, and `real' for everyone else. * implement new /etc/ftpd.conf directives: classtype classname type set type of classname to GUEST, CHROOT, or REAL motd classname file file to use instead of /etc/motd rateget classname rate set rateget throttle to rate rateput classname rate set rateput throttle to rate upload classname allow/deny uploads (STOU, STOR, APPE). if denied, also acts as `modify deny'. * implement new `SITE' commands: RATEGET as per /etc/ftpd.conf rateget, but cannot exceed that RATEPUT as per /etc/ftpd.conf rateput, but cannot exceed that * implement format_file(), which outputs a file to the user, parsing % escapes. use to print /etc/ftpwelcome, /etc/motd, and the `display' file. * implement strsuftoi() (from ftp(1)), which parses a number and optional suffix (for use with rateget, etc) * don't bother seteuid(0) ; bind(...) ; seteuid(pw->pw_uid), since we don't need reserved ports (at wasn't getting them anyway). * update & reorder copyrights * use strlcpy() as appropriate |
||
---|---|---|
.. | ||
atrun | ||
comsat | ||
cron | ||
fingerd | ||
ftpd | ||
getNAME | ||
getty | ||
identd | ||
ld.aout_so | ||
ld.elf_so | ||
lfs_cleanerd | ||
mail.local | ||
makekey | ||
makewhatis | ||
rexecd | ||
rlogind | ||
rmail | ||
rpc.rquotad | ||
rpc.rstatd | ||
rpc.rusersd | ||
rpc.rwalld | ||
rpc.sprayd | ||
rshd | ||
talkd | ||
telnetd | ||
tftpd | ||
uucpd | ||
Makefile | ||
Makefile.inc |