utftpd: a TFTP server
utftpd is a TFTP server with fine-grained access control,
support for
blksize (RFC 2348) and timeout options, and support
for revision control.
You can assign three different kinds of rights to every client:
- read
- the right to read a file.
- write
- the right to write to an already existing file.
- create
- the right to create a file.
Clients may be specified by a single ip address or a range of addresses
or by ip address and mask.
Revision control is optional and will never be turned on automatically for
any file (you have to do the initial checkin into by hand).
utftpd is free software
and released under the
GNU General Public Licence.
The package uses GNU autoconf and is aimed to be portable, though i
suspect that there will be some work needed to really get it to compile
cleanly on different systems (it's still an early version).
Mailing list:
To subscribe send a mail to
uwe-utftpd-subscribe@bulkmail.ohse.de.
Downloading utftpd
The lastest release is
utftpd-0.2.4.tar.gz.
On Solaris and possibly other operating systems you will have to change
this line in utftpd.c:
-
pid_t pi=waitpid(WAIT_ANY,0,WNOHANG);
to-
pid_t pi=waitpid(0,0,WNOHANG);
to get this through the compiler. Sorry for this.
Recent changes
- 0.2.2 - 22 August 1999
- the server now uses adaptive timeout.
- the server now unlinks the received file if it was not received
completely.
- the server now includes a workaround for the
"Sorcerer's Apprentice Syndrome" (as it's called by RFC 1123)
- Version 0.2.1 - May 1999, Uwe Ohse
- changed configuration file format to be more nice
and more poreful.
- Version 0.2.0 - May 1999, Uwe Ohse
- major internal cleanup
- rewrote version control interface
- can now do access control like the UNIX tftpd, and
may now be used as a replacement for the UNIX tftpd,
without any changes to existing configurations.
- Version 0.1.5 - April 1999, Uwe Ohse
- added RCS support
- improved SCCS support
- improved portability
- Version 0.1.4 - April 1999, Uwe Ohse
- added testsuite, blksize and timeout options, client.
Future developement
- enhance portability.
- add additional TFTP options, such a tsize.
- change to a multi-threaded design (or a multi-forked design).
- after that implement TFTP over multicast.
- shall replace GNU inetutils tftpd some day.
Nothing of this is likely to happen anytime soon.