Begin with line 2945 , it said that :
/*
* there does not seem to be a way to determine that this
* deliver report is from an RP-ERROR or RP-ACK other
* than to look at the next octet
*
* FCS values are 0x80 and higher
* PI uses bit 7 as an extension indicator
*
* will assume that if bit 7 is set then this octet
* is an FCS otherwise PI
*/
offset++;
oct = tvb_get_guint8(tvb, offset);
if (oct & 0x80)
{
dis_field_fcs(tvb, tree, offset, oct);
offset++;
}
pi = tvb_get_guint8(tvb, offset);
dis_field_pi(tvb, tree, offset, pi);
……
“will assume that if bit 7 is set then this octet is an FCS otherwise PI” means that the octet is a FCS or a PI , if it is a FCS ,it is not a PI ; If it is a PI , it is not a FCS .
if (oct & 0x80)
{
dis_field_fcs(tvb, tree, offset, oct);
offset++;
}
pi = tvb_get_guint8(tvb, offset);
dis_field_pi(tvb, tree, offset, pi);
means that it can be a FCS with PI?