public string GetErrorMessage(TCP_PacketError error) { TCP tcp = Packet.TCP; switch (error) { case TCP_PacketError.ErrorBadDirection: return("error wrong direction"); case TCP_PacketError.WarningBadFlagAck: return("warning ack should not be set"); case TCP_PacketError.WarningOpenConnection2BadAck: return(string.Format("warning ack (0x{0}) != source seq + 1 (0x{1})", tcp.AckSequence.zToHex(), (StreamState.CurrentSourceSequence - 1).zToHex())); case TCP_PacketError.WarningOpenConnection2BadMessagePosition: return("warning message should be just after open connection step 1"); case TCP_PacketError.ErrorOpenConnection2BadDirection: return(string.Format("error wrong direction, TCP open 2, SYN seq = y (0x{0}), ACK x + 1 (0x{1})", tcp.Sequence.zToHex(), tcp.AckSequence.zToHex())); case TCP_PacketError.WarningOpenConnection3BadAck: return(string.Format("warning ack (0x{0}) != destination seq + 1 (0x{1})", tcp.AckSequence.zToHex(), StreamState.CurrentDestinationSequence.zToHex())); case TCP_PacketError.WarningCloseSourceConnection1BadSeq: return(string.Format("warning seq (0x{0}) != source seq (0x{1})", tcp.Sequence.zToHex(), StreamState.CurrentSourceSequence.zToHex())); case TCP_PacketError.WarningCloseSourceConnection2BadAck: return(string.Format("warning ack (0x{0}) != source seq + 1 (0x{1})", tcp.AckSequence.zToHex(), StreamState.CurrentSourceSequence.zToHex())); case TCP_PacketError.WarningCloseDestinationConnection1BadSeq: return(string.Format("warning seq (0x{0}) != destination seq (0x{1})", tcp.Sequence.zToHex(), StreamState.CurrentDestinationSequence.zToHex())); case TCP_PacketError.WarningCloseDestinationConnection1BadAck: return(string.Format("warning ack (0x{0}) != source seq + 1 (0x{1})", tcp.AckSequence.zToHex(), StreamState.CurrentSourceSequence.zToHex())); case TCP_PacketError.WarningCloseDestinationConnection2BadAck: return(string.Format("warning ack (0x{0}) != destination seq + 1 (0x{1}) (ACK y + 1)", tcp.AckSequence.zToHex(), StreamState.CurrentDestinationSequence.zToHex())); default: return(null); } }
public void AddError(TCP_PacketError error) { Errors.Add(error); }