&ipconfig I now have all of the information I need to gather for each adapter. It's taken several days and a lot of string parsing to get here, so I'm very pleased to have everything displaying properly.

Getting the IPv6 address in particular gave me some trouble. getifaddrs lists IPv6 addresses as separate interfaces, so I settled on going over the interface list a second time to find the IPv6 version of the interface, and adding that address to the adapter struct. There may be a better approach, but this works for now.

Windows does list adapters that don't have an IPv4 address, but in my first major departure from ipconfig's formatting, I've decided to omit these since I don't find that information useful.

The other departure from Windows' formatting is the DNS suffix. Getting this on Linux has likewise proven difficult. I've settled on parsing /etc/resolv.conf for now, but this is a global DNS suffix, and there may be more than one, hence the slight naming difference.