This TFTP firmware server wonderful used in embedded firmware development.
When you have many firmware snapshots for complex testing (regression, functional, etc).
You don't operate file names or directories of firmware, no, now only its md5 sums.
- get file by md5 sum in *.md5 files
- one root server directory for server upload (and download)
- can set many serach directory for server download
- using Firebird SQL server as main firmware storage
- Ubuntu 18.04 LTE (newer not tested)
Other GNU Linux distros not tested, sorry
- Clang or GCC as last stable version (using C++17)
For install clang:
sudo apt-get update sudo apt-get install llvm clang clang-tools
- OpenSSL library
sudo apt-get install libssl-dev
- Get sources
Get stable version
mkdir server-fw git clone https://github.com/shvit/server-fw.git -b master server-fw
Get unstable develop version, but with latest futures (see at HISTORY file)
mkdir server-fw git clone https://github.com/shvit/server-fw.git -b develop server-fw
- Make binary file (you can skip this and go to 3)
cd server-fw make release
Type "bin/server-fw -h" for server settings in help information
- Disable any listening 69 port other executables
sudo netstat -lup|grep "69\|tftp"
- Install firmware tftp server
make installBy default, make root server directory /mnt/tftp and one search directory /mnt/backup
mkdir -p /mnt/tftp mkdir -p /mnt/backup
- Copy firmware files to directory /mnt/tftp or /mnt/backup and make *.md5 files
File in search directory /mnt/backup can place in separate nested directory or with unique file names
For each file in search directory make *.md5 file:
md5sum file > file.md5
Profit!
For uninstall server-fw
make uninstall
GNU general public license version 3.
See LICENSE file in root directory.
Vitaliy Shirinkin, Russia, 2019-2021
e-mail: vitaliy.shirinkin@gmail.com
See HISTORY file in root directory.