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
Harald Welte
05f7778a81
TCO/TCU: Make sure to start all supervisors on INVOKE
...
This introduces a new 'call' from the TC-User to TCO, which creates
the equired transaction_sup, dialogues_sup, dha_fsm and tsm_fsm _before_
the TC-INVOKE component will be passed into the new DHA fsm.
Once the TCO actually receives the TR-BEGIN, it will not start the
transaction supervisor, but merely look it up based on the TR-user
provided transaction ID.
2012-01-29 20:07:38 +01:00
Harald Welte
0b3d9b053c
make sure CCO correctly starts new ISM
2012-01-29 20:02:25 +01:00
Harald Welte
24b34f506a
transaction_sup: start dha_fsm in addition to dsm_fsm
2012-01-28 20:50:55 +01:00
Harald Welte
dbb39e1776
Fxi the way that TCO starts transaction_sup and tsm_fsm in local-out-begin
2011-12-18 21:45:49 +01:00
Harald Welte
bedd015b07
DHA: No need for passing PID of dialogue_sup into DHA
2011-12-18 12:54:08 +01:00
Harald Welte
4ab9bffba2
TSM: use a caller-provided Fun to send primitives towards SCCP
2011-12-18 12:22:31 +01:00
Harald Welte
6b0a7361be
DHA: Since TCO is a gen_server, not gen_fsm, use cast!
2011-12-18 12:20:42 +01:00
Harald Welte
f42d43b9f4
TCO: export the new_tid() function
2011-12-17 19:11:32 +01:00
Harald Welte
0f692c61b5
make sure that the 'transactionID' key in the ets table exists
2011-12-17 19:11:22 +01:00
Harald Welte
a6ead2ab01
make sure ANSI part at least compiles, even if incomplete
2011-12-17 18:59:04 +01:00