Commit Graph

290 Commits

Author SHA1 Message Date
Harald Welte acb8c2c0e2 don't raise exception in case of MSC->MGW IAM 2011-01-21 18:37:04 +01:00
Harald Welte 49ec10e588 activate the first IAM rewrite for MSRN 2011-01-21 18:37:04 +01:00
Harald Welte 646074c48e No longer abort if the Tx data is != the Rx data 2011-01-21 18:37:04 +01:00
Harald Welte ed4c9ea547 Add codec for 'default' messages with no fixed and no variable part 2011-01-21 18:37:04 +01:00
Harald Welte aca4edc035 Move actual packet manipulation code to mgw_nat.erl 2011-01-21 18:37:04 +01:00
Harald Welte 4c5e10d7f8 Add code to actually replace the prefix of the called party number in ISUP IAM 2011-01-21 18:37:04 +01:00
Harald Welte 548f93b7a6 Make sure Optional part ends with 'End of options' zero-octet 2011-01-21 18:37:03 +01:00
Harald Welte d1cb16f0b1 Make sure a 'Variable Fixed' parameter is not re-encoded as Option again 2011-01-21 18:37:03 +01:00
Harald Welte efddf3dd2f use 'external' function call to allow runtime code-reload 2011-01-21 18:37:03 +01:00
Harald Welte bdc7a5c83b print error messages in case of SCTP disconnect
And try to use the ISUP encoder on IAM messages
2011-01-21 18:37:03 +01:00
Harald Welte f48736bce2 [ISUP] more ISUP message encoding routines 2011-01-21 14:34:32 +01:00
Harald Welte 1dc9e53ea2 Actually call the ISUP parser 2011-01-21 14:32:12 +01:00
Harald Welte 86494e85d1 fix offsets in parsing IAM and REL messages 2011-01-21 14:32:05 +01:00
Harald Welte 84cc60d7ab [ISUP] more encoding/decoding routines 2011-01-18 18:25:53 +01:00
Harald Welte d17e75a5f9 initial import of SCTP handler for rewriting messages 2011-01-18 18:25:20 +01:00
Harald Welte 9c9553ca14 M2UA: various fixes in the parser and encoder, mostly related to padding 2011-01-18 18:24:09 +01:00
Harald Welte 01f8ea3ca0 ISUP: make it compile, parses IAM message correctly 2011-01-17 21:30:42 +01:00
Harald Welte de30a87914 Some more ISUP decoding and encoding routines, mostly for phone numbers 2011-01-16 17:12:56 +01:00
Harald Welte 50a44c25e2 Add some unfinished ISUP decoder routines 2011-01-15 21:39:20 +01:00
Harald Welte 1fbcd1c88b Add some simplistic MTP3 parsing/encoding functions 2011-01-15 20:51:53 +01:00
Harald Welte 1f6a035890 Add Erlang M2UA decoding and encoding routines 2011-01-15 20:07:45 +01:00
Harald Welte 715b5f4a0a SCOC receives a #sccp_msg as #primitive.parameters, not another #primitive 2010-12-20 14:10:05 +01:00
Harald Welte a609096816 SCRC: fix ets lookup for SCOC Pid 2010-12-20 14:09:45 +01:00
Harald Welte 56ee7a6bbf SCCP Codec: Consistently indicate all LocalReferences as big-endian 2010-12-20 13:34:32 +01:00
Harald Welte 9ab8010b2c OCRC-CONNECTION_MSG.req: send _encoded_ message to MTP 2010-12-20 13:34:03 +01:00
Harald Welte 13688ae40b sccp user: Consistently use the IPA StreamID specified by caller 2010-12-20 13:27:00 +01:00
Harald Welte a813fe0f5d SCRC: fix ets:insert_new() arguments 2010-12-20 13:26:46 +01:00
Harald Welte ed26689817 SCRC: Forward OCRC-CONNECTION_MSG.req via MTP-TRANSFER.req 2010-12-20 12:45:25 +01:00
Harald Welte 9a8f50bbfa SCRC: Forward incoming connection oriented msgs via RCOC-CONNECTION.ind to SCOC 2010-12-20 12:44:15 +01:00
Harald Welte fba08e471e SCOC: Implement sending the IT message via OCRC-CONNECTION.req 2010-12-20 12:40:00 +01:00
Harald Welte 2430236266 SCOC: return the {next_state, ... } tuple always with LoopData at the end 2010-12-20 12:39:17 +01:00
Harald Welte da95baa0f0 SCOC: remove lots of warnings about unused variables 2010-12-20 12:38:34 +01:00
Harald Welte 09b43993ef SCCP codec: consistently use seq_segm, not segm_seq 2010-12-20 12:21:03 +01:00
Harald Welte c0696b0180 SCCP codec: Add encoding routines for more message types 2010-12-20 00:09:37 +01:00
Harald Welte 95a79dcc3c Add new SCOC instances to the connection table
FIXME: we actually have delete entries from it later...
2010-12-19 23:07:42 +01:00
Harald Welte 176e28c143 Import (heavily modified) ipa_proto implementation from osmo-map-masq
The local changes here need to be synchronized back to the osmo-map-masq
2010-12-19 22:56:58 +01:00
Harald Welte 5032f4feaa add .gitignore file 2010-12-19 22:56:43 +01:00
Harald Welte 5f0738b598 add missing sccp.hrl header file 2010-12-19 22:56:07 +01:00
Harald Welte d42d3e3788 Add AGPLv3 license text to the program 2010-12-19 22:54:33 +01:00
Harald Welte 033cef0766 initial commit of Erlang SCCP implementation
This code is my humble attempt to implement the most important
parts of the Q.71x specifcations in Erlang.  The process tree
is trying to model the SCCP reference model as closely as psosible.

The SCRC and SCOC entities are implemented as OTP gen_fsm behavior.

SCLC is not implemented as separate state machine to reduce the number
of processes and message passing between them

SCMC is not implemented at all.

Each MTP (or other transport link) has one SCRC instance and as many
SCOC instances as there are connection-oriented SCCP sessions on this link.

There is no support for Global Title Translation (GTT) as of now.
2010-12-19 22:47:14 +01:00