cosmopolitan/libc/nt/iphlpapi
fabriziobertocci fd0eefce17
Add ioctl(SIOCGIFxxx) support (#197)
- SIOCGIFCONFIG: reads and enumerate all the network interfaces
- SIOCGIFADDR: reads network address for a given interface
- SIOCGIFFLAGS: reads network flags for a given interface
- SIOCGIFNETMASK: reads network netmask for a given interface
- SIOCGIFBRDADDR: reads network broadcast address for a given interface
- SIOCGIFDSTADDR: reads peer destination address for a given
  interface (not supported for Windows)

This change defines Linux ABI structs for the above interfaces and adds
polyfills to ensure they behave consistently on XNU and Windows.
2021-06-24 10:53:27 -07:00
..
AddIPAddress.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
AllocateAndGetTcpExTableFromStack.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
AllocateAndGetUdpExTableFromStack.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
CancelIPChangeNotify.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
CaptureInterfaceHardwareCrossTimestamp.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
CreateIpForwardEntry.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
CreateIpNetEntry.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
CreatePersistentTcpPortReservation.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
CreatePersistentUdpPortReservation.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
CreateProxyArpEntry.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
DeleteIPAddress.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
DeleteIpForwardEntry.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
DeleteIpNetEntry.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
DeletePersistentTcpPortReservation.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
DeletePersistentUdpPortReservation.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
DeleteProxyArpEntry.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
DisableMediaSense.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
EnableRouter.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
FlushIpNetTable.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetAdapterIndex.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetAdapterOrderMap.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetAdaptersAddresses.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetAdaptersInfo.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetBestInterface.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetBestInterfaceEx.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetBestRoute.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetExtendedTcpTable.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetExtendedUdpTable.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetFriendlyIfIndex.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetIcmpStatistics.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetIcmpStatisticsEx.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetIfEntry.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetIfTable.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetInterfaceActiveTimestampCapabilities.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetInterfaceInfo.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetInterfaceSupportedTimestampCapabilities.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetIpAddrTable.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetIpErrorString.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetIpForwardTable.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetIpNetTable.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetIpStatistics.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetIpStatisticsEx.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetNetworkParams.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetNumberOfInterfaces.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetOwnerModuleFromTcp6Entry.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetOwnerModuleFromTcpEntry.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetOwnerModuleFromUdp6Entry.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetOwnerModuleFromUdpEntry.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetPerAdapterInfo.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetPerTcp6ConnectionEStats.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetPerTcpConnectionEStats.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetRTTAndHopCount.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetTcp6Table.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetTcp6Table2.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetTcpStatistics.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetTcpStatisticsEx.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetTcpStatisticsEx2.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetTcpTable.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetTcpTable2.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetUdp6Table.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetUdpStatistics.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetUdpStatisticsEx.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetUdpStatisticsEx2.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetUdpTable.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
GetUniDirectionalAdapterInfo.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
IpReleaseAddress.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
IpRenewAddress.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
LookupPersistentTcpPortReservation.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
LookupPersistentUdpPortReservation.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
NhpAllocateAndGetInterfaceInfoFromStack.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
NotifyAddrChange.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
NotifyRouteChange.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
ParseNetworkString.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
RegisterInterfaceTimestampConfigChange.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
ResolveNeighbor.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
RestoreMediaSense.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
SendARP.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
SetIfEntry.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
SetIpForwardEntry.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
SetIpNetEntry.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
SetIpStatistics.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
SetIpStatisticsEx.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
SetIpTTL.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
SetPerTcp6ConnectionEStats.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
SetPerTcpConnectionEStats.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
SetTcpEntry.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
UnenableRouter.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00
UnregisterInterfaceTimestampConfigChange.s Add ioctl(SIOCGIFxxx) support (#197) 2021-06-24 10:53:27 -07:00