summaryrefslogtreecommitdiffstats
path: root/bsc-nat
AgeCommit message (Collapse)AuthorFilesLines
2019-04-25RAN_Emulation: Modularize protocol supportHarald Welte4-2/+4
The RAN_Emulation currently unconditionally provides BSSAP and MGCP support. Let's re-structure the code so that support for those protocols is now possible to enable/disable at compile time. This patch is in preparation of introducing RANAP support in RAN_Emulation. Change-Id: Id53ba3ff05f9946230e0e4a759245de14a0f9fbd Related: OS#2856
2019-04-21Rename BSSMAP_Emulation -> RAN_EmulationHarald Welte5-33/+33
So far, BSSMAP_Emulation supported only a transport over BSSMAP. However, we soon intend to merge support for RANAP in order to simulate RANAP/Iu connections as well as BSSMAP. Let's start by renaming some of the existing types/functions/ports/modules without introducing any functional changes just yet. Related: OS#2857, OS#2856 Change-Id: Iecbcb0c6c136baad9460eca40606bb4010d8882d
2019-03-29bsc-nat: Add sample bsc-nat config for testDaniel Willmann2-0/+86
Change-Id: I0ab3a4fb66201cd134238f5efcf6ff80033011e3
2019-03-29bsc-nat: Use id when creating componentsDaniel Willmann1-2/+2
Change-Id: I2c130d74405cef2b9aa1f9c0a2122fd70aa9cc62
2019-03-29bsc-nat: Add default module parametersDaniel Willmann1-11/+11
Change-Id: I800ebe0f33cf7c86eea65d2e186c6af12fee6db7
2019-03-29bsc-nat: Use BSCx as token for BSC no xDaniel Willmann1-1/+3
Change-Id: I27cf1a2f5c8a55eb9883ac9430e73c95dded9b7b
2019-03-29bsc_nat: Wait for bsc-nat to connect to MSC before connecting the BSCDaniel Willmann1-0/+2
Change-Id: Ic02ce9bd46cab7e6d4833b1d838c334e377f7d50
2019-03-29bsc-nat: Fix errors due to bit rotDaniel Willmann4-4/+11
Change-Id: I79f3b1b74c9f6f8769a5d71fde04847435f3f345
2019-03-29Rename IPA_Test->BSCNAT_Tests and get proper cfg filesDaniel Willmann4-9/+31
Change-Id: I937d2aa1abfcb302dfb529ac8be75dcd269c46e2
2018-10-24Add Misc_Helpers.ttcn to centralize TTCN3 shutdown handlingDaniel Willmann1-1/+1
This function can now be called from anywhere to try and safely shutdown a testcase. It is not optimal as we can't call "all component.stop" from outside the mtc, but without any proper and orderly shutdown handling of all our emulation components I believe this is the best we can do. To use it: import from Misc_Helpers all; in your module and then call Misc_Helpers.f_shutdown(__BFILE__, __LINE__); You can also pass the function a verdict and a message and it will take care of calling setverdict, but beware of the following: While setverdict would accept any number of arguments as log message and convert them to a log string f_shutdown expects one charstring. It's possible to use the log2str function to use the log arguments in setverdict for f_shutdown, for example setverdict(fail, "Template didn't match: ", tmpl_foo); would become Misc_Helpers.f_shutdown(__BFILE__, __LINE__, fail, log2str("Template didn't match: ", tmpl_foo)); Change-Id: I84d1aa6732f6b748d2bfdeac8f6309023717f267
2018-05-23Print more self-explanatory error message on bind/connect failuresHarald Welte1-0/+4
When sockets cannot be bound or connected, the existing TTCN-3 code prints the following rather cryptic error messages: "IPA-CTRL-IPA(47)@f70ff1fd5cfd: Dynamic test case error: Using the value of an optional field containing omit. (Transport endpoint is not connected)" The "Transport endpoint is not connected" sort-of gives it away, but let's make it more explicit by introducing explicit checks for the res.connId and manual setverdict(fail) statements with proper error message. Change-Id: Id22a1b5189d81c4fca03d5e7aff60ffdd1ad56bf
2018-03-21don't use setverdict(inconc) anymore. Use 'fail' at all timesHarald Welte1-1/+1
The problem is that Junit-XML doesn't have a mapping for inconclusive results, and hence they show up as 'passed'. By introducing this change, we make sure all tests that don't pass show up as failed. Change-Id: Iddd13d0055c91f9bd304ce9833fba0485abf4c4e
2018-03-18Remove M3UA/MTP3/SCCP code from this repo, use upstream reposHarald Welte2-4/+3
Originally, this code was not yet in an official upstream git repo. However, it has been for many months, so let's remove our local copy and use upstream git repositories like for all the other modules. Change-Id: I2c616fb865df32cfec323d42e5d0d06de40c497b
2018-03-16ignore results of .ttcnpp filesNeels Hofmeyr1-0/+2
Add another macro ignore_pp_results to gen_links.sh.inc and call from all gen_links.sh files, to add results of *.ttcnpp files, i.e. generated *.ttcn files, to .gitignore. Change-Id: Ic7fb176226771212d7700dafaf27ac71f12a4a61
2018-03-16gen_links.sh: auto-generate .gitignore files to ignore symlinksNeels Hofmeyr1-1/+1
In each subdir that is a target for symlinks, automatically ignore the results of gen_links(): - At the top of gen_links.sh.inc, clear the .gitignore. - In the loop, add each link name to the local .gitignore. - In selected gen_links.sh, there is also a "manual" link creationg. So that this also ends up in the local .gitignore, have the link creation as separate gen_link() macro which at the same time adds to ./.gitignore. - in the root .gitignore, ignore all the subdirs' generated */.gitignore files. Change-Id: I73c11fe8362358bf7e1bdf0e1be53399b5d3351b
2018-03-16fix gen_links.sh: don't include source dir as link targetNeels Hofmeyr1-8/+1
First of all, use one common place to define the gen_links() macro, in gen_links.sh.inc. In this new file, add a 'shift' to exclude the $DIR arg from also appearing in $FILES. This prevents the following wrong symlinks in the source dirs: M3UA_CNL113537/src/src MTP3asp_CNL113337/src/src SCCP_CNL113341/src/src Change-Id: Ia8493e77df1ba8723f2c5d2a49816247b0fb55f7
2018-02-20IPA_Emulation: Make dependencies to RSL/MGCP/SCCP/GSUP conditionalHarald Welte2-2/+4
Let's use the preprocessor to avoid IPA_Emulation pulling *all* dependencies into each and any of our projects. The code readability suffers a bit from the many #ifdefs, but compilation speed increases if we don't have to pull in all those (recursive) dependencies. After all, a BTS test case will never need SCCP, GSUP or MGCP. Change-Id: Ic0231adbd2171214de133d26b3fbf36130ee8aa0
2018-02-05Don't symlink non-existent fileMax1-1/+1
Change-Id: I10309f07fb207c027703f0b43a478c152a029b6d
2018-01-24MSC_Tests: Use enum instead of magic numbers for CM_SERVICE_TYPEHarald Welte1-1/+1
Change-Id: Ic90b4a0aa47821877a2d3566606b9c9dd5919968
2018-01-21BSSMAP_Emulation: Decode DTAPHarald Welte2-2/+6
It's quite cumbersome if the user of the BSSMAP_Emulation (the ConnHdlr) will have to manually decode the DTAP in every BSSAP/DTAP message he receives (and encode on the transmit side). Let's introduce a new optional mode in which the DTAP messages are already decoded for more convenient matching inside the ConnHdlr. Change-Id: I35cd4ea78aca0ce7c7d745e082d7289882c11e81
2018-01-17Add "SourceInfoFormat := Single;" to all test configsHarald Welte1-0/+1
This will make sure that all log files will contain information about the .ttcn source file name and line number that has caused the log, which is extremely useful during debugging. Change-Id: Id6785757f20279ba84b34747f878baf67d065b20
2017-12-28GSUP Support and first test against OsmoHLRHarald Welte1-1/+1
Change-Id: Idd7a6aca1ab193da39294f49a3adc4c1cd7cecff
2017-12-17BSSMAP_Emulation: use BSSAP_CodecPortHarald Welte5-5/+8
So far, BSSMAP_Emulation used the SCCPasp_SP_PORT directly, explicitly calling BSSAP encode/decode functions while processing the primitives. Let's clean this up and use the BSSAP_CodecPort which has meanwhile been developed as a dual-faced port that can be stacked between SCCPasp and the user to avoid any manual encode/decode function calls. Change-Id: Icded789d18f3469f74e16f552df2c7ac44ac4294
2017-12-15BSSMAP_Templates: Enable use for AoIP, not just E1-CICHarald Welte1-2/+2
Change-Id: I421ade4ae1c0c19c9c2b1172cdcf8d6c4cd55205
2017-12-13generalize shared code from regen_makefile.sh into shared helper scriptHarald Welte1-9/+1
Change-Id: I86a738420851a7d9e3bdb2671f6862c3d505a4ba
2017-12-13regen_makefile.sh: Fix TITAN 6.1.0 supportHarald Welte1-1/+1
When introducing the rewriting for 6.3.0 we broke the 6.1.0 support. Now the result should build on Debian with both 6.1.0 and 6.3.0 Change-Id: I263a6abd2d9eb15ce5778ef8dbfcdac2a228b77d
2017-12-12Makefile: clone dependencies into 'deps' folderHarald Welte1-1/+1
We used to rely on out-of-tree git clones to be prepared by the user. This commit changes the system to make sure we clone all git repos we depend upon into the 'deps' folder, and then setup the symlinks to that folder. As a result, we should be able to support self-contained builds using the makefiles in this repo.
2017-12-12bsc-test: Fix build in laforge/bsc branchHarald Welte1-1/+1
2017-12-09mgw-nat: Make it build again (library code now has more dependencies)Harald Welte1-1/+1
2017-12-08regen_makefile.sh: Add Regex's for TITAN 6.3.0Harald Welte1-0/+4
The TITAN 6.3.0 makefile generator needs some new regular expressions for patching the generated makefile to work on Debian
2017-11-30bsc-nat: Wait for the second MDCX in the BSC_MS conn handlerDaniel Willmann1-1/+10
The bsc-nat sends another MDCX so account for that in the state machine
2017-11-25rename 'ipa' directory to 'bsc-nat'Harald Welte9-0/+808