Project

General

Profile

Actions

Bug #4351

closed

smpp: Deliver-SM error response from SMPP handler does not result in RP-ERROR to the MS

Added by neels over 4 years ago. Updated over 4 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
-
Target version:
-
Start date:
01/09/2020
Due date:
% Done:

100%

Resolution:
Spec Reference:

Description

apparently osmo-nitb was able to directly return an RP-ERROR to the MS when delivery via SMPP returned an error, but osmo-msc fails to do that.
To test this, I used an esme.py script that always returns RINVSRCADR when the osmo-msc sends out a Deliver-SM via SMPP.
I also tried to make sure the conn is kept alive by adding a use count on the msc_a conn, to no avail.

In attached smpp_failure.pcapng (view with a wireshark that is able to display gsmtap_log), see these packets:

120: MS dispatches MO SMS to osmo-msc
137: trans tid-11 is created
157: SMR changes state to WAIT_TO_TX_RP_ACK
169: SMR already triggers RP-ACK and
172: changes to state IDLE
187: SMPP Deliver_sm is sent from osmo-msc to the esme script
188: RP-ACK already goes back to the MS (too fast)
216: SMS transaction and SMC,SMR get freed (too soon)
223: SMPP error response comes back to osmo-msc (too late)
228: osmo-msc notices that the transaction is already gone, nothing left to do

In another trace, the timing was seen such that the Deliver_sm error response came before the SMS transaction was freed,
but then the RP-ACK already had been triggered and the SMR ignores the RP-ERROR that wants to get sent with "unhandled at this state (IDLE)".
See packet 204 in smpp_failure_2.pcapng -- it's the same thing, the RP-ACK has already happened before SMPP gets a chance to respond.


Files

smpp_failure.pcapng smpp_failure.pcapng 79.3 KB neels, 01/09/2020 03:43 AM
smpp_failure_2.pcapng smpp_failure_2.pcapng 68 KB neels, 01/09/2020 03:43 AM
Actions

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)