protected override void Decode(IChannelHandlerContext context, DatagramPacket message, List <object> output) { try { List <IByteBuffer> parsedPackets = protocol.ReceivePacket(message.Content); if (parsedPackets.Count > 0) { foreach (IByteBuffer currBuffer in parsedPackets) { output.Add(new DatagramPacket(currBuffer, message.Recipient)); } } } catch (TlsFatalAlert ex) { try { protocol.SendAlert(AlertLevel.fatal, ex.AlertDescription, ex.Message, ex.InnerException); } catch (Exception) { } if (handler != null) { handler.errorOccured(context.Channel); } } catch (Exception ex) { try { protocol.SendAlert(AlertLevel.fatal, AlertDescription.decode_error, ex.Message, ex.InnerException); } catch (Exception) { } if (handler != null) { handler.errorOccured(context.Channel); } } }