public static @string String(this HardwareAddr a) { if (len(a) == 0L) { return(""); } var buf = make_slice <byte>(0L, len(a) * 3L - 1L); foreach (var(i, b) in a) { if (i > 0L) { buf = append(buf, ':'); } buf = append(buf, hexDigit[b >> (int)(4L)]); buf = append(buf, hexDigit[b & 0xFUL]); } return(string(buf)); }
public Interface(long Index = default, long MTU = default, @string Name = default, HardwareAddr HardwareAddr = default, Flags Flags = default) { this.Index = Index; this.MTU = MTU; this.Name = Name; this.HardwareAddr = HardwareAddr; this.Flags = Flags; }
// ParseMAC parses s as an IEEE 802 MAC-48, EUI-48, EUI-64, or a 20-octet // IP over InfiniBand link-layer address using one of the following formats: // 00:00:5e:00:53:01 // 02:00:5e:10:00:00:00:01 // 00:00:00:00:fe:80:00:00:00:00:00:00:02:00:5e:10:00:00:00:01 // 00-00-5e-00-53-01 // 02-00-5e-10-00-00-00-01 // 00-00-00-00-fe-80-00-00-00-00-00-00-02-00-5e-10-00-00-00-01 // 0000.5e00.5301 // 0200.5e10.0000.0001 // 0000.0000.fe80.0000.0000.0000.0200.5e10.0000.0001 public static (HardwareAddr, error) ParseMAC(@string s) { HardwareAddr hw = default; error err = default !;