extractSubnet method
Implementation
String extractSubnet(Pointer<IP_ADAPTER_ADDRESSES_LH> pIpAdapterAddress) {
var pAddr = pIpAdapterAddress.ref.FirstUnicastAddress;
while (pAddr.ref.Next != nullptr) {
pAddr = pAddr.ref.Next;
}
final prefixLength = pAddr.ref.OnLinkPrefixLength;
String subnetBin = '';
for (int i = 0; i < prefixLength; i++) {
subnetBin += '1';
}
for (int i = 0; i < 32 - prefixLength; i++) {
subnetBin += '0';
}
final String subnet =
'${int.parse(subnetBin.substring(0, 8), radix: 2)}.${int.parse(subnetBin.substring(8, 16), radix: 2)}.${int.parse(subnetBin.substring(16, 24), radix: 2)}.${int.parse(subnetBin.substring(24, 32), radix: 2)}';
return subnet;
}