public static void WriteInterfaceLine([Claims] InterfaceInfo ifInfo, string !ifName) { bool found = false; delete ifInfo.driverName; delete ifInfo.driverVersion; InterfaceIPInfo[] in ExHeap ipConfigs = ifInfo.ipConfigs; if (ipConfigs != null) { for (int i = 0; i < ipConfigs.Length; i++) { InterfaceIPInfo ipc = ipConfigs[i]; IPv4 ipv4 = new IPv4(ipc.address); Console.WriteLine("TESTUTIL:IPAddress: {0,-14}", ipv4); DebugStub.WriteLine("TESTUTIL:IPAddress:{0}:", __arglist(ipv4.ToString())); found |= true; } delete ipConfigs; } if (found == false) { DebugStub.WriteLine("TESTUTIL:IPAddress: Not available."); } }
public InterfaceInfo GetInterfaceState(String ifName) { IAdapter intf = FindAdapter(ifName); if (intf == null) { throw new Exception("GetInterfaceState"); } else { HostConfiguration h = IP.GetHostConfiguration(); InterfaceInfo retval = new InterfaceInfo(); // Copy the global interface info retval.driverName = intf.DriverName; retval.driverVersion = intf.DriverVersion; retval.hardwareAddress = intf.HardwareAddress; retval.linkSpeed = intf.LinkSpeed; // Copy all the IP config info ArrayList configs = h.Bindings.GetAdapterIPConfigurations(intf); InterfaceIPInfo[] ipConfigs = new InterfaceIPInfo[configs.Count]; int i = 0; foreach (InterfaceIPConfiguration ipc in configs) { ipConfigs[i] = new InterfaceIPInfo(); ipConfigs[i].address = (uint)ipc.Address; ipConfigs[i].netmask = (uint)ipc.NetMask; ipConfigs[i].gateway = (uint)ipc.Gateway; i++; } retval.ipConfigs = ipConfigs; return(retval); } }