[U-Boot-Users] [PATCH] New CONFIG_BOOTP_SERVER option

Wilson Callan wcallan at savantav.com
Fri Jul 27 16:25:28 CEST 2007


Added CONFIG_BOOTP_SERVER to allow the tftp server to be different  
from the bootp server

Signed-off-by: Wilson Callan <wcallan at savantav.com>

diff --git a/include/cmd_confdefs.h b/include/cmd_confdefs.h
index b3ccdce..581dbf7 100644
--- a/include/cmd_confdefs.h
+++ b/include/cmd_confdefs.h
@@ -169,6 +169,7 @@
#define CONFIG_BOOTP_SEND_HOSTNAME	0x00000100
#define CONFIG_BOOTP_NTPSERVER		0x00000200
#define CONFIG_BOOTP_TIMEOFFSET		0x00000400
+#define CONFIG_BOOTP_SERVER		0x00000800
#define CONFIG_BOOTP_VENDOREX		0x80000000
@@ -178,7 +179,8 @@
#define CONFIG_BOOTP_DEFAULT		(CONFIG_BOOTP_SUBNETMASK | \
					CONFIG_BOOTP_GATEWAY	 | \
					CONFIG_BOOTP_HOSTNAME	 | \
-					CONFIG_BOOTP_BOOTPATH)
+					CONFIG_BOOTP_BOOTPATH	 | \
+					CONFIG_BOOTP_SERVER)
#ifndef CONFIG_BOOTP_MASK
#define CONFIG_BOOTP_MASK		CONFIG_BOOTP_DEFAULT
diff --git a/net/bootp.c b/net/bootp.c
index 1de9a8f..2c05f2e 100644
--- a/net/bootp.c
+++ b/net/bootp.c
@@ -120,10 +120,12 @@ static void BootpCopyNetParams(Bootp_t *bp)
	IPaddr_t tmp_ip;
	NetCopyIP(&NetOurIP, &bp->bp_yiaddr);
+#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_SERVER)
	NetCopyIP(&tmp_ip, &bp->bp_siaddr);
	if (tmp_ip != 0)
		NetCopyIP(&NetServerIP, &bp->bp_siaddr);
	memcpy (NetServerEther, ((Ethernet_t *)NetRxPkt)->et_src, 6);
+#endif
	if (strlen(bp->bp_file) > 0)
		copy_filename (BootFile, bp->bp_file, sizeof(BootFile));







More information about the U-Boot mailing list