diff third_party/libuv/docs/code/interfaces/main.c @ 160:948de3f54cea

[ThirdParty] Added libuv
author June Park <parkjune1995@gmail.com>
date Wed, 14 Jan 2026 19:39:52 -0800
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/third_party/libuv/docs/code/interfaces/main.c	Wed Jan 14 19:39:52 2026 -0800
@@ -0,0 +1,33 @@
+#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_a = info[i];
+
+        printf("Name: %s\n", interface_a.name);
+        printf("Internal? %s\n", interface_a.is_internal ? "Yes" : "No");
+        
+        if (interface_a.address.address4.sin_family == AF_INET) {
+            uv_ip4_name(&interface_a.address.address4, buf, sizeof(buf));
+            printf("IPv4 address: %s\n", buf);
+        }
+        else if (interface_a.address.address4.sin_family == AF_INET6) {
+            uv_ip6_name(&interface_a.address.address6, buf, sizeof(buf));
+            printf("IPv6 address: %s\n", buf);
+        }
+
+        printf("\n");
+    }
+
+    uv_free_interface_addresses(info, count);
+    return 0;
+}