internal byte[] ToArray() { var ret = new byte[27]; IP.GetAddressBytes().CopyTo(ret, 0); SubnetMask.GetAddressBytes().CopyTo(ret, 4); MacAddress.GetAddressBytes().CopyTo(ret, 8); DefaultGateway.GetAddressBytes().CopyTo(ret, 14); Server.GetAddressBytes().CopyTo(ret, 18); ret[22] = FarLimit; Bytes.Write(2, ComPort).CopyTo(ret, 23); ret[25] = (byte)TcpMode; ret[26] = (byte)(DhcpEnabled ? 1 : 0); return(ret); }
public int Serialize(System.IO.Stream buffer) { int ret = 0; byte[] tmp; tmp = Ip.GetAddressBytes(); buffer.Write(tmp, 0, tmp.Length); ret += tmp.Length; tmp = SubnetMask.GetAddressBytes(); buffer.Write(tmp, 0, tmp.Length); ret += tmp.Length; tmp = Gateway.GetAddressBytes(); buffer.Write(tmp, 0, tmp.Length); ret += tmp.Length; return(ret); }
public int GetMaskSize() { int output = 0; var bytes = SubnetMask.GetAddressBytes(); foreach (var b in bytes) { foreach (char c in Convert.ToString(b, 2).PadLeft(8, '0').ToCharArray()) { if (c.Equals('1')) { output++; } } } return(output); }