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

What is Gratissip Tftpd?

It is a Java implementation of a TFTP server, which has extra features for handling Grandstream phones.

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/ .

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.

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 - an example of a web-application integration with the server. 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)

Need help?

You can contact http://kokila.it/ for professional help with setting up, using, and further development on the server.

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)