System.Net.NetworkInformation.UnixIPInterfaceProperties.ParseRouteInfo C# (CSharp) Метод

ParseRouteInfo() защищенный Метод

protected ParseRouteInfo ( string iface ) : void
iface string
Результат void
		void ParseRouteInfo (string iface)
		{
			try {
				gateways = new IPAddressCollection ();
				using (StreamReader reader = new StreamReader ("/proc/net/route")) {
					string str;
					string line;
					reader.ReadLine (); // Ignore first line
					while ((line = reader.ReadLine ()) != null) {
						line = line.Trim ();
						if (line.Length == 0)
							continue;

						string [] parts = line.Split ('\t');
						if (parts.Length < 3)
							continue;
						string gw_address = parts [2].Trim ();
						byte [] ipbytes = new byte [4];  
						if (gw_address.Length == 8 && iface.Equals (parts [0], StringComparison.OrdinalIgnoreCase)) {
							for (int i = 0; i < 4; i++) {
								if (!Byte.TryParse (gw_address.Substring (i * 2, 2), NumberStyles.HexNumber, null, out ipbytes [3 - i]))
									continue;
							}
							IPAddress ip = new IPAddress (ipbytes);
							if (!ip.Equals (IPAddress.Any))
								gateways.Add (ip);
						}
					}
				}
			} catch {
			}
		}