tftp transaction in UEFI shell states "too few arguments"
Linux - NetworkingThis forum is for any issue related to networks or networking.
Routing, network cards, OSI, etc. Anything is fair game.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
tftp transaction in UEFI shell states "too few arguments"
Hello, I am an ultra-beginner to UEFI world.
I was trying to setup a way to transfer the files from a server (running Linux) to a client setup (running UEFI shell).
I was able to ping server's IP address from the client setup and vice-versa.
I installed tftpserver on server.
For some reason, this error does not go away.
I tried other options mentioned in `tftp -?` but in vain.
Any help to break-through is highly appreciated. Thank you!
There are different TFTP clients, but the one I use requires three parameters.
The form is
Code:
tftp server command object
where the server is the IP address of the host, command is usually "get" or "put", and the object is a file name. Another command is "status", which might be of some use to you.
Generally it is a good idea to look these things up BEFORE you use the application. Saves time in the long run.
There are different TFTP clients, but the one I use requires three parameters.
The form is
Code:
tftp server command object
where the server is the IP address of the host, command is usually "get" or "put", and the object is a file name. Another command is "status", which might be of some use to you.
Generally it is a good idea to look these things up BEFORE you use the application. Saves time in the long run.
Thank you wpeckham.
I did look into the help of `tftp` binary (there is no status command in this version).
Code:
FS0:\network\> tftp 10.7.71.53 get abc.txt
ASSERT [tftp] /u/aydas/last/edk2/MdeModulePkg/Library/BaseSortLib/BaseSortLib.c(97): ((BOOLEAN)(0==1))
ASSERT [tftp] /u/aydas/last/edk2/MdeModulePkg/Library/BaseSortLib/BaseSortLib.c(97): ((BOOLEAN)(0==1))
ASSERT [tftp] /u/aydas/last/edk2/MdeModulePkg/Library/BaseSortLib/BaseSortLib.c(97): ((BOOLEAN)(0==1))
ASSERT [tftp] /u/aydas/last/edk2/MdeModulePkg/Library/BaseSortLib/BaseSortLib.c(97): ((BOOLEAN)(0==1))
ASSERT [tftp] /u/aydas/last/edk2/MdeModulePkg/Library/BaseSortLib/BaseSortLib.c(97): ((BOOLEAN)(0==1))
tftp: Too few arguments
FS0:\network\> ping 10.7.71.53
Ping 10.7.71.53 16 data bytes.
16 bytes from 10.7.71.53 : icmp_seq=1 ttl=0 time=243~252ms
16 bytes from 10.7.71.53 : icmp_seq=2 ttl=0 time=243~252ms
16 bytes from 10.7.71.53 : icmp_seq=3 ttl=0 time=243~252ms
16 bytes from 10.7.71.53 : icmp_seq=4 ttl=0 time=243~252ms
4 packets transmitted, 4 received, 0% packet loss, time 972ms
FS0:\network\>
And the help of `tftp -?` seems pretty straightforward.
Code:
FS0:\network\> tftp -?
Download a file from TFTP server.
TFTP [-i interface] [-l <port>] [-r <port>] [-c <retry count>] [-t <timeout>]
[-s <block size>] [-w <window size>] host remotefilepath [localfilepath]
-i interface - Specifies an adapter name, i.e., eth0.
-l port - Specifies the local port number. Default value is 0
and the port number is automatically assigned.
-r port - Specifies the remote port number. Default value is 69.
-c <retry count> - The number of times to transmit request packets and
wait for a response. The default value is 6. Set to zero
also means to use the default value.
-t <timeout> - The number of seconds to wait for a response after
sending a request packet. Default value is 4s.
-s <block size> - Specifies the TFTP blksize option as defined in RFC 2348.
Valid range is between 8 and 65464, default value is 512.
-w <window size> - Specifies the TFTP windowsize option as defined in RFC 7440.
Valid range is between 1 and 64, default value is 1.
host - Specify TFTP Server IPv4 address.
remotefilepath - TFTP server file path to download the file.
localfilepath - Local destination file path.
NOTES:
FS0:\network\> ommand allows to get the file specified by its 'remotefilepath'
path from the TFTP server specified by its 'host' IPv4 address. If the
optional 'localfilepath' parameter is provided, the downloaded file is
stored locally using the provided file path. If the local file path is
not specified, the file is stored in the current directory using the file
server's name.
2. Before using the TFTP command, the network interface intended to be
used to retrieve the file must be configured. This configuration may be
done by means of the 'ifconfig' command.
3. If a network interface is defined with the '-i' option then only this
interface will be used to retrieve the remote file. Otherwise, all network
interfaces are tried in the order they have been discovered during the
DXE phase.
EXAMPLES:
* To get the file "dir1/file1.dat" from the TFTP server 192.168.1.1 and
store it as file2.dat in the current directory :
fs0:\> tftp 192.168.1.1 dir1/file1.dat file2.dat
Like I said, I tried all the other options (to specify the interface using `-i` etc.).
Those returned the same error.
I believe `tftp` binary in UEFI gives wrong error for other issue - which I am not able to figure out.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.