net: When checking prerequisites, consider boot_file_name
For net_boot_common, we allow the serverip to be specified as part of the boot file name. For net commands that require serverip, include that source as a valid specification of serverip. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Reviewed-by: Alexander Graf <agraf@suse.de>
This commit is contained in:
parent
faecf84ab1
commit
3a66fcb7c3
@ -839,6 +839,9 @@ ushort env_get_vlan(char *);
|
||||
/* copy a filename (allow for "..." notation, limit length) */
|
||||
void copy_filename(char *dst, const char *src, int size);
|
||||
|
||||
/* check if serverip is specified in filename from the command line */
|
||||
int is_serverip_in_cmd(void);
|
||||
|
||||
/* get a random source port */
|
||||
unsigned int random_port(void);
|
||||
|
||||
|
@ -1341,7 +1341,7 @@ static int net_check_prereq(enum proto_t protocol)
|
||||
/* Fall through */
|
||||
case TFTPGET:
|
||||
case TFTPPUT:
|
||||
if (net_server_ip.s_addr == 0) {
|
||||
if (net_server_ip.s_addr == 0 && !is_serverip_in_cmd()) {
|
||||
puts("*** ERROR: `serverip' not set\n");
|
||||
return 1;
|
||||
}
|
||||
@ -1512,6 +1512,11 @@ void copy_filename(char *dst, const char *src, int size)
|
||||
*dst = '\0';
|
||||
}
|
||||
|
||||
int is_serverip_in_cmd(void)
|
||||
{
|
||||
return !!strchr(net_boot_file_name, ':');
|
||||
}
|
||||
|
||||
#if defined(CONFIG_CMD_NFS) || \
|
||||
defined(CONFIG_CMD_SNTP) || \
|
||||
defined(CONFIG_CMD_DNS)
|
||||
|
Loading…
Reference in New Issue
Block a user