Commit 04405784 authored by K. Y. Srinivasan's avatar K. Y. Srinivasan Committed by Greg Kroah-Hartman

Tools: hv: Gather subnet information

Now, gather sub-net information for the specified interface.
Signed-off-by: default avatarK. Y. Srinivasan <kys@microsoft.com>
Reviewed-by: default avatarHaiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 0d5b6b19
...@@ -534,6 +534,7 @@ kvp_get_ip_address(int family, char *if_name, int op, ...@@ -534,6 +534,7 @@ kvp_get_ip_address(int family, char *if_name, int op,
struct ifaddrs *ifap; struct ifaddrs *ifap;
struct ifaddrs *curp; struct ifaddrs *curp;
int offset = 0; int offset = 0;
int sn_offset = 0;
const char *str; const char *str;
int error = 0; int error = 0;
char *buffer; char *buffer;
...@@ -594,12 +595,38 @@ kvp_get_ip_address(int family, char *if_name, int op, ...@@ -594,12 +595,38 @@ kvp_get_ip_address(int family, char *if_name, int op,
* Gather info other than the IP address. * Gather info other than the IP address.
* IP address info will be gathered later. * IP address info will be gathered later.
*/ */
if (curp->ifa_addr->sa_family == AF_INET) if (curp->ifa_addr->sa_family == AF_INET) {
ip_buffer->addr_family |= ADDR_FAMILY_IPV4; ip_buffer->addr_family |= ADDR_FAMILY_IPV4;
else /*
* Get subnet info.
*/
error = kvp_process_ip_address(
curp->ifa_netmask,
AF_INET,
(char *)
ip_buffer->sub_net,
length,
&sn_offset);
if (error)
goto gather_ipaddr;
} else {
ip_buffer->addr_family |= ADDR_FAMILY_IPV6; ip_buffer->addr_family |= ADDR_FAMILY_IPV6;
/*
* Get subnet info.
*/
error = kvp_process_ip_address(
curp->ifa_netmask,
AF_INET6,
(char *)
ip_buffer->sub_net,
length,
&sn_offset);
if (error)
goto gather_ipaddr;
}
} }
gather_ipaddr:
error = kvp_process_ip_address(curp->ifa_addr, error = kvp_process_ip_address(curp->ifa_addr,
curp->ifa_addr->sa_family, curp->ifa_addr->sa_family,
buffer, buffer,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment