Beispiel #1
0
        public DhcpServer(ILogger logger, ILeaseManager leaseManager, IDhcpConfiguration configuration,
                          IDhcpMessageSerializer messageSerializer, IDhcpPacketSerializer packetSeralizer)
        {
            Log               = logger;
            Configuration     = configuration;
            LeaseManager      = leaseManager;
            MessageSerializer = messageSerializer;
            PacketSerializer  = packetSeralizer;

            _requestLock = new SemaphoreSlim(1);
        }
Beispiel #2
0
        private DhcpMessage ParseRequest(DhcpData dhcpData, IDhcpPacketSerializer pSerializer, IDhcpMessageSerializer mSerializer)
        {
            DhcpPacket  packet = pSerializer.Deserialize(dhcpData.MessageBuffer);
            DhcpMessage message;

            try
            {
                message = mSerializer.ToMessage(packet);
            }
            catch (Exception ex)
            {
                Log.Error($"Error Parsing Dhcp Message {ex.Message}");
                throw;
            }

            return(message);
        }