aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2011-12-10 19:21:40 +0100
committerHarald Welte <laforge@gnumonks.org>2011-12-10 19:21:40 +0100
commitc6bfb3be692f4e6baa7ea262a5f45b9cf9018c74 (patch)
tree5d582d40a3b14a6f0f7a3c8050faaca6174f7e83
parent44a9c99c0ccac07cfc8f25dfaccc267ce141d50b (diff)
SCRC: transmit messages over MTP3 based on linkset name, not DPC
-rw-r--r--src/sccp_scrc.erl9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/sccp_scrc.erl b/src/sccp_scrc.erl
index 15f6097..059fb31 100644
--- a/src/sccp_scrc.erl
+++ b/src/sccp_scrc.erl
@@ -155,7 +155,7 @@ idle(P= #primitive{subsystem = 'N', gen_name = 'UNITDATA',
% FIXME: get to MTP-TRANSFER.req
{ok, M3} = create_mtp3_out(SccpMsg2, LsName),
% generate a MTP-TRANSFER.req primitive to the lower layer
- send_mtp_transfer_down(LoopDat, M3),
+ send_mtp_transfer_down(LoopDat, M3, LsName),
LoopDat1 = LoopDat;
{local, SccpMsg2, UserPid} ->
LoopDat1 = deliver_to_scoc_sclc(LoopDat, SccpMsg2, UserPid)
@@ -169,7 +169,7 @@ idle(#primitive{subsystem = 'MTP', gen_name = 'TRANSFER',
{remote, SccpMsg2, LsName} ->
{ok, M3} = create_mtp3_out(SccpMsg2, LsName),
% generate a MTP-TRANSFER.req primitive to the lower layer
- send_mtp_transfer_down(LoopDat, M3),
+ send_mtp_transfer_down(LoopDat, M3, LsName),
LoopDat1 = LoopDat;
{local, SccpMsg, UserPid} ->
LoopDat1 = deliver_to_scoc_sclc(LoopDat, SccpMsg, UserPid)
@@ -211,6 +211,9 @@ idle(#primitive{subsystem = 'OCRC', gen_name = 'CONNECTION',
send_mtp_transfer_down(LoopDat, Mtp3) when is_record(Mtp3, mtp3_msg) ->
ss7_links:mtp3_tx(Mtp3).
+send_mtp_transfer_down(LoopDat, Mtp3, LsName) when is_record(Mtp3, mtp3_msg) ->
+ ss7_links:mtp3_tx(Mtp3, LsName).
+
create_mtp3_out(SccpMsg, LsName) when is_record(SccpMsg, sccp_msg) ->
CalledParty = proplists:get_value(called_party_addr,
SccpMsg#sccp_msg.parameters),
@@ -250,7 +253,7 @@ handle_info({'$gen_cast', P=#primitive{}}, State, LoopDat) ->
% FIXME: get to MTP-TRANSFER.req
{ok, M3} = create_mtp3_out(SccpMsg2, LsName),
% generate a MTP-TRANSFER.req primitive to the lower layer
- send_mtp_transfer_down(LoopDat, M3),
+ send_mtp_transfer_down(LoopDat, M3, LsName),
LoopDat1 = LoopDat;
{local, SccpMsg2, UserPid} ->
LoopDat1 = deliver_to_scoc_sclc(LoopDat, SccpMsg2, UserPid)