From 9a22102d352a5f51eb92eaa43cafb8f28ad1503b Mon Sep 17 00:00:00 2001 From: Diederik de Groot Date: Mon, 13 Feb 2017 17:50:53 +0100 Subject: [skinny]: Added conversation and request_response handling Improvements: - added conversation - added request/response handling Change-Id: Ia670eb23c0671b195108876a30ff3ff5eb4a152c Reviewed-on: https://code.wireshark.org/review/20094 Reviewed-by: Alexis La Goutte Petri-Dish: Alexis La Goutte Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman --- epan/dissectors/packet-skinny.h.in | 63 ++++++++++++++++++++++++++++---------- 1 file changed, 47 insertions(+), 16 deletions(-) (limited to 'epan/dissectors/packet-skinny.h.in') diff --git a/epan/dissectors/packet-skinny.h.in b/epan/dissectors/packet-skinny.h.in index 0ef076ab05..368c2e5c96 100644 --- a/epan/dissectors/packet-skinny.h.in +++ b/epan/dissectors/packet-skinny.h.in @@ -49,24 +49,55 @@ cog.out(' */\n') /*]]]*/ /*[[[end]]]*/ -/* Container for tapping relevant data */ +#include + +/* request response tracking */ +typedef struct _skinny_req_resp_t { + guint32 request_frame; + guint32 response_frame; + nstime_t request_time; +} skinny_req_resp_t; + +/* begin conversaton info*/ +typedef enum _skinny_message_type_t { + SKINNY_MSGTYPE_EVENT = 0, + SKINNY_MSGTYPE_REQUEST = 1, + SKINNY_MSGTYPE_RESPONSE = 2, +} skinny_message_type_t; + +typedef struct _skinny_conv_info_t { + skinny_message_type_t mtype; + wmem_map_t * pending_req_resp; + wmem_map_t * requests; + wmem_map_t * responses; + gint32 lineId; + //guint32 callId; + //guint32 passThruId; + //guint32 transactionId; + //guint32 callState; +} skinny_conv_info_t; +/* end conversation info */ + +/* Containers for tapping relevant data */ +/* WIP: will be (partially) replaced in favor of conversionation, dependents: ui/voip_calls.c */ typedef struct _skinny_info_t { - guint32 messId; - guint32 maxProtocolVersion; - gint32 lineId; - guint32 callId; - guint32 passThruId; - const gchar * messageName; - guint32 callState; - gboolean hasCallInfo; - gchar * callingParty; - gchar * calledParty; - gint32 mediaReceptionStatus; - gint32 mediaTransmissionStatus; - gint32 multimediaReceptionStatus; - gint32 multimediaTransmissionStatus; - gint32 multicastReceptionStatus; + guint32 messId; + guint32 maxProtocolVersion; + gint32 lineId; + guint32 callId; + guint32 passThruId; + const gchar * messageName; + guint32 callState; + gboolean hasCallInfo; + gchar * callingParty; + gchar * calledParty; + gint32 mediaReceptionStatus; + gint32 mediaTransmissionStatus; + gint32 multimediaReceptionStatus; + gint32 multimediaTransmissionStatus; + gint32 multicastReceptionStatus; + //skinny_conv_info_t * skinny_conv; } skinny_info_t; /* -- cgit v1.2.3