net: ipv6: IPv6 environment variable cleanup
Fix "setenv gatewayip6". Synchronize IPv6 local variables with environment variables in netboot_update_env() Signed-off-by: Sean Edmond <seanedmond@microsoft.com>
This commit is contained in:
parent
8491a7e4ed
commit
5e541c48a7
2 changed files with 23 additions and 2 deletions
23
cmd/net.c
23
cmd/net.c
|
@ -186,7 +186,7 @@ U_BOOT_CMD(
|
||||||
|
|
||||||
static void netboot_update_env(void)
|
static void netboot_update_env(void)
|
||||||
{
|
{
|
||||||
char tmp[22];
|
char tmp[44];
|
||||||
|
|
||||||
if (net_gateway.s_addr) {
|
if (net_gateway.s_addr) {
|
||||||
ip_to_string(net_gateway, tmp);
|
ip_to_string(net_gateway, tmp);
|
||||||
|
@ -247,6 +247,27 @@ static void netboot_update_env(void)
|
||||||
env_set("ntpserverip", tmp);
|
env_set("ntpserverip", tmp);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
if (IS_ENABLED(CONFIG_IPV6)) {
|
||||||
|
if (!ip6_is_unspecified_addr(&net_ip6) ||
|
||||||
|
net_prefix_length != 0) {
|
||||||
|
sprintf(tmp, "%pI6c", &net_ip6);
|
||||||
|
if (net_prefix_length != 0)
|
||||||
|
sprintf(tmp, "%s/%d", tmp, net_prefix_length);
|
||||||
|
|
||||||
|
env_set("ip6addr", tmp);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!ip6_is_unspecified_addr(&net_server_ip6)) {
|
||||||
|
sprintf(tmp, "%pI6c", &net_server_ip6);
|
||||||
|
env_set("serverip6", tmp);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!ip6_is_unspecified_addr(&net_gateway6)) {
|
||||||
|
sprintf(tmp, "%pI6c", &net_gateway6);
|
||||||
|
env_set("gatewayip6", tmp);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -71,7 +71,7 @@ enum env_flags_varaccess {
|
||||||
#define NET6_FLAGS \
|
#define NET6_FLAGS \
|
||||||
"ip6addr:s," \
|
"ip6addr:s," \
|
||||||
"serverip6:s," \
|
"serverip6:s," \
|
||||||
"gatewayip6:s"
|
"gatewayip6:s,"
|
||||||
#else
|
#else
|
||||||
#define NET6_FLAGS
|
#define NET6_FLAGS
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in a new issue