summaryrefslogtreecommitdiffstats
path: root/TCAP
AgeCommit message (Collapse)AuthorFilesLines
2013-06-24TCAP CCO: implement indication of 'lastComponent' to TC-USERHarald Welte1-18/+24
The TC-User can now look at the 'lastComponent' member of the component in order to determine if this is the last component within the current message, or if there will be more components.
2013-06-24TCAP DHA: Store user-provided dialogueID as otid in stateHarald Welte1-1/+1
2013-06-18add empty ebin/{ansi,itu} directoriesHarald Welte2-0/+0
2013-06-18edoc doesn't support multiple authors in one @author tagHarald Welte1-1/+2
2013-06-18Update TCAPMessages.asn to work with osmo_capHarald Welte1-1/+1
asn1ct will fail with a 'cant check' error of this change is not made.
2013-06-10Makefile: remove deprecated +driver optionHarald Welte1-1/+1
2013-06-10Makefile: Build asn1 generated modules with debug infoHarald Welte1-2/+2
2013-06-10DHA: properly implement differences of ACTIVE and INIT SENT stateHarald Welte1-146/+142
When we are in initiation_sent state, the logic regarding the neccessity and treatment of the dialogueInfo is different than active state. However, it is reasonably similar so that we can use the same function 'is_or_active()' to implement the handling of TR-{CONTINUE,END}.ind in one function, respectively rather than copy+paste code.
2013-06-10DHA: Ensure TR-END always contains a valid TR-userData recordHarald Welte1-1/+2
otherwise the ASN1 encoder will raise an exception
2013-06-10TSM: Don't attempt to create an END message with no dest trans idHarald Welte1-1/+3
2013-06-10TC.asn: Mark "argument" part of Invoke as 'OPTIONAL'Harald Welte1-1/+1
Even thought th TCAP spec seems to indicate it is not optional, in fact it apparently is :/
2013-06-10DHA: Store TR-END record in loop state on TC-END requestHarald Welte1-5/+5
We need to put the TR-END record in the loop data state once we receive the TC-END.req from TCU, even in 'basic' termination mode. Only this way, code in the wait_for_end_components can actually access/use that record.
2013-06-10TSM: print reason for termination in debug loggingHarald Welte1-2/+3
2013-06-10CCO: TCAP 'Invoke' parameters are not OPTIONALHarald Welte1-1/+8
... so we cannot feed asn1_NOVALUE into the encoder, but have to pass an empty list instead. sigh.
2013-06-10tcap_invocation_sup: Use unique name for each ISMHarald Welte1-1/+1
This bug prevented multiple INVOKE to exist in parallel.
2013-06-09DHA: After sending TR-CONTINUE from initiation-received state we go to activeHarald Welte1-1/+1
2013-06-09DHA: don't forget to 'request-components' in TC-CONTINUEHarald Welte1-1/+3
when TCU requests a TC-CONTINUE, DHA has to request pending components from CCO.
2013-06-09Always include AARE DialoguePDU if sending first END/CONTINUEHarald Welte1-27/+14
According to the spec regarding dialogue handling, the first CONTINUE or END in response to a BEGIN must always contain a dialogue portion with an AARE PDU, acknowledging protocol version and application context name.
2013-06-09DHA: make extract_dialogue_portion() safe for asn1_NOVALUEHarald Welte1-6/+12
2013-06-09DHA: fix missing '' around atom with '-' in its nameHarald Welte1-1/+1
... otherwise it would be treated like an arithmetic expression
2013-06-09DHA: Always send dialogue portion in 'initiation_received'Harald Welte1-15/+16
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-08TSM: outgoing END needs DTID and CallingPartyHarald Welte1-1/+4
We need to store the SCCP CalledAddress in the TSM state at the time we receive the BEGIN of this dialogue.
2013-06-08DHA: AARE protocol-version is always an array of versions!Harald Welte1-6/+6
2013-06-08TCO needs to know the PID of the user to deliver incoming BEGINHarald Welte1-5/+9
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-08TCO: fix generation of incoming tcap_transaction_sup treeHarald Welte1-16/+32
This moves the 'server' side of the TCAP code to generate a proper tcap_transaction_sup sub-tree on an incoming BEGIN
2013-06-08DHA: fix parsing of BEGIN dialogue portion on incoming msgsHarald Welte1-3/+6
2013-06-08TSM: we already receive decoded asn.1, don't try to feed that to decoder againHarald Welte1-1/+1
2013-06-08CCO: use osmo_util:asn1_val() rather than local copyHarald Welte1-18/+8
2013-06-07TCAP TCO Server: Use 'TR' module to encode AbortHarald Welte1-1/+1
2012-02-10tcap_user: Export get_dialg_id/1Harald Welte1-1/+1
2012-02-08ISM: remove one FIXME (forwarding TC-U-REJECT to usap)Harald Welte1-2/+3
2012-02-02components_sup: More verbosity when startingHarald Welte1-1/+1
2012-02-01ISM: use gen_fsm:send_event(usap), not gen_server:cast(usap)Harald Welte1-5/+5
2012-01-31tcap_user: resolve CCO/DHA for all TC- primitivesHarald Welte1-4/+55
2012-01-31CCO: properly convert InvokeID of received componentsHarald Welte1-8/+9
2012-01-31DHA: make sure that the 'ok' of ASN.1 decoder doesn't end up in components listHarald Welte1-9/+9
2012-01-31TSM: use default QoS values if not provided in TR-* primHarald Welte1-8/+28
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-31TCO: make sure transaciton IDs are always converted from binary to intHarald Welte1-107/+110
2012-01-31DHA: Always store TR-* record in state.state, not TC-*Harald Welte1-15/+18
2012-01-31DHA: Use incoming DialogueID from user as Transaction ID in TR sub-layerHarald Welte1-2/+3
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-31CCO: Use empty list [] instead of indefined for empty state.componentsHarald Welte1-1/+1
2012-01-31CCO: remove dead codeHarald Welte1-5/+0
2012-01-31CCO: include DialogueID in user primitives; correctly convert InvokeIDHarald Welte1-29/+42
2012-01-31DHA: work around TCAP implementations that forget tho send the id-as-dialogueHarald Welte1-1/+3
2012-01-30DHA: Make sure to generate TC-END.ind to TC-UserHarald Welte1-23/+36
2012-01-30tcap_sup: add commentHarald Welte1-0/+1
2012-01-30ISM: terminate gracefully if 'termiante' event receivedHarald Welte1-5/+5
2012-01-30CCO: handle 'dialogue-terminated' gracefullyHarald Welte1-1/+8
2012-01-30DHA: handle TR-END.indication from TSLHarald Welte1-1/+34
2012-01-30TSM: fix incoming handling of Continue/End/AbortHarald Welte1-3/+4