I have the following code to get a list of all adapters on my MacBook:
if getifaddrs(&addresses) == 0
{
let buffer = UnsafeBufferPointer(start: addresses, count: 16)
for address in buffer
{
let rawData = address.ifa_data
let name = address.ifa_name
let socket: sockaddr = address.ifa_addr.pointee
if rawData != nil && name != nil && socket.sa_family == UInt8(AF_LINK)
{
let adapterName = String(utf8String: UnsafePointer<CChar>(name!))
let adapter = Adapter(name: adapterName!)
adapters.append(adapter)
}
}
}
The code works great and (almost) all adapters are returned. If a Thunderbolt to Ethernet adapter is used, this network is not returned.
How can I get this adapter?