forked from osmocom/wireshark
This patch adds some expert info in CDT when:
- Unable to get compressed content - Unable to uncompress content http://www.wireshark.org/lists/wireshark-dev/200702/msg00356.html svn path=/trunk/; revision=20746
This commit is contained in:
parent
06e7801472
commit
4a6b87d35e
|
@ -66,12 +66,15 @@ CompressedData B "1.3.26.0.4406.0.4.2" "cdt"
|
||||||
|
|
||||||
#.FN_BODY CompressedContent
|
#.FN_BODY CompressedContent
|
||||||
tvbuff_t *next_tvb = NULL, *compr_tvb = NULL;
|
tvbuff_t *next_tvb = NULL, *compr_tvb = NULL;
|
||||||
|
proto_item *tf = NULL;
|
||||||
int save_offset = offset;
|
int save_offset = offset;
|
||||||
|
|
||||||
%(DEFAULT_BODY)s
|
%(DEFAULT_BODY)s
|
||||||
if (compr_tvb == NULL) {
|
if (compr_tvb == NULL) {
|
||||||
proto_tree_add_text (top_tree, tvb, save_offset, -1,
|
tf = proto_tree_add_text (top_tree, tvb, save_offset, -1,
|
||||||
"[Error: Unable to get compressed content]");
|
"[Error: Unable to get compressed content]");
|
||||||
|
expert_add_info_format (pinfo, tf, PI_UNDECODED, PI_ERROR,
|
||||||
|
"Unable to get compressed content");
|
||||||
if (check_col (pinfo->cinfo, COL_INFO))
|
if (check_col (pinfo->cinfo, COL_INFO))
|
||||||
col_append_fstr (pinfo->cinfo, COL_INFO,
|
col_append_fstr (pinfo->cinfo, COL_INFO,
|
||||||
"[Error: Unable to get compressed content]");
|
"[Error: Unable to get compressed content]");
|
||||||
|
@ -81,8 +84,10 @@ CompressedData B "1.3.26.0.4406.0.4.2" "cdt"
|
||||||
next_tvb = tvb_uncompress (compr_tvb, 0, tvb_length (compr_tvb));
|
next_tvb = tvb_uncompress (compr_tvb, 0, tvb_length (compr_tvb));
|
||||||
|
|
||||||
if (next_tvb == NULL) {
|
if (next_tvb == NULL) {
|
||||||
proto_tree_add_text (top_tree, tvb, save_offset, -1,
|
tf = proto_tree_add_text (top_tree, tvb, save_offset, -1,
|
||||||
"[Error: Unable to uncompress content]");
|
"[Error: Unable to uncompress content]");
|
||||||
|
expert_add_info_format (pinfo, tf, PI_UNDECODED, PI_ERROR,
|
||||||
|
"Unable to uncompress content");
|
||||||
if (check_col (pinfo->cinfo, COL_INFO))
|
if (check_col (pinfo->cinfo, COL_INFO))
|
||||||
col_append_fstr (pinfo->cinfo, COL_INFO,
|
col_append_fstr (pinfo->cinfo, COL_INFO,
|
||||||
"[Error: Unable to uncompress content]");
|
"[Error: Unable to uncompress content]");
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
*
|
*
|
||||||
* Routines for Compressed Data Type packet dissection.
|
* Routines for Compressed Data Type packet dissection.
|
||||||
*
|
*
|
||||||
* Copyright 2005, Stig Bj>rlykke <stig@bjorlykke.org>, Thales Norway AS
|
* Copyright 2005, Stig Bjørlykke <stig@bjorlykke.org>, Thales Norway AS
|
||||||
*
|
*
|
||||||
* $Id$
|
* $Id$
|
||||||
*
|
*
|
||||||
|
@ -33,6 +33,7 @@
|
||||||
|
|
||||||
#include <epan/packet.h>
|
#include <epan/packet.h>
|
||||||
#include <epan/oid_resolv.h>
|
#include <epan/oid_resolv.h>
|
||||||
|
#include <epan/expert.h>
|
||||||
|
|
||||||
#include "packet-ber.h"
|
#include "packet-ber.h"
|
||||||
#include "packet-x411.h"
|
#include "packet-x411.h"
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
*
|
*
|
||||||
* Routines for Compressed Data Type packet dissection.
|
* Routines for Compressed Data Type packet dissection.
|
||||||
*
|
*
|
||||||
* Copyright 2005, Stig Bj>rlykke <stig@bjorlykke.org>, Thales Norway AS
|
* Copyright 2005, Stig Bjørlykke <stig@bjorlykke.org>, Thales Norway AS
|
||||||
*
|
*
|
||||||
* $Id$
|
* $Id$
|
||||||
*
|
*
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* Do not modify this file. */
|
/* Do not modify this file. */
|
||||||
/* It is created automatically by the ASN.1 to Wireshark dissector compiler */
|
/* It is created automatically by the ASN.1 to Wireshark dissector compiler */
|
||||||
/* .\packet-cdt.c */
|
/* ./packet-cdt.c */
|
||||||
/* ../../tools/asn2wrs.py -b -e -p cdt -c cdt.cnf -s packet-cdt-template cdt.asn */
|
/* ../../tools/asn2wrs.py -b -e -p cdt -c cdt.cnf -s packet-cdt-template cdt.asn */
|
||||||
|
|
||||||
/* Input file: packet-cdt-template.c */
|
/* Input file: packet-cdt-template.c */
|
||||||
|
@ -10,7 +10,7 @@
|
||||||
*
|
*
|
||||||
* Routines for Compressed Data Type packet dissection.
|
* Routines for Compressed Data Type packet dissection.
|
||||||
*
|
*
|
||||||
* Copyright 2005, Stig Bj>rlykke <stig@bjorlykke.org>, Thales Norway AS
|
* Copyright 2005, Stig Bjørlykke <stig@bjorlykke.org>, Thales Norway AS
|
||||||
*
|
*
|
||||||
* $Id$
|
* $Id$
|
||||||
*
|
*
|
||||||
|
@ -41,6 +41,7 @@
|
||||||
|
|
||||||
#include <epan/packet.h>
|
#include <epan/packet.h>
|
||||||
#include <epan/oid_resolv.h>
|
#include <epan/oid_resolv.h>
|
||||||
|
#include <epan/expert.h>
|
||||||
|
|
||||||
#include "packet-ber.h"
|
#include "packet-ber.h"
|
||||||
#include "packet-x411.h"
|
#include "packet-x411.h"
|
||||||
|
@ -70,7 +71,7 @@ static int hf_cdt_contentType_OID = -1; /* OBJECT_IDENTIFIER */
|
||||||
static int hf_cdt_compressedContent = -1; /* CompressedContent */
|
static int hf_cdt_compressedContent = -1; /* CompressedContent */
|
||||||
|
|
||||||
/*--- End of included file: packet-cdt-hf.c ---*/
|
/*--- End of included file: packet-cdt-hf.c ---*/
|
||||||
#line 52 "packet-cdt-template.c"
|
#line 53 "packet-cdt-template.c"
|
||||||
|
|
||||||
/* Initialize the subtree pointers */
|
/* Initialize the subtree pointers */
|
||||||
|
|
||||||
|
@ -82,7 +83,7 @@ static gint ett_cdt_CompressedContentInfo = -1;
|
||||||
static gint ett_cdt_T_contentType = -1;
|
static gint ett_cdt_T_contentType = -1;
|
||||||
|
|
||||||
/*--- End of included file: packet-cdt-ett.c ---*/
|
/*--- End of included file: packet-cdt-ett.c ---*/
|
||||||
#line 55 "packet-cdt-template.c"
|
#line 56 "packet-cdt-template.c"
|
||||||
|
|
||||||
|
|
||||||
/*--- Included file: packet-cdt-fn.c ---*/
|
/*--- Included file: packet-cdt-fn.c ---*/
|
||||||
|
@ -247,14 +248,17 @@ static int
|
||||||
dissect_cdt_CompressedContent(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
|
dissect_cdt_CompressedContent(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
|
||||||
#line 68 "cdt.cnf"
|
#line 68 "cdt.cnf"
|
||||||
tvbuff_t *next_tvb = NULL, *compr_tvb = NULL;
|
tvbuff_t *next_tvb = NULL, *compr_tvb = NULL;
|
||||||
|
proto_item *tf = NULL;
|
||||||
int save_offset = offset;
|
int save_offset = offset;
|
||||||
|
|
||||||
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
|
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
|
||||||
&compr_tvb);
|
&compr_tvb);
|
||||||
|
|
||||||
if (compr_tvb == NULL) {
|
if (compr_tvb == NULL) {
|
||||||
proto_tree_add_text (top_tree, tvb, save_offset, -1,
|
tf = proto_tree_add_text (top_tree, tvb, save_offset, -1,
|
||||||
"[Error: Unable to get compressed content]");
|
"[Error: Unable to get compressed content]");
|
||||||
|
expert_add_info_format (pinfo, tf, PI_UNDECODED, PI_ERROR,
|
||||||
|
"Unable to get compressed content");
|
||||||
if (check_col (pinfo->cinfo, COL_INFO))
|
if (check_col (pinfo->cinfo, COL_INFO))
|
||||||
col_append_fstr (pinfo->cinfo, COL_INFO,
|
col_append_fstr (pinfo->cinfo, COL_INFO,
|
||||||
"[Error: Unable to get compressed content]");
|
"[Error: Unable to get compressed content]");
|
||||||
|
@ -264,8 +268,10 @@ dissect_cdt_CompressedContent(gboolean implicit_tag _U_, tvbuff_t *tvb, int offs
|
||||||
next_tvb = tvb_uncompress (compr_tvb, 0, tvb_length (compr_tvb));
|
next_tvb = tvb_uncompress (compr_tvb, 0, tvb_length (compr_tvb));
|
||||||
|
|
||||||
if (next_tvb == NULL) {
|
if (next_tvb == NULL) {
|
||||||
proto_tree_add_text (top_tree, tvb, save_offset, -1,
|
tf = proto_tree_add_text (top_tree, tvb, save_offset, -1,
|
||||||
"[Error: Unable to uncompress content]");
|
"[Error: Unable to uncompress content]");
|
||||||
|
expert_add_info_format (pinfo, tf, PI_UNDECODED, PI_ERROR,
|
||||||
|
"Unable to uncompress content");
|
||||||
if (check_col (pinfo->cinfo, COL_INFO))
|
if (check_col (pinfo->cinfo, COL_INFO))
|
||||||
col_append_fstr (pinfo->cinfo, COL_INFO,
|
col_append_fstr (pinfo->cinfo, COL_INFO,
|
||||||
"[Error: Unable to uncompress content]");
|
"[Error: Unable to uncompress content]");
|
||||||
|
@ -326,7 +332,7 @@ static void dissect_CompressedData_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_
|
||||||
|
|
||||||
|
|
||||||
/*--- End of included file: packet-cdt-fn.c ---*/
|
/*--- End of included file: packet-cdt-fn.c ---*/
|
||||||
#line 57 "packet-cdt-template.c"
|
#line 58 "packet-cdt-template.c"
|
||||||
|
|
||||||
|
|
||||||
/*--- proto_register_cdt -------------------------------------------*/
|
/*--- proto_register_cdt -------------------------------------------*/
|
||||||
|
@ -399,7 +405,7 @@ void proto_register_cdt (void) {
|
||||||
"cdt.CompressedContent", HFILL }},
|
"cdt.CompressedContent", HFILL }},
|
||||||
|
|
||||||
/*--- End of included file: packet-cdt-hfarr.c ---*/
|
/*--- End of included file: packet-cdt-hfarr.c ---*/
|
||||||
#line 89 "packet-cdt-template.c"
|
#line 90 "packet-cdt-template.c"
|
||||||
};
|
};
|
||||||
|
|
||||||
/* List of subtrees */
|
/* List of subtrees */
|
||||||
|
@ -413,7 +419,7 @@ void proto_register_cdt (void) {
|
||||||
&ett_cdt_T_contentType,
|
&ett_cdt_T_contentType,
|
||||||
|
|
||||||
/*--- End of included file: packet-cdt-ettarr.c ---*/
|
/*--- End of included file: packet-cdt-ettarr.c ---*/
|
||||||
#line 94 "packet-cdt-template.c"
|
#line 95 "packet-cdt-template.c"
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Register protocol */
|
/* Register protocol */
|
||||||
|
@ -435,5 +441,5 @@ void proto_reg_handoff_cdt (void) {
|
||||||
|
|
||||||
|
|
||||||
/*--- End of included file: packet-cdt-dis-tab.c ---*/
|
/*--- End of included file: packet-cdt-dis-tab.c ---*/
|
||||||
#line 109 "packet-cdt-template.c"
|
#line 110 "packet-cdt-template.c"
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* Do not modify this file. */
|
/* Do not modify this file. */
|
||||||
/* It is created automatically by the ASN.1 to Wireshark dissector compiler */
|
/* It is created automatically by the ASN.1 to Wireshark dissector compiler */
|
||||||
/* .\packet-cdt.h */
|
/* ./packet-cdt.h */
|
||||||
/* ../../tools/asn2wrs.py -b -e -p cdt -c cdt.cnf -s packet-cdt-template cdt.asn */
|
/* ../../tools/asn2wrs.py -b -e -p cdt -c cdt.cnf -s packet-cdt-template cdt.asn */
|
||||||
|
|
||||||
/* Input file: packet-cdt-template.h */
|
/* Input file: packet-cdt-template.h */
|
||||||
|
@ -10,7 +10,7 @@
|
||||||
*
|
*
|
||||||
* Routines for Compressed Data Type packet dissection.
|
* Routines for Compressed Data Type packet dissection.
|
||||||
*
|
*
|
||||||
* Copyright 2005, Stig Bj>rlykke <stig@bjorlykke.org>, Thales Norway AS
|
* Copyright 2005, Stig Bjørlykke <stig@bjorlykke.org>, Thales Norway AS
|
||||||
*
|
*
|
||||||
* $Id$
|
* $Id$
|
||||||
*
|
*
|
||||||
|
|
Loading…
Reference in New Issue