aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-rohc.h
diff options
context:
space:
mode:
authorAnders Broman <anders.broman@ericsson.com>2011-12-15 17:28:43 +0000
committerAnders Broman <anders.broman@ericsson.com>2011-12-15 17:28:43 +0000
commitb2678b43d1329ff7e330312c37bf004b453a9550 (patch)
tree59bfcf08f45aa56ff971817b8c69c5d9eb2f866d /epan/dissectors/packet-rohc.h
parentd3e76bdeb03af9b945e45766d8dcfc11dc0a6807 (diff)
From Per Liedberg:
RoHC dissection improvment. svn path=/trunk/; revision=40210
Diffstat (limited to 'epan/dissectors/packet-rohc.h')
-rw-r--r--epan/dissectors/packet-rohc.h24
1 files changed, 22 insertions, 2 deletions
diff --git a/epan/dissectors/packet-rohc.h b/epan/dissectors/packet-rohc.h
index 9b2aae5e55..6b0a7a07e4 100644
--- a/epan/dissectors/packet-rohc.h
+++ b/epan/dissectors/packet-rohc.h
@@ -32,6 +32,8 @@
#ifndef PACKET_ROHC_H
#define PACKET_ROHC_H
+#define MAX_CID 15
+
enum rohc_mode
{
UNIDIRECTIONAL = 1,
@@ -39,19 +41,37 @@ enum rohc_mode
RELIABLE_BIDIRECTIONAL = 3
};
+enum rohc_d_mode
+{
+ NO_CONTEXT = 1,
+ STATIC_CONTEXT = 2,
+ FULL_CONTEXT = 3
+};
typedef struct rohc_info
{
gboolean rohc_compression;
- unsigned short rohc_ip_version;
+ guint16 rohc_ip_version;
gboolean cid_inclusion_info;
gboolean large_cid_present;
enum rohc_mode mode;
gboolean rnd;
gboolean udp_checkum_present;
- unsigned short profile;
+ guint16 profile;
proto_item *last_created_item;
} rohc_info;
+
+typedef struct rohc_context
+{
+ guint16 rohc_ip_version[MAX_CID+1];
+ gboolean large_cid_present[MAX_CID+1];
+ enum rohc_mode mode[MAX_CID+1];
+ enum rohc_d_mode d_mode[MAX_CID+1];
+ gboolean rnd[MAX_CID+1];
+ gboolean udp_checkum_present[MAX_CID+1];
+ guint16 profile[MAX_CID+1];
+} rohc_context;
+
int dissect_rohc_ir_packet(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int offset, guint8 cid, gboolean is_add_cid, rohc_info *p_rohc_info);
int dissect_rohc_ir_dyn_packet(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int offset, guint8 cid, gboolean is_add_cid, rohc_info *p_rohc_info);