Harald Welte
cc3bbf9876
DHA: Always send dialogue portion in 'initiation_received'
...
Whether or not the local TC-User specifies a userPortion doesn't matter,
we always need to respond with a dialoguePortion confirming protocol
version and AC name to the originator.
2013-06-09 16:15:44 +02:00
Harald Welte
0d786b3171
TSM: outgoing END needs DTID and CallingParty
...
We need to store the SCCP CalledAddress in the TSM state at the time we
receive the BEGIN of this dialogue.
2013-06-08 10:37:49 +02:00
Harald Welte
0c1ac01cf6
DHA: AARE protocol-version is always an array of versions!
2013-06-08 10:11:22 +02:00
Harald Welte
ce41e7f2a9
TCO needs to know the PID of the user to deliver incoming BEGIN
...
If TCO detects an incoming BEGIN, it starts tcap_transaction_sup
which in turn start dha_fsm and ism_fsm, who both need to know
to whom to send the new components
We nw send those to the Pid that was set by the user using
gen_server:call(TCOpid, set_usap). This is most likely not the right
approach, as most apps will probably want to create a new process for
each dialogue. Needs improvement later.
2013-06-08 09:04:02 +02:00
Harald Welte
db99b66859
TCO: fix generation of incoming tcap_transaction_sup tree
...
This moves the 'server' side of the TCAP code to generate a proper
tcap_transaction_sup sub-tree on an incoming BEGIN
2013-06-08 09:02:50 +02:00
Harald Welte
f1803eabfb
DHA: fix parsing of BEGIN dialogue portion on incoming msgs
2013-06-08 01:14:21 +02:00
Harald Welte
3bf400d91a
TSM: we already receive decoded asn.1, don't try to feed that to decoder again
2013-06-08 00:55:01 +02:00
Harald Welte
47c1432648
CCO: use osmo_util:asn1_val() rather than local copy
2013-06-08 00:35:00 +02:00
Harald Welte
d98371a2f4
TCAP TCO Server: Use 'TR' module to encode Abort
2013-06-07 23:15:42 +02:00
Harald Welte
b85bdc8e2a
tcap_user: Export get_dialg_id/1
2012-02-10 12:18:45 +01:00
Harald Welte
cb24a47d2d
ISM: remove one FIXME (forwarding TC-U-REJECT to usap)
2012-02-08 22:05:15 +01:00
Harald Welte
36561032eb
components_sup: More verbosity when starting
2012-02-02 23:47:29 +01:00
Harald Welte
d0b28f51c3
ISM: use gen_fsm:send_event(usap), not gen_server:cast(usap)
2012-02-01 21:58:13 +01:00
Harald Welte
148d299b28
tcap_user: resolve CCO/DHA for all TC- primitives
2012-01-31 22:10:53 +01:00
Harald Welte
77d0ee7b13
CCO: properly convert InvokeID of received components
2012-01-31 21:28:24 +01:00
Harald Welte
e7540c5c33
DHA: make sure that the 'ok' of ASN.1 decoder doesn't end up in components list
2012-01-31 21:06:34 +01:00
Harald Welte
12f95d3935
TSM: use default QoS values if not provided in TR-* prim
...
According to Q.771, it is a User option if QoS paramters are passed
down. We simply use default paramters if none have been provided.
2012-01-31 20:54:24 +01:00
Harald Welte
250b36f2d8
TCO: make sure transaciton IDs are always converted from binary to int
2012-01-31 20:43:17 +01:00
Harald Welte
67f6051009
DHA: Always store TR-* record in state.state, not TC-*
2012-01-31 18:55:42 +01:00
Harald Welte
ae3aa8c3f2
DHA: Use incoming DialogueID from user as Transaction ID in TR sub-layer
...
Theoretically, Dialogue IDs and Transaction IDs are two independent
namesepaces. However, since TC is the only user of TR, we can simply
establish a 1:1 mapping.
2012-01-31 18:36:06 +01:00
Harald Welte
f5005c00e0
CCO: Use empty list [] instead of indefined for empty state.components
2012-01-31 18:35:27 +01:00
Harald Welte
d8c6cf5e18
CCO: remove dead code
2012-01-31 18:09:47 +01:00
Harald Welte
59d51e23a4
CCO: include DialogueID in user primitives; correctly convert InvokeID
2012-01-31 18:03:49 +01:00
Harald Welte
876c198584
DHA: work around TCAP implementations that forget tho send the id-as-dialogue
2012-01-31 00:10:14 +01:00
Harald Welte
141484622f
DHA: Make sure to generate TC-END.ind to TC-User
2012-01-30 23:57:07 +01:00
Harald Welte
50f0aac344
tcap_sup: add comment
2012-01-30 23:37:53 +01:00
Harald Welte
44a2bf3a3a
ISM: terminate gracefully if 'termiante' event received
2012-01-30 23:36:44 +01:00
Harald Welte
c956b44d97
CCO: handle 'dialogue-terminated' gracefully
2012-01-30 23:35:21 +01:00
Harald Welte
f43bffe405
DHA: handle TR-END.indication from TSL
2012-01-30 23:34:53 +01:00
Harald Welte
8d7b02530f
TSM: fix incoming handling of Continue/End/Abort
2012-01-30 23:08:27 +01:00
Harald Welte
556e14a07f
TCO: Fix ets lookup when receiving END transaction
2012-01-30 22:55:13 +01:00
Harald Welte
a0efe8a006
CCO: Forward incoming INVOKE directly to TC-User
2012-01-30 22:51:16 +01:00
Harald Welte
feb2275971
CCO: correctly resolve ISM Pid on response to outgoing Invokes
2012-01-30 22:36:02 +01:00
Harald Welte
bc4c9669ae
CCO: gem_fsm/gen_fsm spelling mistake
2012-01-30 21:18:00 +01:00
Harald Welte
7943c341b2
DHA: fix copy/paste mistake END/CONTINUE
2012-01-30 21:14:17 +01:00
Harald Welte
9bdce61410
TCO: Pass only Pid, not complete From tuple as Usap PID to DHA
2012-01-30 21:12:23 +01:00
Harald Welte
d03ed86648
DHA: correct parsing of ComponentPortion and AARE-apdu
2012-01-30 21:06:03 +01:00
Harald Welte
a8487477ad
TSM: supervisor starts DHA, not us. Resolve DHA using ets
2012-01-30 20:51:23 +01:00
Harald Welte
cd4dceba61
TSM: fix copy+paste mistake resulting in BadRecord exception
2012-01-30 19:50:49 +01:00
Harald Welte
8adb719ce5
TCO: correctly parse/decode incoming transaciton IDs to resolve TSM
2012-01-30 19:47:24 +01:00
Harald Welte
fd392388e9
TCO: fix interpretation of incoming TPDUs
...
It's sufficient to call the asn1 decoder on TCMessage, we don't need
to call it again for begin/continue/end
2012-01-30 01:50:30 +01:00
Harald Welte
aee832a6ee
CCO: correctly encode InvokeId in local generation of Invoke
2012-01-30 01:33:07 +01:00
Harald Welte
d2a045ad25
DHA: use TC:Components for encoding components, not TR:ComponentPortion
2012-01-30 01:21:48 +01:00
Harald Welte
8cecce3aba
CCO: actually hand over the [{invoke, #'Invoke'{}}] style components to DHA
2012-01-30 01:21:21 +01:00
Harald Welte
5d2061e509
DHA: properly encode dialogueportion during BEGIN
2012-01-30 00:55:38 +01:00
Harald Welte
153cdc4564
ISM: give ISM processes a proper name to help debugging
2012-01-29 23:37:27 +01:00
Harald Welte
c2773f018b
enable gen_fsm debug tracing for TSM and DHA for the tiem being
2012-01-29 23:23:24 +01:00
Harald Welte
983e81e9e6
transaction supervisor: properly convert name from list to atom
2012-01-29 23:22:54 +01:00
Harald Welte
992982b298
TSM FSM: Make sure to replace 'undefined' in DialoguePortion with asn1_NOVALUE
...
The ASN.1 encoder wants to explicitly have asn1_NOVALUE for OPTIONAL
fields. However, the default erlang record initializer is 'undefiend',
so we have to replace undefined with asn1_NOVALUE before feeding it to
asn1rt.
2012-01-29 23:06:42 +01:00
Harald Welte
b8f82b68af
DHA: Fix encoding of ComponentPortion
2012-01-29 20:24:22 +01:00