diff options
-rw-r--r-- | .mailmap | 1 | ||||
-rw-r--r-- | AUTHORS | 2 | ||||
-rw-r--r-- | epan/dissectors/asn1/gsm_map/gsm_map.cnf | 10 | ||||
-rw-r--r-- | epan/dissectors/packet-gsm_map.c | 13 | ||||
-rw-r--r-- | epan/dissectors/packet-gsm_sms.c | 2 | ||||
-rw-r--r-- | epan/dissectors/packet-gsm_sms.h | 2 |
6 files changed, 27 insertions, 3 deletions
@@ -172,6 +172,7 @@ Sumit Kumar Jha <sjha3@ncsu.edu> sjha3 <sjha3@ncsu.edu> Thies Moeller <thies.moeller[AT]baslerweb.com> <thies.moeller@baslerweb.com> Thomas Portassau <thomas.portassau@hotmail.fr> Thomas PORTASSAU <thomas.portassau@hotmail.fr> Uli Heilmeier <uh@heilmeier.eu> Uli Heilmeier <openid@heilmeier.eu> +Vasil Velichkov <vvvelichkov@gmail.com> Vasil Velichckov <vvvelichkov@gmail.com> Vikram Hegde <vikram.h@samsung.com> Vikram Hegde <vikram.h@amsung.com> Vincent Helfre <vincent.helfre@gmx.net> Vincent Helfre <vincenthelfre@googlemail.com> Volodymyr Khomenko <Khomenko.Volodymyr@gmail.com> Volodymyr Khomenko <Volodymyr_Khomenko@DellTeam.com> @@ -4488,7 +4488,7 @@ Uli Schlachter <psychon[AT]znc.in> Umberto Corponi <umberto.corponi[AT]athonet.com> Uri Simchoni <urisimchoni[AT]gmail.com> Valentin Vidic <Valentin.Vidic[AT]CARNet.hr> -Vasil Velichckov <vvvelichkov[AT]gmail.com> +Vasil Velichkov <vvvelichkov[AT]gmail.com> Victor Barratault <victor.barratault[AT]gmail.com> Victor Dodon <dodonvictor[AT]gmail.com> Victor Voronkov <victor.voronkov[AT]gmail.com> diff --git a/epan/dissectors/asn1/gsm_map/gsm_map.cnf b/epan/dissectors/asn1/gsm_map/gsm_map.cnf index de93a8a296..ffc0561707 100644 --- a/epan/dissectors/asn1/gsm_map/gsm_map.cnf +++ b/epan/dissectors/asn1/gsm_map/gsm_map.cnf @@ -1169,6 +1169,16 @@ MAP interfaces } } +#.FN_BODY SM-RP-SMEA VAL_PTR=&payload_tvb + tvbuff_t *payload_tvb; +%(DEFAULT_BODY)s + if (payload_tvb) { + guint32 tvb_offset = 0; + PROTO_ITEM_SET_HIDDEN(actx->created_item); + dis_field_addr(payload_tvb, actx->pinfo, tree, &tvb_offset, "SM-RP-SMEA"); + } + + # Make dissector table for V3 messages #.REGISTER diff --git a/epan/dissectors/packet-gsm_map.c b/epan/dissectors/packet-gsm_map.c index bb79ac6b03..acb4569023 100644 --- a/epan/dissectors/packet-gsm_map.c +++ b/epan/dissectors/packet-gsm_map.c @@ -6530,8 +6530,19 @@ dissect_gsm_map_sm_SM_RP_MTI(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int o static int dissect_gsm_map_sm_SM_RP_SMEA(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 1173 "./asn1/gsm_map/gsm_map.cnf" + tvbuff_t *payload_tvb; offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index, - NULL); + &payload_tvb); + + if (payload_tvb) { + guint32 tvb_offset = 0; + PROTO_ITEM_SET_HIDDEN(actx->created_item); + dis_field_addr(payload_tvb, actx->pinfo, tree, &tvb_offset, "SM-RP-SMEA"); + } + + + return offset; } diff --git a/epan/dissectors/packet-gsm_sms.c b/epan/dissectors/packet-gsm_sms.c index 69a73261ce..3e276b3763 100644 --- a/epan/dissectors/packet-gsm_sms.c +++ b/epan/dissectors/packet-gsm_sms.c @@ -582,7 +582,7 @@ static const value_string dis_field_addr_numbering_plan_vals[] = { {0, NULL } }; -static void +void dis_field_addr(tvbuff_t *tvb, packet_info* pinfo, proto_tree *tree, guint32 *offset_p, const gchar *title) { static gchar digit_table[] = {"0123456789*#abc\0"}; diff --git a/epan/dissectors/packet-gsm_sms.h b/epan/dissectors/packet-gsm_sms.h index a69d818c14..068b338ffd 100644 --- a/epan/dissectors/packet-gsm_sms.h +++ b/epan/dissectors/packet-gsm_sms.h @@ -32,6 +32,8 @@ typedef struct { void dis_field_udh(tvbuff_t *tvb, packet_info* pinfo, proto_tree *tree, guint32 *offset, guint32 *length, guint8 *udl, enum character_set cset, guint8 *fill_bits, gsm_sms_udh_fields_t *p_udh_fields); +void dis_field_addr(tvbuff_t *tvb, packet_info* pinfo, proto_tree *tree, guint32 *offset_p, const gchar *title); + /* Data structure that can be optionally given to gsm_sms dissector */ typedef struct _gsm_sms_data_t { gboolean stk_packing_required; |