epl: Reassembly table fix
Fixed an error that retransmitted frames were added to the reassembly table. Change-Id: I314412cb8f2ce49142e4b7f001613948f5e03bf6 Reviewed-on: https://code.wireshark.org/review/4916 Reviewed-by: Roland Knall <rknall@gmail.com> Reviewed-by: Lukas Emersberger <lukas.emersberger@gmail.com> Reviewed-by: Michael Mann <mmann78@netscape.net>
This commit is contained in:
parent
72c70b6abe
commit
b5dead8e60
|
@ -2676,16 +2676,19 @@ dissect_epl_sdo_command_write_by_index(proto_tree *epl_tree, tvbuff_t *tvb, pack
|
|||
/* save the current frame and increase the counter */
|
||||
epl_asnd_sdo_reassembly_write.frame[epl_segmentation.recv][epl_segmentation.send] = frame;
|
||||
ct += 1;
|
||||
/* add the frame to reassembly_table */
|
||||
frag_msg = fragment_add_seq_check(&epl_reassembly_table, tvb, offset, pinfo,
|
||||
fragmentId, NULL, ct, payload_length, end_segment ? FALSE : TRUE );
|
||||
}
|
||||
else if(epl_asnd_sdo_reassembly_write.frame[epl_segmentation.recv][epl_segmentation.send] == 0x00)
|
||||
{
|
||||
/* save the current frame and increase counter */
|
||||
epl_asnd_sdo_reassembly_write.frame[epl_segmentation.recv][epl_segmentation.send] = frame;
|
||||
ct += 1;
|
||||
}
|
||||
/* add the frame to reassembly_table */
|
||||
frag_msg = fragment_add_seq_check(&epl_reassembly_table, tvb, offset, pinfo,
|
||||
/* add the frame to reassembly_table */
|
||||
frag_msg = fragment_add_seq_check(&epl_reassembly_table, tvb, offset, pinfo,
|
||||
fragmentId, NULL, ct, payload_length, end_segment ? FALSE : TRUE );
|
||||
}
|
||||
|
||||
/* if the reassembly_table is not Null and the frame stored is the same as the current frame */
|
||||
if(frag_msg != NULL && (epl_asnd_sdo_reassembly_write.frame[epl_segmentation.recv][epl_segmentation.send] == frame))
|
||||
|
|
Loading…
Reference in New Issue