diff options
author | Olivier Biot <obiot.ethereal@gmail.com> | 2003-12-12 23:47:42 +0000 |
---|---|---|
committer | Olivier Biot <obiot.ethereal@gmail.com> | 2003-12-12 23:47:42 +0000 |
commit | 45c370495d35e5ac3a79a65d634f272306944b42 (patch) | |
tree | eb7eae8eeccc7364ab09a101a1c7cd4650506744 /packet-smpp.c | |
parent | df1236de0549bdb51d1fc5674fdb871b37f2851d (diff) |
Always dissect a sm_submit otherwise reassembly of short messages does not work.
svn path=/trunk/; revision=9252
Diffstat (limited to 'packet-smpp.c')
-rw-r--r-- | packet-smpp.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/packet-smpp.c b/packet-smpp.c index e89a108dd8..f1f6a98b69 100644 --- a/packet-smpp.c +++ b/packet-smpp.c @@ -8,7 +8,7 @@ * Data Coding Scheme decoding for GSM (SMS and CBS), * provided by Olivier Biot. * - * $Id: packet-smpp.c,v 1.20 2003/11/21 22:18:30 guy Exp $ + * $Id: packet-smpp.c,v 1.21 2003/12/12 23:47:42 obiot Exp $ * * Note on SMS Message reassembly * ------------------------------ @@ -1564,10 +1564,14 @@ parse_sm_message(proto_tree *sm_tree, tvbuff_t *tvb, packet_info *pinfo) /* Show all fragments */ show_fragment_seq_tree (fd_sm, &sm_frag_items, sm_tree, pinfo, sm_tvb); - } else { if (check_col (pinfo->cinfo, COL_INFO)) col_append_str (pinfo->cinfo, COL_INFO, - " (Short Message unreassembled)"); + " (Short Message Reassembled)"); + } else { + /* Not last packet of reassembled Short Message */ + if (check_col (pinfo->cinfo, COL_INFO)) + col_append_fstr (pinfo->cinfo, COL_INFO, + " (Short Message fragment %u of %u)", frag, frags); } } @@ -1969,8 +1973,10 @@ dissect_smpp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) /* In the interest of speed, if "tree" is NULL, don't do any work not * necessary to generate protocol tree items. + * + * Exception: sm_submit (command_id == 0x00000004) - for SMS reassembly */ - if (tree) { + if (tree || (command_id == 4)) { /* create display subtree for the protocol */ ti = proto_tree_add_item(tree, proto_smpp, tvb, 0, |