You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
911 B
33 lines
911 B
#include <stdio.h> |
|
#include <uv.h> |
|
|
|
int main() { |
|
char buf[512]; |
|
uv_interface_address_t *info; |
|
int count, i; |
|
|
|
uv_interface_addresses(&info, &count); |
|
i = count; |
|
|
|
printf("Number of interfaces: %d\n", count); |
|
while (i--) { |
|
uv_interface_address_t interface = info[i]; |
|
|
|
printf("Name: %s\n", interface.name); |
|
printf("Internal? %s\n", interface.is_internal ? "Yes" : "No"); |
|
|
|
if (interface.address.address4.sin_family == AF_INET) { |
|
uv_ip4_name(&interface.address.address4, buf, sizeof(buf)); |
|
printf("IPv4 address: %s\n", buf); |
|
} |
|
else if (interface.address.address4.sin_family == AF_INET6) { |
|
uv_ip6_name(&interface.address.address6, buf, sizeof(buf)); |
|
printf("IPv6 address: %s\n", buf); |
|
} |
|
|
|
printf("\n"); |
|
} |
|
|
|
uv_free_interface_addresses(info, count); |
|
return 0; |
|
}
|
|
|