[U-Boot] [PATCH] net: bootp: as CONFIG_BOOTP_SERVERIP is defined, keep bootfile not changed

Josh Wu josh.wu at atmel.com
Thu Dec 4 03:38:15 CET 2014


Hi,

Any feedback for this patch?

Best Regards,
Josh Wu

On 11/18/2014 1:07 PM, Josh Wu wrote:
> Currenly when CONFIG_BOOTP_SERVERIP is defined, the SERVERIP is not changed
> when receive the BOOTP packet. But BOOTFILE is changed via BOOTP packet.
>
> As we will load the BOOTFILE from SERVERIP, if the BOOTFILE is modified
> by bootp packet but SERVERIP is not, that is not make sense.
>
> This patch make SERVERIP and BOOTFILE be consistent. If we define the
> CONFIG_BOOTP_SERVERIP, then SERVERIP and BOOTFILE will not changed by
> BOOTP packet. Only IP address is changed.
>
> Signed-off-by: Josh Wu <josh.wu at atmel.com>
> ---
>   net/bootp.c | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/net/bootp.c b/net/bootp.c
> index 189a003..479bb20 100644
> --- a/net/bootp.c
> +++ b/net/bootp.c
> @@ -104,8 +104,6 @@ static void BootpCopyNetParams(struct Bootp_t *bp)
>   	if (tmp_ip != 0)
>   		NetCopyIP(&NetServerIP, &bp->bp_siaddr);
>   	memcpy(NetServerEther, ((struct ethernet_hdr *)NetRxPacket)->et_src, 6);
> -#endif
> -	NetCopyIP(&NetOurIP, &bp->bp_yiaddr);
>   	if (strlen(bp->bp_file) > 0)
>   		copy_filename(BootFile, bp->bp_file, sizeof(BootFile));
>   
> @@ -117,6 +115,8 @@ static void BootpCopyNetParams(struct Bootp_t *bp)
>   	 */
>   	if (*BootFile)
>   		setenv("bootfile", BootFile);
> +#endif
> +	NetCopyIP(&NetOurIP, &bp->bp_yiaddr);
>   }
>   
>   static int truncate_sz(const char *name, int maxlen, int curlen)



More information about the U-Boot mailing list