In the case the host only injects an IPv6 address, the dhcp_enabled flag is
true (it's only for IPv4 according to Hyper-V host team), but we still need to
proceed to parse the IPv6 information.

Cc: Vitaly Kuznetsov <vkuzn...@redhat.com>
Cc: K. Y. Srinivasan <k...@microsoft.com>
Signed-off-by: Dexuan Cui <de...@microsoft.com>
---

v2: removed the distro-specific logic as Vitaly suggested.

 tools/hv/hv_kvp_daemon.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/tools/hv/hv_kvp_daemon.c b/tools/hv/hv_kvp_daemon.c
index 6a6432a..4b3ee35 100644
--- a/tools/hv/hv_kvp_daemon.c
+++ b/tools/hv/hv_kvp_daemon.c
@@ -1308,16 +1308,17 @@ static int kvp_set_ip_info(char *if_name, struct 
hv_kvp_ipaddr_value *new_val)
        if (error)
                goto setval_error;
 
+       /*
+        * The dhcp_enabled flag is only for IPv4. In the case the host only
+        * injects an IPv6 address, the flag is true, but we still need to
+        * proceed to parse and pass the IPv6 information to the
+        * disto-specific script hv_set_ifconfig.
+        */
        if (new_val->dhcp_enabled) {
                error = kvp_write_file(file, "BOOTPROTO", "", "dhcp");
                if (error)
                        goto setval_error;
 
-               /*
-                * We are done!.
-                */
-               goto setval_done;
-
        } else {
                error = kvp_write_file(file, "BOOTPROTO", "", "none");
                if (error)
@@ -1345,7 +1346,6 @@ static int kvp_set_ip_info(char *if_name, struct 
hv_kvp_ipaddr_value *new_val)
        if (error)
                goto setval_error;
 
-setval_done:
        fclose(file);
 
        /*
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to