chucker / AltNetworkUtility

A clone of Apple's now-discontinued Network Utility
MIT License
3 stars 0 forks source link

Info tab #1

Closed chucker closed 3 years ago

chucker commented 3 years ago

Existing features:

New features:

(Screenshots courtesy of http://www.macosxtips.co.uk/index_files/how-to-use-network-utility.php, and as of macOS 10.6 Snow Leopard.)

network-utility-info

chucker commented 3 years ago

IP address: see https://github.com/chucker/AltNetworkUtility/tree/features/1-ipaddress

We get multiple addresses and want to present each of them, ideally each selectable. Somehow, that's quite a task in XamForms.

chucker commented 3 years ago

I suspect an endianness problem or other type/marshalling mistake with the network statistics. Also, we should probably decouple those from GetAvailableInterfaces() so we can keep updating them.

chucker commented 3 years ago

Need to actually show the status, preferably similarly to how SysPrefs does it.

chucker commented 3 years ago

Still unclear how to get vendor and model. IORegistry, I think — it has an IOModel property that seems to match what Network Utility outputs.

chucker commented 3 years ago

I think we need to:

  1. get all items in IOService:/ of type IOEthernetInterface. These have a property BSD Name that matches e.g. en0.
  2. get their parents
  3. get the properties IOModel and IOVendor (anything else we care about?)
chucker commented 3 years ago

https://stackoverflow.com/a/9141788/1600 looks close. IOServiceMatching(kIOEthernetInterfaceClass) seems to do step 1, and then there's IORegistryEntryGetParentEntry.