<div dir="ltr">I'm working on an app-layer preprocessor for a TCP-based protocol, modeled after Modbus.  <div><br></div><div>While running different traffic through my app-layer preprocessor I notice while replaying certain capture files the protocol packets identified are in the wrong direction (a to-server packet is identified as a to-client packet). I have also noticed that for certain other capture files the preprocessor doesn't successfully identify any protocol packets although such packets are present.</div><div><br></div><div>I'm running Suricata as follows:</div><div>suricata -c /etc/suricata.yaml -r protocol.pcap</div><div><br></div><div>I'm using suricata.2.0.4 with mostly default settings except I'm running with 'midstream equal to true'.</div><div><br></div><div>What function in RegisterXParsers() ensures that the protocol packets are identified successfully and in the correct direction?</div><div><br></div><div>Thanks.</div></div>