private async Task ReceiveRequest(byte[] buffer, IPEndPoint remoteEndPoint) { DhcpData dhcpData = new DhcpData(remoteEndPoint, buffer); DhcpMessage dhcpMessage = ParseRequest(dhcpData, PacketSerializer, MessageSerializer); await HandleRequest(dhcpMessage).ConfigureAwait(false); }
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); }