8000 GitHub - ensc/r-tftpd: TFTP server with RFC 7440 "windowsize" support (mirror of https://gitlab-ext.sigma-chemnitz.de/ensc/r-tftpd)
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

ensc/r-tftpd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

About

r-tftpd is a tftp server with RFC 7440 "windowsize" support and it can relay tftp requests to http servers.

It allows RRQ (read) requests; WRQ support is incomplete and exists only for testing purposes.

Implemented standards

Usage

Usage: r-tftpd [OPTIONS]

Options:
  -s, --systemd                use systemd fd propagation
  -p, --port <PORT>            port to listen on [default: 69]
  -l, --listen <IP>            ip address to listen on [default: ::]
  -m, --max-connections <NUM>  maximum number of connections [default: 64]
  -t, --timeout <TIMEOUT>      timeout in seconds during tftp transfers [default: 3]
  -f, --fallback <URI>         fallback uri
  -L, --log-format <FMT>       log format [default: default] [possible values: default, compact, full, json]
  -C, --cache-dir <DIR>        directory used for cache files
      --no-rfc2347             disable RFC 2347 (OACK) support; only useful for testing some clients
      --wrq-devnull            accept WRQ but throw it away; only useful for testing some clients
      --disable-proxy          disable proxy support
  -h, --help                   Print help information
  -V, --version                Print version information

build

make
cargo build

or

cargo install r-tftpd

see r-tftp.spec for ways how to customize it by using makefile variables.

standalone

cd /var/lib/tftpboot && r-tftpd --port 1234

Listening on privileged ports (e.g. the standard 69 one) requires the CAP_NET_BIND_SERVICE capability (see man 7 capabilities).

systemd socket activation

see contrib/

Proxy mode

"r-tftpd" supports relaying of tftp requests to other servers. It allows pseudo virtual hosting by creating (dead) symlinks pointing to an url.

supported uris