Hi Everyone,
Don't know how many people are actively involved with SMPP, but have
to ask this before I try to change the behaviour of the SMPP
dissector.
Currently, if the SMPP dissector detects UDHI (User Data Header
Indicator) in the submit_sm or deliver_sm PDUs, it passes the user
data to the GSM-SMS-UD dissector which in turn can decode the payload
as WSP / MMSE etc.
I would like to extend this functionality to the data_sm PDU also and
am currently working on it.
However, the problem is with the location of the UDH Information
Elements itself (3GPP 23.040). The information which is normally
contained in the UDH Information Elements can also be contained
(instead) in SMPP optional TLV parameters. However, all corresponding
SMPP TLV parameters are marked in SMPP 3.4 as "Generic" and not "GSM
specific". This is turn means that I can't (or rather shouldn't)
convert the optional TLVs back to UDH and pass them to the GSM-SMS-UD
dissector.
I do believe that this would be a very useful addition to the SMPP
dissector, but I would like to implement this without breaking any
rules.
For example, could I add a boolean preference for the SMPP dissector
like "Assume user data is GSM", set the default to true and then do
the above if the preference is true. If the payload is of some other
network type then the this could be disabled. Perhaps I could also use
the dest_network_type and source_network_type parameters (if present)
to improve the chances of doing this correctly?
Any suggestions would be welcome.
Thanks,
Abhik.