T a n e s h a   N e t w o r k s

Where does Gratissip Tftpd come from?

It is based on the fwtftpd work of Martin Kihlgren, which is GPL - and hence this is also GPL. Read more about what that means in the GplLicense. You can find Martin's work here: http://troja.ath.cx/~zond/fwtftpd/.

2006-xx-xx
Lately we got a TFTP-HTTPproxy Vfs contributed by Charles Duffy from http://www.isgenesis.com/
2007-xx-xx
Finally we changed the interfaces so its easier to integrate with your own projects.

Features

Basically it is a TFTP server, however with a few extensions for the Grandstream VoIP-phones.

  • Normal TFTP files serving from a tftproot, this means you can use it as any other normal TFTP server.
  • Serving Grandstream firmwares depending on user-choices, this means you can provision Grandstream phones with a specific firmware version automatically.
  • Serving Grandstream provisional configurations, this mean you can provision Grandstream phones with settings automatically.
  • Serving TFTP files hosted on a web-server (act as tftp-to-http proxy), this means you can serve files generated by a webserver over the TFTP protocol.

    Grandstream btw is a company which sells inexpencive VoIP-phones. This is a seperate project which they may or may not be aware of. They are selling their own provosional server as a seperate product. If you want to use a provisional server professionally for your business, you should consider to buy it from them. Check their website http://www.grandstream.com/.

Application overview

The application has been split into four different parts. Depending on your needs, you can mix those as you like:

  • tftpd-server - this is the core tftpd server.
  • tftpd-external-interface - this describes the interface that you need to implement if you want to provide your adapter for provisioning.
  • tftpd-jdbc-interface - this is an adapter which reads data from a database. Most likely this is enough for you.
  • tftpd-webapp - this is actually the webapp that runs at http://gratissip.dk/firmware/. You can use it directly in your own setup, or as an example for how to build integration with your own website.
                    ________________                             __________
                   |                |                           |          |
     --- tftp ---->|   tftpd        |--- external interface --->| some cfg |
     <-- port 69 --|   server       |                           | application
                   |________________|                           |__________|
                       (as root)                                (normal user)

Donations

This is FREE http://www.opensource.org software (as in freedom and as in beer). If you plan to use the tftpd server in your company or project then please consider to give a small (or large :-) ) donation to this project to ensure the continous development of the project.

The following people have contributed, a BIG THANKS from here:

  • Steven Carey (Personal)
  • Johathan Owens (Personal)