antares wrote:
> Standard TFTP client, command-line interface, when I tried to download
> file from server, got Access violation error:
>
>
> C>tftp.exe -i xxx.xxx.xxx.xx GET abcc.bin
>
> Transfering file abcc.bin from server in octet mode...
> Error occurred during the file transfer (Error code = 2):
> Access violation
> -------
> How to overcome the issue and download file?
First, study the protocol, and understand how it can fail.
For the protocol to work over the Internet, you'd have to
look at any NAT translation issues. The server side might
need port forwarding to port 69.
http://en.wikipedia.org/wiki/Trivial_File_Transfer_Protocol
A copy of Wireshark can be used to "watch" the transfer, see
if the protocol is working as you expect or not. The timing
of when packets are sent (i.e. seeing a timeout interval
between attempts), can also help provide you with evidence
of where a failure might be.
http://en.wikipedia.org/wiki/Wireshark
Looking at the Wikipedia article, the TFTP program is
too simple minded to be used to debug where the problem
may be.
http://www.tftp-server.com/tftp_server_configuration.html
"It makes hard to specify firewall rules permitting
traffic to TFTP Server."
http://tools.ietf.org/html/rfc1350
"Most errors cause termination of the connection. An error is
signalled by sending an error packet. This packet is not
acknowledged, and not retransmitted (i.e., a TFTP server or user may
terminate after sending an error message), so the other end of the
connection may not get it. Therefore timeouts are used to detect
such a termination when the error packet has been lost.
Errors are caused by three types of events: not being able to
satisfy the request (e.g., file not found, access violation, or no such user),
receiving a packet which cannot be explained by a delay or
duplication in the network (e.g., an incorrectly formed packet), and
losing access to a necessary resource (e.g., disk full or access
denied during a transfer).
TFTP recognizes only one error condition that does not cause
termination, the source port of a received packet being incorrect.
In this case, an error packet is sent to the originating host.
This protocol is very restrictive, in order to simplify
implementation. For example, the fixed length blocks make allocation
straight forward, and the lock step acknowledgement provides flow
control and eliminates the need to reorder incoming data packets."
And the information here, makes it look like you may be receiving
an explicit error packet from the server. You can look at that
packet with Wireshark.
http://www.networksorcery.com/enp/protocol/tftp.htm
"Error codes:
...
2 Access violation"
HTH,
Paul