Huge thanks to our Platinum Members Endace and LiveAction,
and our Silver Member Veeam, for supporting the Wireshark Foundation and project.

Wireshark-dev: Re: [Wireshark-dev] PFCP Trace information issue in WS 3.0.0 rc1

From: Pascal Quantin <pascal@xxxxxxxxxxxxx>
Date: Fri, 22 Feb 2019 17:16:08 +0100
Hi Varun,

Le ven. 22 févr. 2019 à 17:09, Varun Goyal <varun.goyal@xxxxxxxxx> a écrit :
 HI ,

I have seen the code of WS of version 3.0.0 rc1 and found that WS is not able to decode the IE Trace information correctly.

Observation :
1. Trace info has parameter 
    uint32_t Traceid:24, 
    uint32_t spare;
WS does not decoded the spare value .

static void
  dissect_pfcp_trace_information(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree
  *tree, proto_item *item _U_, guint16 length _U_, guint8 message_type _U_, pfcp_
  session_args_t *args _U_){


/* 8 to 10   Trace ID */
      proto_tree_add_item(tree, hf_pfcp_trace_information_trace_id, tvb, offset, 3
  , ENC_BIG_ENDIAN);
      offset += 3;    ========offset+=4 should be there.
}

According to 3GPP 29.244, there is no 4th byte being a spare value between the Trace ID and Length of Trigger Events fields. The code seems correct.


2. IP_address 

proto_tree_add_item(tree, hf_pfcp_trace_information_ipaddress, tvb, offset, 
  length_ipaddress, ENC_NA);
      offset += length_ipaddress; Here also , offset += wrong value it should be fixed with length_ipaddress*sizeof(uint8_t)

Given that the size of a uint8_t is 1 byte, I'm not sure what you are trying to achieve here.  Again the existing code seems correct.

Best regards,
Pascal.