summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xbsc-nat/gen_links.sh2
-rwxr-xr-xbsc-nat/regen_makefile.sh4
-rwxr-xr-xbsc/gen_links.sh2
-rwxr-xr-xbsc/regen_makefile.sh4
-rw-r--r--hlr/Makefile193
-rwxr-xr-xhlr/gen_links.sh12
-rwxr-xr-xhlr/regen_makefile.sh4
-rw-r--r--library/IPA_Emulation.ttcnpp (renamed from library/IPA_Emulation.ttcn)123
-rwxr-xr-xmsc/gen_links.sh4
-rwxr-xr-xmsc/regen_makefile.sh4
-rwxr-xr-xregen-makefile.sh6
-rw-r--r--selftest/Selftest.ttcn5
-rwxr-xr-xselftest/gen_links.sh7
-rwxr-xr-xselftest/regen_makefile.sh4
-rwxr-xr-xsgsn/gen_links.sh15
-rwxr-xr-xsgsn/regen_makefile.sh4
16 files changed, 128 insertions, 265 deletions
diff --git a/bsc-nat/gen_links.sh b/bsc-nat/gen_links.sh
index d27c0927..e9280e68 100755
--- a/bsc-nat/gen_links.sh
+++ b/bsc-nat/gen_links.sh
@@ -55,5 +55,5 @@ FILES="RTP_EncDec.cc RTP_Types.ttcn"
gen_links $DIR $FILES
DIR=../library
-FILES="General_Types.ttcn Osmocom_Types.ttcn GSM_Types.ttcn IPA_Types.ttcn IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn IPA_CodecPort_CtrlFunctDef.cc IPA_Emulation.ttcn L3_Templates.ttcn BSSMAP_Templates.ttcn BSSMAP_Emulation.ttcn MGCP_Types.ttcn MGCP_Templates.ttcn MGCP_CodecPort.ttcn MGCP_CodecPort_CtrlFunct.ttcn MGCP_CodecPort_CtrlFunctDef.cc RSL_Types.ttcn Osmocom_CTRL_Types.ttcn Osmocom_CTRL_Functions.ttcn BSSAP_CodecPort.ttcn GSUP_Types.ttcn"
+FILES="General_Types.ttcn Osmocom_Types.ttcn GSM_Types.ttcn IPA_Types.ttcn IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn IPA_CodecPort_CtrlFunctDef.cc IPA_Emulation.ttcnpp L3_Templates.ttcn BSSMAP_Templates.ttcn BSSMAP_Emulation.ttcn MGCP_Types.ttcn MGCP_Templates.ttcn MGCP_CodecPort.ttcn MGCP_CodecPort_CtrlFunct.ttcn MGCP_CodecPort_CtrlFunctDef.cc Osmocom_CTRL_Types.ttcn Osmocom_CTRL_Functions.ttcn BSSAP_CodecPort.ttcn"
gen_links $DIR $FILES
diff --git a/bsc-nat/regen_makefile.sh b/bsc-nat/regen_makefile.sh
index a3c62431..3d17cfe1 100755
--- a/bsc-nat/regen_makefile.sh
+++ b/bsc-nat/regen_makefile.sh
@@ -2,6 +2,8 @@
MAIN=IPA_Test.ttcn
-FILES="*.ttcn SCCP_EncDec.cc IPA_CodecPort_CtrlFunctDef.cc IPL4asp_PT.cc IPL4asp_discovery.cc TCCConversion.cc TCCInterface.cc RTP_EncDec.cc SDP_EncDec.cc *.c MGCP_CodecPort_CtrlFunctDef.cc"
+FILES="*.ttcn *.ttcnpp SCCP_EncDec.cc IPA_CodecPort_CtrlFunctDef.cc IPL4asp_PT.cc IPL4asp_discovery.cc TCCConversion.cc TCCInterface.cc RTP_EncDec.cc SDP_EncDec.cc *.c MGCP_CodecPort_CtrlFunctDef.cc"
+
+export CPPFLAGS_TTCN3="-DIPA_EMULATION_SCCP -DIPA_EMULATION_MGCP"
../regen-makefile.sh $MAIN $FILES
diff --git a/bsc/gen_links.sh b/bsc/gen_links.sh
index c80ae649..a173aac1 100755
--- a/bsc/gen_links.sh
+++ b/bsc/gen_links.sh
@@ -80,5 +80,5 @@ FILES="TELNETasp_PT.cc TELNETasp_PT.hh TELNETasp_PortType.ttcn"
gen_links $DIR $FILES
DIR=../library
-FILES="General_Types.ttcn Osmocom_Types.ttcn GSM_Types.ttcn Osmocom_VTY_Functions.ttcn Native_Functions.ttcn Native_FunctionDefs.cc IPA_Types.ttcn IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn IPA_CodecPort_CtrlFunctDef.cc IPA_Emulation.ttcn L3_Templates.ttcn BSSMAP_Templates.ttcn BSSMAP_Emulation.ttcn RLCMAC_CSN1_Types.ttcn GSM_RR_Types.ttcn RSL_Types.ttcn RSL_Emulation.ttcn MGCP_Emulation.ttcn MGCP_Types.ttcn MGCP_Templates.ttcn MGCP_CodecPort.ttcn MGCP_CodecPort_CtrlFunct.ttcn MGCP_CodecPort_CtrlFunctDef.cc BSSAP_CodecPort.ttcn BSSAP_Adapter.ttcn Osmocom_CTRL_Types.ttcn Osmocom_CTRL_Functions.ttcn Osmocom_CTRL_Adapter.ttcn RTP_CodecPort.ttcn RTP_CodecPort_CtrlFunct.ttcn RTP_CodecPort_CtrlFunctDef.cc RTP_Emulation.ttcn IuUP_Types.ttcn IuUP_EncDec.cc IuUP_Emulation.ttcn GSUP_Types.ttcn"
+FILES="General_Types.ttcn Osmocom_Types.ttcn GSM_Types.ttcn Osmocom_VTY_Functions.ttcn Native_Functions.ttcn Native_FunctionDefs.cc IPA_Types.ttcn IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn IPA_CodecPort_CtrlFunctDef.cc IPA_Emulation.ttcnpp L3_Templates.ttcn BSSMAP_Templates.ttcn BSSMAP_Emulation.ttcn RLCMAC_CSN1_Types.ttcn GSM_RR_Types.ttcn RSL_Types.ttcn RSL_Emulation.ttcn MGCP_Emulation.ttcn MGCP_Types.ttcn MGCP_Templates.ttcn MGCP_CodecPort.ttcn MGCP_CodecPort_CtrlFunct.ttcn MGCP_CodecPort_CtrlFunctDef.cc BSSAP_CodecPort.ttcn BSSAP_Adapter.ttcn Osmocom_CTRL_Types.ttcn Osmocom_CTRL_Functions.ttcn Osmocom_CTRL_Adapter.ttcn RTP_CodecPort.ttcn RTP_CodecPort_CtrlFunct.ttcn RTP_CodecPort_CtrlFunctDef.cc RTP_Emulation.ttcn IuUP_Types.ttcn IuUP_EncDec.cc IuUP_Emulation.ttcn "
gen_links $DIR $FILES
diff --git a/bsc/regen_makefile.sh b/bsc/regen_makefile.sh
index 0b8e1fa8..e9eb8084 100755
--- a/bsc/regen_makefile.sh
+++ b/bsc/regen_makefile.sh
@@ -2,6 +2,8 @@
MAIN=BSC_Tests.ttcn
-FILES="*.ttcn IPA_CodecPort_CtrlFunctDef.cc IPL4asp_PT.cc IPL4asp_discovery.cc TCCConversion.cc TCCInterface.cc SCTPasp_PT.cc RTP_EncDec.cc SDP_EncDec.cc RTP_CodecPort_CtrlFunctDef.cc MGCP_CodecPort_CtrlFunctDef.cc IuUP_EncDec.cc Native_FunctionDefs.cc TELNETasp_PT.cc *.c"
+FILES="*.ttcn *.ttcnpp IPA_CodecPort_CtrlFunctDef.cc IPL4asp_PT.cc IPL4asp_discovery.cc TCCConversion.cc TCCInterface.cc SCTPasp_PT.cc RTP_EncDec.cc SDP_EncDec.cc RTP_CodecPort_CtrlFunctDef.cc MGCP_CodecPort_CtrlFunctDef.cc IuUP_EncDec.cc Native_FunctionDefs.cc TELNETasp_PT.cc *.c"
+
+export CPPFLAGS_TTCN3="-DIPA_EMULATION_RSL -DIPA_EMULATION_MGCP"
../regen-makefile.sh $MAIN $FILES
diff --git a/hlr/Makefile b/hlr/Makefile
deleted file mode 100644
index 3f0952ae..00000000
--- a/hlr/Makefile
+++ /dev/null
@@ -1,193 +0,0 @@
-# This Makefile was generated by the Makefile Generator
-# of the TTCN-3 Test Executor version CRL 113 200/6 R3A
-# for Harald Welte (laforge@nataraja) on Thu Dec 28 17:35:00 2017
-
-# Copyright (c) 2000-2017 Ericsson Telecom AB
-
-# The following make commands are available:
-# - make, make all Builds the executable test suite.
-# - make archive Archives all source files.
-# - make check Checks the semantics of TTCN-3 and ASN.1modules.
-# - make port Generates port skeletons.
-# - make clean Removes all generated files.
-# - make compile Translates TTCN-3 and ASN.1 modules to C++.
-# - make dep Creates/updates dependency list.
-# - make executable Builds the executable test suite.
-# - make library Builds the library archive.
-# - make objects Builds the object files without linking the executable.
-# - make shared_objects Builds the shared object files without linking the executable.
-#
-# Set these variables...
-#
-
-# The path of your TTCN-3 Test Executor installation:
-# Uncomment this line to override the environment variable.
-ifndef TTCN3_DIR
-TTCN3_DIR = /usr
-endif
-
-# Your platform: (SOLARIS, SOLARIS8, LINUX, FREEBSD or WIN32)
-PLATFORM = LINUX
-
-# Your C++ compiler:
-# (if you change the platform, you may need to change the compiler)
-CXX = g++
-
-# Flags for the C++ preprocessor (and makedepend as well):
-CPPFLAGS = -D$(PLATFORM) -DMAKEDEPEND_RUN -I$(TTCN3_DIR)/include -I/usr/include/titan
-
-# Flags for the C++ compiler:
-CXXFLAGS = -Wall -fPIC
-
-# Flags for the linker:
-LDFLAGS = -L /usr/lib/titan -fPIC
-
-ifeq ($(PLATFORM), WIN32)
-# Silence linker warnings.
-LDFLAGS += -Wl,--enable-auto-import,--enable-runtime-pseudo-reloc
-endif
-
-# Utility to create library files
-AR = ar
-ARFLAGS =
-
-# Flags for the TTCN-3 and ASN.1 compiler:
-COMPILER_FLAGS = -L
-
-# Execution mode: (either ttcn3 or ttcn3-parallel)
-TTCN3_LIB = ttcn3-parallel-dynamic
-
-# The path of your libxml2 installation:
-# If you do not have your own one, leave it unchanged.
-XMLDIR = $(TTCN3_DIR)
-
-# Directory to store the archived source files:
-# Note: you can set any directory except ./archive
-ARCHIVE_DIR = backup
-
-#
-# You may change these variables. Add your files if necessary...
-#
-
-# TTCN-3 modules of this project:
-TTCN3_MODULES = GSUP_Test.ttcn GSM_Types.ttcn GSUP_Types.ttcn General_Types.ttcn IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn IPA_Emulation.ttcn IPA_Types.ttcn IPL4asp_Functions.ttcn IPL4asp_PortType.ttcn IPL4asp_Types.ttcn MGCP_CodecPort.ttcn MGCP_Types.ttcn MTP3asp_PortType.ttcn MTP3asp_Types.ttcn Osmocom_CTRL_Types.ttcn Osmocom_Types.ttcn RSL_Types.ttcn SDP_Types.ttcn Socket_API_Definitions.ttcn TCCConversion_Functions.ttcn TCCInterface_Functions.ttcn
-
-# ASN.1 modules of this project:
-ASN1_MODULES =
-
-# C++ source & header files generated from the TTCN-3 & ASN.1 modules of
-# this project:
-GENERATED_SOURCES = GSUP_Test.cc GSM_Types.cc GSUP_Types.cc General_Types.cc IPA_CodecPort.cc IPA_CodecPort_CtrlFunct.cc IPA_Emulation.cc IPA_Types.cc IPL4asp_Functions.cc IPL4asp_PortType.cc IPL4asp_Types.cc MGCP_CodecPort.cc MGCP_Types.cc MTP3asp_PortType.cc MTP3asp_Types.cc Osmocom_CTRL_Types.cc Osmocom_Types.cc RSL_Types.cc SDP_Types.cc Socket_API_Definitions.cc TCCConversion_Functions.cc TCCInterface_Functions.cc
-GENERATED_HEADERS = GSUP_Test.hh GSM_Types.hh GSUP_Types.hh General_Types.hh IPA_CodecPort.hh IPA_CodecPort_CtrlFunct.hh IPA_Emulation.hh IPA_Types.hh IPL4asp_Functions.hh IPL4asp_PortType.hh IPL4asp_Types.hh MGCP_CodecPort.hh MGCP_Types.hh MTP3asp_PortType.hh MTP3asp_Types.hh Osmocom_CTRL_Types.hh Osmocom_Types.hh RSL_Types.hh SDP_Types.hh Socket_API_Definitions.hh TCCConversion_Functions.hh TCCInterface_Functions.hh
-
-# C/C++ Source & header files of Test Ports, external functions and
-# other modules:
-USER_SOURCES = IPA_CodecPort_CtrlFunctDef.cc IPL4asp_PT.cc IPL4asp_discovery.cc TCCConversion.cc TCCInterface.cc SDP_EncDec.cc MGCP_CodecPort_CtrlFunctDef.cc SDP_parse_.tab.c lex.SDP_parse_.c
-USER_HEADERS = IPL4asp_PT.hh SDP_parse_.tab.h
-
-# Shared object files of this project:
-SHARED_OBJECTS = GSUP_Test.so GSM_Types.so GSUP_Types.so General_Types.so IPA_CodecPort.so IPA_CodecPort_CtrlFunct.so IPA_Emulation.so IPA_Types.so IPL4asp_Functions.so IPL4asp_PortType.so IPL4asp_Types.so MGCP_CodecPort.so MGCP_Types.so MTP3asp_PortType.so MTP3asp_Types.so Osmocom_CTRL_Types.so Osmocom_Types.so RSL_Types.so SDP_Types.so Socket_API_Definitions.so TCCConversion_Functions.so TCCInterface_Functions.so IPA_CodecPort_CtrlFunctDef.so IPL4asp_PT.so IPL4asp_discovery.so TCCConversion.so TCCInterface.so SDP_EncDec.so MGCP_CodecPort_CtrlFunctDef.so SDP_parse_.tab.so lex.SDP_parse_.so
-
-# Object files of this project that are needed for the executable test suite:
-OBJECTS = $(GENERATED_OBJECTS) $(USER_OBJECTS)
-
-GENERATED_OBJECTS = GSUP_Test.o GSM_Types.o GSUP_Types.o General_Types.o IPA_CodecPort.o IPA_CodecPort_CtrlFunct.o IPA_Emulation.o IPA_Types.o IPL4asp_Functions.o IPL4asp_PortType.o IPL4asp_Types.o MGCP_CodecPort.o MGCP_Types.o MTP3asp_PortType.o MTP3asp_Types.o Osmocom_CTRL_Types.o Osmocom_Types.o RSL_Types.o SDP_Types.o Socket_API_Definitions.o TCCConversion_Functions.o TCCInterface_Functions.o
-
-USER_OBJECTS = IPA_CodecPort_CtrlFunctDef.o IPL4asp_PT.o IPL4asp_discovery.o TCCConversion.o TCCInterface.o SDP_EncDec.o MGCP_CodecPort_CtrlFunctDef.o SDP_parse_.tab.o lex.SDP_parse_.o
-
-# Other files of the project (Makefile, configuration files, etc.)
-# that will be added to the archived source files:
-OTHER_FILES = Makefile
-
-# The name of the executable test suite:
-EXECUTABLE = GSUP_Test
-
-
-
-LIBRARY = lib$(EXECUTABLE).so
-
-TARGET = $(EXECUTABLE)
-
-#
-# Do not modify these unless you know what you are doing...
-# Platform specific additional libraries:
-#
-SOLARIS_LIBS = -lsocket -lnsl -lxml2
-SOLARIS8_LIBS = -lsocket -lnsl -lxml2
-LINUX_LIBS = -lxml2
-FREEBSD_LIBS = -lxml2
-WIN32_LIBS = -lxml2
-
-#
-# Rules for building the executable...
-#
-
-all: $(TARGET) ;
-
-shared_objects: $(SHARED_OBJECTS) ;
-
-executable: $(EXECUTABLE) ;
-
-library: $(LIBRARY) ;
-
-objects: $(OBJECTS) compile;
-
-$(EXECUTABLE): $(SHARED_OBJECTS)
- if $(CXX) $(LDFLAGS) -o $@ -Wl,--no-as-needed $(SHARED_OBJECTS) \
- -L$(TTCN3_DIR)/lib -l$(TTCN3_LIB) \
- -L$(OPENSSL_DIR)/lib -lcrypto \
- -L$(XMLDIR)/lib $($(PLATFORM)_LIBS); \
- then : ; else $(TTCN3_DIR)/bin/titanver $(OBJECTS); exit 1; fi
-
-$(LIBRARY): $(OBJECTS)
- $(CXX) -shared -o $@ $(OBJECTS)
-
-.cc.o .c.o:
- $(CXX) -c $(CPPFLAGS) $(CXXFLAGS) -o $@ $<
-
-%.so: %.o
- $(CXX) -shared -o $@ $<
-
-$(GENERATED_SOURCES) $(GENERATED_HEADERS): compile
- @if [ ! -f $@ ]; then rm -f compile; $(MAKE) compile; fi
-
-check: $(TTCN3_MODULES) $(ASN1_MODULES)
- $(TTCN3_DIR)/bin/ttcn3_compiler -s $(COMPILER_FLAGS) \
- $(TTCN3_MODULES) $(PREPROCESSED_TTCN3_MODULES) $(ASN1_MODULES)
-
-port: $(TTCN3_MODULES) $(ASN1_MODULES)
- $(TTCN3_DIR)/bin/ttcn3_compiler -t $(COMPILER_FLAGS) \
- $(TTCN3_MODULES) $(PREPROCESSED_TTCN3_MODULES) $(ASN1_MODULES)
-
-compile: $(TTCN3_MODULES) $(ASN1_MODULES)
- $(TTCN3_DIR)/bin/ttcn3_compiler $(COMPILER_FLAGS) \
- $(TTCN3_MODULES) $(ASN1_MODULES) - $?
- touch $@
-
-clean:
- -rm -f $(EXECUTABLE) $(LIBRARY) $(OBJECTS) $(GENERATED_HEADERS) \
- $(GENERATED_SOURCES) $(SHARED_OBJECTS) compile \
- tags *.log
-
-dep: $(GENERATED_SOURCES) $(USER_SOURCES) ;
- makedepend $(CPPFLAGS) -DMAKEDEPEND_RUN $(GENERATED_SOURCES) $(USER_SOURCES)
-
-archive:
- mkdir -p $(ARCHIVE_DIR)
- tar -cvhf - $(TTCN3_MODULES) $(ASN1_MODULES) \
- $(USER_HEADERS) $(USER_SOURCES) $(OTHER_FILES) \
- | gzip >$(ARCHIVE_DIR)/`basename $(TARGET) .exe`-`date '+%y%m%d-%H%M'`.tgz
-
-diag:
- $(TTCN3_DIR)/bin/ttcn3_compiler -v 2>&1
- $(TTCN3_DIR)/bin/mctr_cli -v 2>&1
- $(CXX) -v 2>&1
- @echo TTCN3_DIR=$(TTCN3_DIR)
- @echo OPENSSL_DIR=$(OPENSSL_DIR)
- @echo XMLDIR=$(XMLDIR)
- @echo PLATFORM=$(PLATFORM)
-
-#
-# Add your rules here if necessary...
-#
-
diff --git a/hlr/gen_links.sh b/hlr/gen_links.sh
index 02da0ea4..8e07974e 100755
--- a/hlr/gen_links.sh
+++ b/hlr/gen_links.sh
@@ -24,15 +24,7 @@ DIR=$BASEDIR/titan.TestPorts.IPL4asp/src
FILES="IPL4asp_Functions.ttcn IPL4asp_PT.cc IPL4asp_PT.hh IPL4asp_PortType.ttcn IPL4asp_Types.ttcn IPL4asp_discovery.cc IPL4asp_protocol_L234.hh"
gen_links $DIR $FILES
-DIR=$BASEDIR/titan.ProtocolModules.SDP/src
-FILES="SDP_EncDec.cc SDP_Types.ttcn SDP_parse_.tab.c SDP_parse_.tab.h SDP_parse_parser.h SDP_parser.l
-SDP_parser.y lex.SDP_parse_.c"
-gen_links $DIR $FILES
-
-DIR=../MTP3asp_CNL113337/src
-FILES="MTP3asp_PortType.ttcn MTP3asp_Types.ttcn"
-gen_links $DIR $FILES
-
DIR=../library
-FILES="General_Types.ttcn Osmocom_Types.ttcn GSM_Types.ttcn IPA_Types.ttcn IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn IPA_CodecPort_CtrlFunctDef.cc IPA_Emulation.ttcn RSL_Types.ttcn MGCP_Types.ttcn MGCP_CodecPort.ttcn MGCP_CodecPort_CtrlFunctDef.cc Osmocom_CTRL_Types.ttcn GSUP_Types.ttcn"
+FILES="General_Types.ttcn Osmocom_Types.ttcn GSM_Types.ttcn IPA_Types.ttcn IPA_CodecPort.ttcn
+IPA_CodecPort_CtrlFunct.ttcn IPA_CodecPort_CtrlFunctDef.cc IPA_Emulation.ttcnpp Osmocom_CTRL_Types.ttcn GSUP_Types.ttcn"
gen_links $DIR $FILES
diff --git a/hlr/regen_makefile.sh b/hlr/regen_makefile.sh
index 37991a60..45fc93e1 100755
--- a/hlr/regen_makefile.sh
+++ b/hlr/regen_makefile.sh
@@ -2,6 +2,8 @@
MAIN="GSUP_Test.ttcn"
-FILES="*.ttcn IPA_CodecPort_CtrlFunctDef.cc IPL4asp_PT.cc IPL4asp_discovery.cc TCCConversion.cc TCCInterface.cc SDP_EncDec.cc MGCP_CodecPort_CtrlFunctDef.cc *.c"
+FILES="*.ttcn *.ttcnpp IPA_CodecPort_CtrlFunctDef.cc IPL4asp_PT.cc IPL4asp_discovery.cc TCCConversion.cc TCCInterface.cc"
+
+export CPPFLAGS_TTCN3="-DIPA_EMULATION_GSUP"
../regen-makefile.sh $MAIN $FILES
diff --git a/library/IPA_Emulation.ttcn b/library/IPA_Emulation.ttcnpp
index 53a86ecd..3508091b 100644
--- a/library/IPA_Emulation.ttcn
+++ b/library/IPA_Emulation.ttcnpp
@@ -20,13 +20,24 @@ import from IPA_CodecPort all;
import from IPA_CodecPort_CtrlFunct all;
import from IPL4asp_Types all;
import from IPL4asp_PortType all;
+import from Socket_API_Definitions all;
+
+#ifdef IPA_EMULATION_SCCP
import from MTP3asp_Types all;
import from MTP3asp_PortType all;
+#endif
+
+#ifdef IPA_EMULATION_RSL
import from RSL_Types all;
-import from Socket_API_Definitions all;
+#endif
+#ifdef IPA_EMULATION_MGCP
import from MGCP_Types all;
+#endif
+
+#ifdef IPA_EMULATION_GSUP
import from GSUP_Types all;
+#endif
import from Osmocom_CTRL_Types all;
@@ -69,6 +80,7 @@ template ASP_IPA_Unitdata t_ASP_IPA_UD(IpaStreamId sid, octetstring pl,
payload := pl
}
+#ifdef IPA_EMULATION_RSL
/* like ASP_IPA_Unitdata, but with RSL_Message abstract type instead of octetstring */
type record ASP_RSL_Unitdata {
IpaStreamId streamId,
@@ -85,49 +97,63 @@ template ASP_RSL_Unitdata tr_ASP_RSL_UD(IpaStreamId sid, template RSL_Message rs
rsl := rsl
}
-
template IpaStreamId t_IpaSidRSL := ( IPAC_PROTO_RSL_TRX0, IPAC_PROTO_RSL_TRX1,
IPAC_PROTO_RSL_TRX2, IPAC_PROTO_RSL_TRX3 );
+#endif
/* Client port for general IPA messages, not further decoded */
type port IPA_SP_PT message {
inout ASP_IPA_Unitdata, ASP_IPA_Event;
} with { extension "internal" }
+#ifdef IPA_EMULATION_MGCP
/* Client port for MGCP inside IPA */
type port IPA_MGCP_PT message {
inout MgcpCommand, MgcpResponse;
} with { extension "internal" }
+#endif
+#ifdef IPA_EMULATION_RSL
/* Client port for A-bis RSL inside IPA */
type port IPA_RSL_PT message {
inout ASP_RSL_Unitdata, ASP_IPA_Event;
} with { extension "internal" }
+#endif
/* Client port for CTRL inside IPA */
type port IPA_CTRL_PT message {
inout CtrlMessage, ASP_IPA_Event;
} with { extension "internal" }
+#ifdef IPA_EMULATION_GSUP
/* Client port for CTRL inside IPA */
type port IPA_GSUP_PT message {
inout GSUP_PDU, ASP_IPA_Event;
} with { extension "internal" }
+#endif
type component IPA_Emulation_CT {
/* down-facing port to IPA codec port */
port IPA_CODEC_PT IPA_PORT;
+#ifdef IPA_EMULATION_SCCP
/* up-facing port to SCCP */
port MTP3asp_SP_PT MTP3_SP_PORT;
+#endif
+#ifdef IPA_EMULATION_MGCP
/* up-facing port for MGCP */
port IPA_MGCP_PT IPA_MGCP_PORT;
+#endif
+#ifdef IPA_EMULATION_RSL
/* up-facing port for RSL */
port IPA_RSL_PT IPA_RSL_PORT;
+#endif
/* up-facing port for CTRL */
port IPA_CTRL_PT IPA_CTRL_PORT;
+#ifdef IPA_EMULATION_GSUP
/* up-facing port for GSUP */
port IPA_GSUP_PT IPA_GSUP_PORT;
+#endif
/* up-facing port for other streams */
port IPA_SP_PT IPA_SP_PORT;
@@ -190,6 +216,7 @@ function f_bind(charstring local_host, IPL4asp_Types.PortNumber local_port,
g_is_bsc_mgw := false;
}
+#ifdef IPA_EMULATION_SCCP
template ASP_MTP3_TRANSFERind ts_MTP3_XFER_ind(integer opc, octetstring data) := {
sio := { '10'B, '00'B, '0011'B },
opc := opc,
@@ -197,6 +224,7 @@ template ASP_MTP3_TRANSFERind ts_MTP3_XFER_ind(integer opc, octetstring data) :=
sls := 0,
data := data
}
+#endif
private template IpaCcmRespPart t_IdRespPart(IpaCcmIdTag tag, charstring payload) := {
@@ -206,15 +234,19 @@ private template IpaCcmRespPart t_IdRespPart(IpaCcmIdTag tag, charstring payload
}
private function f_send_IPA_EVT(template ASP_IPA_Event evt) runs on IPA_Emulation_CT {
+#ifdef IPA_EMULATION_RSL
if (IPA_RSL_PORT.checkstate("Connected")) {
IPA_RSL_PORT.send(evt);
}
+#endif
if (IPA_CTRL_PORT.checkstate("Connected")) {
IPA_CTRL_PORT.send(evt);
}
+#ifdef IPA_EMULATION_GSUP
if (IPA_GSUP_PORT.checkstate("Connected")) {
IPA_GSUP_PORT.send(evt);
}
+#endif
/* FIXME: to other ports */
}
@@ -331,11 +363,13 @@ private function f_from_asp(IPL4asp_Types.ConnectionId connId, ASP_IPA_Unitdata
return ret;
}
+#ifdef IPA_EMULATION_RSL
private function f_from_rsl(IPL4asp_Types.ConnectionId connId, ASP_RSL_Unitdata rsl_tx) return IPA_Send {
var octetstring payload := enc_RSL_Message(rsl_tx.rsl);
var IPA_Send ret := valueof(t_IPA_Send(connId, rsl_tx.streamId, payload));
return ret;
}
+#endif
/* main function to use for a client-side IPA implementation */
function main_client(charstring remote_host, IPL4asp_Types.PortNumber remote_port,
@@ -354,27 +388,30 @@ function main_server(charstring local_host, IPL4asp_Types.PortNumber local_port)
ScanEvents();
}
-private function f_mgcp_to_user(octetstring msg) runs on IPA_Emulation_CT {
- var charstring msg_ch := oct2char(msg);
- if (g_is_bsc_mgw) {
- log("============");
- log(msg_ch);
- IPA_MGCP_PORT.send(dec_MgcpCommand(msg_ch));
- } else {
- IPA_MGCP_PORT.send(dec_MgcpResponse(msg_ch));
- }
-}
-
private function f_ctrl_to_user(octetstring msg) runs on IPA_Emulation_CT {
var charstring msg_ch := oct2char(msg);
IPA_CTRL_PORT.send(dec_CtrlMessage(msg_ch));
}
+#ifdef IPA_EMULATION_GSUP
private function f_gsup_to_user(octetstring msg) runs on IPA_Emulation_CT {
var GSUP_PDU gsup := dec_GSUP_PDU(msg);
f_gsup_postprocess_decoded(gsup);
IPA_GSUP_PORT.send(gsup);
}
+#endif
+
+#ifdef IPA_EMULATION_MGCP
+private function f_mgcp_to_user(octetstring msg) runs on IPA_Emulation_CT {
+ var charstring msg_ch := oct2char(msg);
+ if (g_is_bsc_mgw) {
+ log("============");
+ log(msg_ch);
+ IPA_MGCP_PORT.send(dec_MgcpCommand(msg_ch));
+ } else {
+ IPA_MGCP_PORT.send(dec_MgcpResponse(msg_ch));
+ }
+}
private function f_mgcp_to_ud(octetstring payload) runs on IPA_Emulation_CT return ASP_IPA_Unitdata {
if (mp_ipa_mgcp_uses_osmo_ext) {
@@ -383,20 +420,29 @@ private function f_mgcp_to_ud(octetstring payload) runs on IPA_Emulation_CT retu
return valueof(t_ASP_IPA_UD(IPAC_PROTO_OSMO, payload, IPAC_PROTO_EXT_MGCP));
}
}
+#endif
/* main loop function for both client and server. 'thread' of the component */
private function ScanEvents() runs on IPA_Emulation_CT {
var IPA_RecvFrom ipa_rx;
- var ASP_IPA_Unitdata ipa_ud;
- var ASP_MTP3_TRANSFERreq mtp_req;
var ASP_Event asp_evt;
var Socket_API_Definitions.PortEvent port_evt;
+ var octetstring payload;
+ var CtrlMessage ctrl_msg;
+ var ASP_IPA_Unitdata ipa_ud;
+#ifdef IPA_EMULATION_SCCP
+ var ASP_MTP3_TRANSFERreq mtp_req;
+#endif
+#ifdef IPA_EMULATION_MGCP
var MgcpCommand mgcp_cmd;
var MgcpResponse mgcp_rsp;
- var CtrlMessage ctrl_msg;
+#endif
+#ifdef IPA_EMULATION_GSUP
var GSUP_PDU gsup_msg;
- var octetstring payload;
+#endif
+#ifdef IPA_EMULATION_RSL
var ASP_RSL_Unitdata rsl;
+#endif
/* Set function for dissecting the binary */
var f_IPL4_getMsgLen vl_f := refers(f_IPL4_fixedMsgLen);
@@ -411,31 +457,49 @@ private function ScanEvents() runs on IPA_Emulation_CT {
var PDU_IPA_CCM ccm := dec_PDU_IPA_CCM(ipa_rx.msg);
log("CCM Rx:", ccm);
f_ccm_rx(ccm);
- } case (IPAC_PROTO_SCCP) {
+ }
+#ifdef IPA_EMULATION_SCCP
+ case (IPAC_PROTO_SCCP) {
var ASP_MTP3_TRANSFERind mtp;
mtp := valueof(ts_MTP3_XFER_ind(0, ipa_rx.msg));
MTP3_SP_PORT.send(mtp);
- } case (IPAC_PROTO_MGCP_OLD) {
+ }
+#endif
+#ifdef IPA_EMULATION_MGCP
+ case (IPAC_PROTO_MGCP_OLD) {
f_mgcp_to_user(ipa_rx.msg);
- } case (t_IpaSidRSL) {
+ }
+#endif
+#ifdef IPA_EMULATION_RSL
+ case (t_IpaSidRSL) {
rsl := {
streamId := ipa_rx.streamId,
rsl := dec_RSL_Message(ipa_rx.msg)
};
IPA_RSL_PORT.send(rsl);
- } case (IPAC_PROTO_OSMO) {
+ }
+#endif
+ case (IPAC_PROTO_OSMO) {
select (ipa_rx.streamIdExt) {
+#ifdef IPA_EMULATION_MGCP
case (IPAC_PROTO_EXT_MGCP) {
f_mgcp_to_user(ipa_rx.msg);
- } case (IPAC_PROTO_EXT_CTRL) {
+ }
+#endif
+ case (IPAC_PROTO_EXT_CTRL) {
f_ctrl_to_user(ipa_rx.msg);
- } case (IPAC_PROTO_EXT_GSUP) {
+ }
+#ifdef IPA_EMULATION_GSUP
+ case (IPAC_PROTO_EXT_GSUP) {
f_gsup_to_user(ipa_rx.msg);
- } case else {
+ }
+#endif
+ case else {
IPA_SP_PORT.send(f_to_asp(ipa_rx));
}
}
- } case else {
+ }
+ case else {
IPA_SP_PORT.send(f_to_asp(ipa_rx));
}
}
@@ -465,13 +529,16 @@ private function ScanEvents() runs on IPA_Emulation_CT {
self.stop;
}
+#ifdef IPA_EMULATION_SCCP
/* Received SCCP -> down into IPA */
[] MTP3_SP_PORT.receive(ASP_MTP3_TRANSFERreq: ?) -> value mtp_req {
var IPA_Send ipa_tx := valueof(t_IPA_Send(g_ipa_conn_id, IPAC_PROTO_SCCP,
mtp_req.data));
IPA_PORT.send(ipa_tx);
}
+#endif
+#ifdef IPA_EMULATION_MGCP
/* Received MGCP -> down into IPA */
[] IPA_MGCP_PORT.receive(MgcpCommand:?) -> value mgcp_cmd {
payload := char2oct(enc_MgcpCommand(mgcp_cmd));
@@ -483,6 +550,7 @@ private function ScanEvents() runs on IPA_Emulation_CT {
ipa_ud := f_mgcp_to_ud(payload);
IPA_PORT.send(f_from_asp(g_ipa_conn_id, ipa_ud));
}
+#endif
[] IPA_CTRL_PORT.receive(CtrlMessage:?) -> value ctrl_msg {
payload := char2oct(enc_CtrlMessage(ctrl_msg));
@@ -490,18 +558,21 @@ private function ScanEvents() runs on IPA_Emulation_CT {
IPA_PORT.send(f_from_asp(g_ipa_conn_id, ipa_ud));
}
+#ifdef IPA_EMULATION_GSUP
[] IPA_GSUP_PORT.receive(GSUP_PDU:?) -> value gsup_msg {
f_gsup_preprocess_encoded(gsup_msg);
payload := enc_GSUP_PDU(gsup_msg);
ipa_ud := valueof(t_ASP_IPA_UD(IPAC_PROTO_OSMO, payload, IPAC_PROTO_EXT_GSUP));
IPA_PORT.send(f_from_asp(g_ipa_conn_id, ipa_ud));
}
+#endif
+#ifdef IPA_EMULATION_RSL
/* Received RSL -> down into IPA */
[] IPA_RSL_PORT.receive(ASP_RSL_Unitdata:?) -> value rsl {
IPA_PORT.send(f_from_rsl(g_ipa_conn_id, rsl));
}
-
+#endif
/* Received MISC (OML/CTRL) -> down into IPA */
[] IPA_SP_PORT.receive(ASP_IPA_Unitdata: ?) -> value ipa_ud {
diff --git a/msc/gen_links.sh b/msc/gen_links.sh
index 9d3c28e8..b2e2ff07 100755
--- a/msc/gen_links.sh
+++ b/msc/gen_links.sh
@@ -76,9 +76,9 @@ gen_links $DIR $FILES
DIR=../library
FILES="General_Types.ttcn GSM_Types.ttcn Osmocom_Types.ttcn MNCC_Types.ttcn MNCC_EncDec.cc MNCC_CodecPort.ttcn mncc.h MNCC_Emulation.ttcn Osmocom_VTY_Functions.ttcn Native_Functions.ttcn Native_FunctionDefs.cc "
-FILES+="IPA_Types.ttcn IPA_Emulation.ttcn IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn IPA_CodecPort_CtrlFunctDef.cc RSL_Types.ttcn GSUP_Types.ttcn GSUP_Emulation.ttcn "
+FILES+="IPA_Types.ttcn IPA_Emulation.ttcnpp IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn IPA_CodecPort_CtrlFunctDef.cc GSUP_Types.ttcn GSUP_Emulation.ttcn "
FILES+="Osmocom_CTRL_Types.ttcn Osmocom_CTRL_Functions.ttcn Osmocom_CTRL_Adapter.ttcn L3_Templates.ttcn L3_Common.ttcn "
-FILES+="BSSMAP_Emulation.ttcn BSSAP_CodecPort.ttcn BSSMAP_Templates.ttcn BSSAP_Adapter.ttcn MGCP_Types.ttcn MGCP_Templates.ttcn MGCP_CodecPort_CtrlFunct.ttcn MGCP_Emulation.ttcn IPA_Emulation.ttcn "
+FILES+="BSSMAP_Emulation.ttcn BSSAP_CodecPort.ttcn BSSMAP_Templates.ttcn BSSAP_Adapter.ttcn MGCP_Types.ttcn MGCP_Templates.ttcn MGCP_CodecPort_CtrlFunct.ttcn MGCP_Emulation.ttcn "
FILES+="RTP_CodecPort.ttcn RTP_CodecPort_CtrlFunctDef.cc "
FILES+="MGCP_CodecPort.ttcn MGCP_CodecPort_CtrlFunctDef.cc "
gen_links $DIR $FILES
diff --git a/msc/regen_makefile.sh b/msc/regen_makefile.sh
index dacd10b5..84b16f7e 100755
--- a/msc/regen_makefile.sh
+++ b/msc/regen_makefile.sh
@@ -1,5 +1,7 @@
#!/bin/sh
-FILES="*.ttcn SCCP_EncDec.cc SCTPasp_PT.cc TCCConversion.cc TCCInterface.cc UD_PT.cc MNCC_EncDec.cc IPL4asp_PT.cc IPL4asp_discovery.cc SDP_EncDec.cc RTP_EncDec.cc IPA_CodecPort_CtrlFunctDef.cc RTP_CodecPort_CtrlFunctDef.cc MGCP_CodecPort_CtrlFunctDef.cc TELNETasp_PT.cc Native_FunctionDefs.cc *.c"
+FILES="*.ttcn *.ttcnpp SCCP_EncDec.cc SCTPasp_PT.cc TCCConversion.cc TCCInterface.cc UD_PT.cc MNCC_EncDec.cc IPL4asp_PT.cc IPL4asp_discovery.cc SDP_EncDec.cc RTP_EncDec.cc IPA_CodecPort_CtrlFunctDef.cc RTP_CodecPort_CtrlFunctDef.cc MGCP_CodecPort_CtrlFunctDef.cc TELNETasp_PT.cc Native_FunctionDefs.cc *.c"
+
+export CPPFLAGS_TTCN3="-DIPA_EMULATION_MGCP -DIPA_EMULATION_GSUP"
../regen-makefile.sh MSC_Tests.ttcn $FILES
diff --git a/regen-makefile.sh b/regen-makefile.sh
index 7edd7839..57eebff5 100755
--- a/regen-makefile.sh
+++ b/regen-makefile.sh
@@ -12,7 +12,7 @@
test -x "$(which ttcn3_makefilegen 2>/dev/null)" || { echo "ERROR: ttcn3_makefilegen not in PATH"; exit 1; }
-ttcn3_makefilegen -l -f $*
+ttcn3_makefilegen -p -l -f $*
sed -i -e 's/# TTCN3_DIR = /TTCN3_DIR = \/usr/' Makefile
sed -i -e 's/LDFLAGS = /LDFLAGS = -L \/usr\/lib\/titan /' Makefile
#sed -i -e 's/TTCN3_LIB = ttcn3-parallel/TTCN3_LIB = ttcn3/' Makefile
@@ -21,6 +21,10 @@ sed -i -e 's/LDFLAGS = /LDFLAGS = -L \/usr\/lib\/titan /' Makefile
# see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=879816 for details
sed -i -e 's/CPPFLAGS = -D$(PLATFORM) -I$(TTCN3_DIR)\/include/CPPFLAGS = -D$(PLATFORM) -DMAKEDEPEND_RUN -I$(TTCN3_DIR)\/include -I\/usr\/include\/titan/' Makefile
+if [ "x$CPPFLAGS_TTCN3" != "x" ]; then
+ sed -i -e 's/CPPFLAGS_TTCN3 =/CPPFLAGS_TTCN3 = '"$CPPFLAGS_TTCN3"'/' Makefile
+fi
+
# for TITAN 6.3.0
if cat /etc/issue | grep "Arch Linux" >/dev/null 2>&1; then
sed -i -e 's/TTCN3_DIR = $/TTCN3_DIR = \/usr\/ttcn3/' Makefile
diff --git a/selftest/Selftest.ttcn b/selftest/Selftest.ttcn
index 1c340b7d..1ff17fe7 100644
--- a/selftest/Selftest.ttcn
+++ b/selftest/Selftest.ttcn
@@ -5,7 +5,6 @@ import from Osmocom_Types all;
import from GSM_Types all;
import from IPL4asp_Types all;
import from IPL4asp_PortType all;
-import from MTP3asp_PortType all;
import from BSSAP_Types all;
//import from BSSAP_Adapter all;
@@ -25,8 +24,6 @@ import from GSM_RR_Types all;
type component IPA_selftest_CT {
/* upper end of IPA_Emulation */
- port MTP3asp_PT IPA_MTP3;
- port IPA_MGCP_PT IPA_MGCP;
port IPA_RSL_PT IPA_RSL;
port IPA_CTRL_PT IPA_CTRL;
port IPA_SP_PT IPA_SP;
@@ -42,10 +39,8 @@ type component IPA_selftest_CT {
function f_ipa_srv_init() runs on IPA_selftest_CT {
vc_IPA := IPA_Emulation_CT.create("IPA_Emulation");
map(vc_IPA:IPA_PORT, system: IPA_CODEC_PT);
- connect(vc_IPA:IPA_MGCP_PORT, self:IPA_MGCP);
connect(vc_IPA:IPA_RSL_PORT, self:IPA_RSL);
connect(vc_IPA:IPA_CTRL_PORT, self:IPA_CTRL);
- connect(vc_IPA:MTP3_SP_PORT, self:IPA_MTP3);
vc_IPA.start(IPA_Emulation.main_server("127.0.0.1", 55555));
}
diff --git a/selftest/gen_links.sh b/selftest/gen_links.sh
index 611ba5ce..b0b2688a 100755
--- a/selftest/gen_links.sh
+++ b/selftest/gen_links.sh
@@ -46,11 +46,6 @@ DIR=$BASEDIR/titan.ProtocolModules.MobileL3_v13.4.0/src
FILES="MobileL3_CC_Types.ttcn MobileL3_CommonIE_Types.ttcn MobileL3_GMM_SM_Types.ttcn MobileL3_MM_Types.ttcn MobileL3_RRM_Types.ttcn MobileL3_SMS_Types.ttcn MobileL3_SS_Types.ttcn MobileL3_Types.ttcn"
gen_links $DIR $FILES
-DIR=$BASEDIR/titan.ProtocolModules.SDP/src
-FILES="SDP_EncDec.cc SDP_Types.ttcn SDP_parse_.tab.c SDP_parse_.tab.h SDP_parse_parser.h SDP_parser.l
-SDP_parser.y lex.SDP_parse_.c"
-gen_links $DIR $FILES
-
DIR=../library
-FILES="General_Types.ttcn Osmocom_Types.ttcn GSM_Types.ttcn IPA_Types.ttcn IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn IPA_CodecPort_CtrlFunctDef.cc IPA_Emulation.ttcn L3_Templates.ttcn BSSMAP_Templates.ttcn RLCMAC_CSN1_Types.ttcn GSM_RR_Types.ttcn RSL_Types.ttcn MGCP_Types.ttcn MGCP_Templates.ttcn BSSAP_CodecPort.ttcn Osmocom_CTRL_Types.ttcn Osmocom_CTRL_Functions.ttcn GSUP_Types.ttcn"
+FILES="General_Types.ttcn Osmocom_Types.ttcn GSM_Types.ttcn IPA_Types.ttcn IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn IPA_CodecPort_CtrlFunctDef.cc IPA_Emulation.ttcnpp L3_Templates.ttcn BSSMAP_Templates.ttcn RLCMAC_CSN1_Types.ttcn GSM_RR_Types.ttcn RSL_Types.ttcn BSSAP_CodecPort.ttcn Osmocom_CTRL_Types.ttcn Osmocom_CTRL_Functions.ttcn GSUP_Types.ttcn"
gen_links $DIR $FILES
diff --git a/selftest/regen_makefile.sh b/selftest/regen_makefile.sh
index eefda497..d79b921b 100755
--- a/selftest/regen_makefile.sh
+++ b/selftest/regen_makefile.sh
@@ -2,6 +2,8 @@
MAIN=Selftest.ttcn
-FILES="*.ttcn IPA_CodecPort_CtrlFunctDef.cc IPL4asp_PT.cc IPL4asp_discovery.cc TCCConversion.cc TCCInterface.cc SDP_EncDec.cc *.c"
+FILES="*.ttcn *.ttcnpp IPA_CodecPort_CtrlFunctDef.cc IPL4asp_PT.cc IPL4asp_discovery.cc TCCConversion.cc TCCInterface.cc"
+
+export CPPFLAGS_TTCN3="-DIPA_EMULATION_RSL"
../regen-makefile.sh $MAIN $FILES
diff --git a/sgsn/gen_links.sh b/sgsn/gen_links.sh
index c3987795..1dedda2d 100755
--- a/sgsn/gen_links.sh
+++ b/sgsn/gen_links.sh
@@ -36,17 +36,6 @@ DIR=$BASEDIR/titan.TestPorts.TELNETasp/src
FILES="TELNETasp_PT.cc TELNETasp_PT.hh TELNETasp_PortType.ttcn"
gen_links $DIR $FILES
-# required by IPA Emulation
-DIR=../MTP3asp_CNL113337/src
-FILES="MTP3asp_PortType.ttcn MTP3asp_Types.ttcn"
-gen_links $DIR $FILES
-
-# required by MGCP Types, which is required by IPA Emulation
-DIR=$BASEDIR/titan.ProtocolModules.SDP/src
-FILES="SDP_EncDec.cc SDP_Types.ttcn SDP_parse_.tab.c SDP_parse_.tab.h SDP_parse_parser.h SDP_parser.l
-SDP_parser.y lex.SDP_parse_.c"
-gen_links $DIR $FILES
-
DIR=$BASEDIR/titan.ProtocolModules.NS_v7.3.0/src
FILES="NS_Types.ttcn"
gen_links $DIR $FILES
@@ -63,7 +52,6 @@ DIR=$BASEDIR/titan.ProtocolModules.SNDCP_v7.0.0/src
FILES="SNDCP_Types.ttcn"
gen_links $DIR $FILES
-
DIR=$BASEDIR/titan.ProtocolModules.MobileL3_v13.4.0/src
FILES="MobileL3_CC_Types.ttcn MobileL3_CommonIE_Types.ttcn MobileL3_GMM_SM_Types.ttcn MobileL3_MM_Types.ttcn MobileL3_RRM_Types.ttcn MobileL3_SMS_Types.ttcn MobileL3_SS_Types.ttcn MobileL3_Types.ttcn"
gen_links $DIR $FILES
@@ -80,8 +68,7 @@ FILES+="Osmocom_CTRL_Types.ttcn Osmocom_CTRL_Functions.ttcn Osmocom_CTRL_Adapter
FILES+="Osmocom_VTY_Functions.ttcn "
FILES+="LLC_Templates.ttcn L3_Templates.ttcn L3_Common.ttcn "
# IPA_Emulation + dependencies
-FILES+="IPA_Types.ttcn IPA_Emulation.ttcn IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn
-IPA_CodecPort_CtrlFunctDef.cc Native_Functions.ttcn Native_FunctionDefs.cc GSUP_Types.ttcn GSUP_Emulation.ttcn MGCP_Types.ttcn RSL_Types.ttcn "
+FILES+="IPA_Types.ttcn IPA_Emulation.ttcnpp IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn IPA_CodecPort_CtrlFunctDef.cc Native_Functions.ttcn Native_FunctionDefs.cc GSUP_Types.ttcn GSUP_Emulation.ttcn "
FILES+="GTP_CodecPort.ttcn GTP_CodecPort_CtrlFunct.ttcn GTP_CodecPort_CtrlFunctDef.cc GTP_Emulation.ttcn
GTP_Templates.ttcn IPCP_Types.ttcn "
gen_links $DIR $FILES
diff --git a/sgsn/regen_makefile.sh b/sgsn/regen_makefile.sh
index 06911649..a85f79c5 100755
--- a/sgsn/regen_makefile.sh
+++ b/sgsn/regen_makefile.sh
@@ -1,5 +1,7 @@
#!/bin/sh
-FILES="*.ttcn BSSGP_EncDec.cc LLC_EncDec.cc IPL4asp_PT.cc IPL4asp_discovery.cc TCCConversion.cc TCCInterface.cc NS_CodecPort_CtrlFunctDef.cc RLCMAC_EncDec.cc Native_FunctionDefs.cc SDP_EncDec.cc SDP_parse_.tab.c lex.SDP_parse_.c TELNETasp_PT.cc IPA_CodecPort_CtrlFunctDef.cc GTPU_EncDec.cc GTPC_EncDec.cc GTP_CodecPort_CtrlFunctDef.cc"
+FILES="*.ttcn *.ttcnpp BSSGP_EncDec.cc LLC_EncDec.cc IPL4asp_PT.cc IPL4asp_discovery.cc TCCConversion.cc TCCInterface.cc NS_CodecPort_CtrlFunctDef.cc RLCMAC_EncDec.cc Native_FunctionDefs.cc TELNETasp_PT.cc IPA_CodecPort_CtrlFunctDef.cc GTPU_EncDec.cc GTPC_EncDec.cc GTP_CodecPort_CtrlFunctDef.cc"
+
+export CPPFLAGS_TTCN3="-DIPA_EMULATION_GSUP"
../regen-makefile.sh SGSN_Tests.ttcn $FILES