Example #1
0
        internal static DHCPClient CreateFromMessage(DHCPMessage message)
        {
            DHCPClient result = new DHCPClient();

            result.m_HardwareAddress = message.ClientHardwareAddress;

            DHCPOptionHostName dhcpOptionHostName = (DHCPOptionHostName)message.GetOption(TDHCPOption.HostName);

            if (dhcpOptionHostName != null)
            {
                result.m_HostName = dhcpOptionHostName.HostName;
            }

            DHCPOptionClientIdentifier dhcpOptionClientIdentifier = (DHCPOptionClientIdentifier)message.GetOption(TDHCPOption.ClientIdentifier);

            if (dhcpOptionClientIdentifier != null)
            {
                result.m_Identifier = dhcpOptionClientIdentifier.Data;
            }
            else
            {
                result.m_Identifier = message.ClientHardwareAddress;
            }

            return(result);
        }
        public override IDHCPOption FromStream(Stream s)
        {
            DHCPOptionClientIdentifier result = new DHCPOptionClientIdentifier();

            m_HardwareType = (DHCPMessage.THardwareType)ParseHelper.ReadUInt8(s);
            result.m_Data  = new byte[s.Length - s.Position];
            s.Read(result.m_Data, 0, result.m_Data.Length);
            return(result);
        }