Update for TFTP using a fixed UDP port

Use the approved environment variable names. Added "tftpdstp" to
allow ports other than 69 per Tolunay Orkun's recommendation.
Patch by Jerry Van Baren, 12 Jan 2005
This commit is contained in:
Wolfgang Denk 2005-09-24 23:25:46 +02:00
parent ecb0ccd9c2
commit 28cb937584
3 changed files with 20 additions and 5 deletions

View file

@ -2,6 +2,11 @@
Changes for U-Boot 1.1.4:
======================================================================
* Update for TFTP using a fixed UDP port
Use the approved environment variable names. Added "tftpdstp" to
allow ports other than 69 per Tolunay Orkun's recommendation.
Patch by Jerry Van Baren, 12 Jan 2005
* Allow to force TFTP to use a fixed UDP port
(Add a configuration option CONFIG_TFTP_PORT and optional env
variable tftpport)

15
README
View file

@ -1490,12 +1490,16 @@ The following options need to be configured:
- TFTP Fixed UDP Port:
CONFIG_TFTP_PORT
If this is defined, the environment variable tftpport
If this is defined, the environment variable tftpsrcp
is used to supply the TFTP UDP source port value.
If tftpport isn't defined, the normal pseudo-random port
If tftpsrcp isn't defined, the normal pseudo-random port
number generator is used.
The purpose for this is to allow a TFTP server to
Also, the environment variable tftpdstp is used to supply
the TFTP UDP destination port value. If tftpdstp isn't
defined, the normal port 69 is used.
The purpose for tftpsrcp is to allow a TFTP server to
blindly start the TFTP transfer using the pre-configured
target IP address and UDP port. This has the effect of
"punching through" the (Windows XP) firewall, allowing
@ -2468,9 +2472,12 @@ Some configuration options can be set using Environment Variables:
Useful on scripts which control the retry operation
themselves.
tftpport - If this is set, the value is used for TFTP's
tftpsrcport - If this is set, the value is used for TFTP's
UDP source port.
tftpdstport - If this is set, the value is used for TFTP's UDP
destination port instead of the Well Know Port 69.
vlan - When set to a value < 4095 the traffic over
ethernet is encapsulated/received over 802.1q
VLAN tagged frames.

View file

@ -371,7 +371,10 @@ TftpStart (void)
/* Use a pseudo-random port unless a specific port is set */
TftpOurPort = 1024 + (get_timer(0) % 3072);
#ifdef CONFIG_TFTP_PORT
if ((ep = getenv("tftpport")) != NULL) {
if ((ep = getenv("tftpdstp")) != NULL) {
TftpServerPort = simple_strtol(ep, NULL, 10);
}
if ((ep = getenv("tftpsrcp")) != NULL) {
TftpOurPort= simple_strtol(ep, NULL, 10);
}
#endif