Supporting broken TFTP clients with tftpd-hpa

tftpd-hpa can easily be configured to support broken TFTP clients by using a remap file. You can verify that your TFTP server supports a remap file by typing

  /usr/sbin/in.tftpd -V

You should see output such as

  tftp-hpa 0.40, with remap, with tcpwrappers

If the “with remap” text is not present, then you need to rebuild your TFTP server with remapping support before proceeding.

Create the file /etc/ containing

  # Convert backslashes to slashes
  rg \\ /

Edit /etc/xinetd.d/tftp and append

  -m /etc/

to the server_args line. Your modified /etc/xinetd.d/tftp file should look something like

  service tftp
      disable                 = no
      socket_type             = dgram
      protocol                = udp
      wait                    = yes
      user                    = root
      server                  = /usr/sbin/in.tftpd
      server_args             = -s /var/lib/tftpboot -m /etc/

Kill off any existing tftpd processes and restart xinetd:

  killall tftpd
  killall in.tftpd
  /etc/init.d/xinetd restart

The TFTP server should now accept paths using either the usual forward slash (/) or a backslash (\) as a path separator.

A smile

appnote/tftpd-hpa.txt · Last modified: 2015/11/05 12:44 by mcb30
Recent changes RSS feed CC Attribution-Share Alike 4.0 International Driven by DokuWiki
All uses of this content must include an attribution to the iPXE project and the URL
References to "iPXE" may not be altered or removed.