
In message FE6E7FFD-AF24-456E-A9D3-56A616093032@savantav.com you wrote:
Added CONFIG_BOOTP_SERVER to allow the tftp server to be different from the bootp server
Sorry for the late review...
Which problem is this patch supposed to fix? Doesn't the "nextserver" option in your DHCP server config file do exactly what you want?
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 I understand corrrectly, this patch changes the behaviour for all boards that currently don't define CONFIG_BOOTP_SERVER.
Is this intentional?
Best regards,
Wolfgang Denk