>-----Original Message----- >From: Ramon Fried <rfried....@gmail.com> >Sent: Saturday, February 18, 2023 12:10 PM >To: seanedm...@linux.microsoft.com >Cc: u-boot@lists.denx.de; joe.hershber...@ni.com; w...@denx.de; Sean >Edmond <seanedm...@microsoft.com> >Subject: [EXTERNAL] Re: [PATCH] net: ipv6: IPv6 environment variable cleanup > >On Thu, Feb 16, 2023 at 6:39 AM <seanedm...@linux.microsoft.com> wrote: >> >> From: Sean Edmond <seanedm...@microsoft.com> >> >> Fix "setenv gatewayip6". >> >> Synchronize IPv6 local variables with environment variables in >> netboot_update_env() >> >> Signed-off-by: Sean Edmond <seanedm...@microsoft.com> >> --- >> cmd/net.c | 23 ++++++++++++++++++++++- >> include/env_flags.h | 2 +- >> 2 files changed, 23 insertions(+), 2 deletions(-) >> >> diff --git a/cmd/net.c b/cmd/net.c >> index 88d53d14d5..0161c87529 100644 >> --- a/cmd/net.c >> +++ b/cmd/net.c >> @@ -208,7 +208,7 @@ U_BOOT_CMD( >> >> static void netboot_update_env(void) >> { >> - char tmp[22]; >> + char tmp[44]; >> >> if (net_gateway.s_addr) { >> ip_to_string(net_gateway, tmp); @@ -269,6 +269,27 @@ >> static void netboot_update_env(void) >> env_set("ntpserverip", tmp); >> } >> #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); >> + } >> + } >> } >> >> /** >> diff --git a/include/env_flags.h b/include/env_flags.h index >> 6bd574c2bd..7df40c59be 100644 >> --- a/include/env_flags.h >> +++ b/include/env_flags.h >> @@ -71,7 +71,7 @@ enum env_flags_varaccess { #define NET6_FLAGS \ >> "ip6addr:s," \ >> "serverip6:s," \ >> - "gatewayip6:s" >> + "gatewayip6:s," >Why is this needed ?
Without the comma, we see the following error when trying to set the gatewayip6 environment variable: => setenv gatewayip6 fe80::f0c7:7cff:fea9:c4ec ## Warning: Unknown environment variable access method 's' ## Error inserting "gatewayip6" variable, errno=3 >> #else >> #define NET6_FLAGS >> #endif >> -- >> 2.39.0 >>