Harald Welte
ae02669508
BSC_Tests: Start with much simpler tests at BSSAP / SCCP level
...
Rather than using the more complex RSL Emulation and BSSAP emulation
components, we attach to the RSL and BSSAP Codec Ports and send some
messages back and forth for low-level testing such as timeouts, response
to RACH requests, failure of MSC to react to CR requests, etc.
2017-12-09 01:03:01 +01:00
Harald Welte
51b2468059
mgw-nat: Make it build again (library code now has more dependencies)
2017-12-09 00:56:54 +01:00
Harald Welte
bc330beab7
RSL_Emulation: Move templates into RSL_Types
2017-12-09 00:56:36 +01:00
Harald Welte
7ae019e1a0
IPA_Emulation: split t_ASP_RSL_UD in send and receive template
2017-12-09 00:54:15 +01:00
Harald Welte
f8a0bdaad5
BSSMAP_Templates: Add parameters to tr_BSSMAP_ComplL3 for better matching
2017-12-09 00:53:17 +01:00
Harald Welte
140714d89d
regen_makefile.sh: Add Regex's for TITAN 6.3.0
...
The TITAN 6.3.0 makefile generator needs some new regular expressions
for patching the generated makefile to work on Debian
2017-12-08 14:03:28 +01:00
Harald Welte
696ddb6de3
bsc-tests: Add BTS_Simulation, RSL_Tests and .cfg file
2017-12-08 14:01:43 +01:00
Harald Welte
714ded9e75
library: Add RSL_Emulation.ttcn
...
This emulates the RSL part of a BTS towards a BSC
2017-12-08 14:00:22 +01:00
Harald Welte
9c0bddf293
General_Types: Make it work with TITAN 6.3.0
...
Somehow the TITAN 6.3.0 compiler is stricter...
2017-12-08 13:58:08 +01:00
Harald Welte
0d846a7e37
IPA_Emulation: Add support for RSL port
...
In addition to the MGCP and SCCP ports, we now also have a RSL port
through which other components can transceive RSL messages via IPA
2017-12-07 17:58:28 +01:00
Harald Welte
da9d36c73e
IPA_Types: Define IpaStreamId for up to 4 TRX
2017-12-07 17:57:17 +01:00
Harald Welte
101fbed2de
RSL_Types: ts_RSL_CHAN_RQD needs access delay
2017-12-07 17:56:38 +01:00
Harald Welte
7ae931488f
RSL_Types: Add RACH and PAGING LOAD templates
2017-12-07 17:56:15 +01:00
Harald Welte
f4b068b3a0
RSL_Types: tr_RSL_MsgType() now accepts template as message discriminator
...
... avoids tiresome valueof() at every caller site
2017-12-07 17:54:55 +01:00
Harald Welte
c287775e35
RSL_Types: add tr_RSL_PAGING_CMD / tr_RSL_IMM_ASSIGN templates
2017-12-07 17:54:35 +01:00
Harald Welte
fff6930765
RSL_Types: ms_identity, full_imm_ass_info IE types
2017-12-07 17:53:42 +01:00
Harald Welte
d5f521ef5c
RSL_Types: Define RACH Load IE
2017-12-07 17:53:06 +01:00
Harald Welte
8f2c21d815
RSL_Types: Channel Mode contains a length byte
2017-12-07 17:52:40 +01:00
Harald Welte
15bb5b53db
RSL_Types: L3_INFO has TL16V type, not TLV (i.e. 16bit length)
2017-12-07 17:52:04 +01:00
Harald Welte
319be826cb
RSL_Types: Define each enumerated member
...
TTCN-3 enumerated seems to behave different than C enums, so you cannot
simply assume that the next element will have the previous element
value+1.
2017-12-07 17:50:26 +01:00
Harald Welte
e09921fef2
IPA_Emulation: Change default params to const, export them and use empty string
...
This means we rather return an empty string in CCM_IDTAG responses,
rather than crashing due to non-defined record members.
2017-12-07 17:49:00 +01:00
Harald Welte
3b2ce0217f
GSM_Types: Label some templates as (value) templates
2017-12-07 17:47:00 +01:00
Harald Welte
e21096dbaf
IPA_Emulation: Allow client/server to specify CCM parameters
2017-12-04 20:45:12 +01:00
Harald Welte
e7096c1571
ggsn: verify IPv4 addr + byte order in IPCP PCO DNS addresses
2017-12-04 19:40:44 +01:00
Harald Welte
eb9184ddb4
ggsn: Encode IPCP in IPCP Request, rather than using hard-coded hex string
...
We now have a proper definition of IPCP in IPCP_Types and can thus
encode/decode on the fly and avoid hand-crafted octetstrings.
2017-12-04 19:04:24 +01:00
Harald Welte
71a36023dc
ggsn: Verify presence of DNS addresses in IPCP of PCO
...
If we request DNS in IPCP in PCO, we also expect a corresponding result.
2017-12-04 19:04:24 +01:00
Daniel Willmann
961e5c9d3b
MGCP_Templates: Accept 200 and 250 as ACK for DLCX
...
Both codes are valid as response to a DLCX, see RFC3661 Ch 2.2:
"""
The 250 response code can be used to acknowledge a successful completion
of a DeleteConnection command. However, a 200 response code is also
appropriate.
"""
2017-11-30 16:43:36 +01:00
Daniel Willmann
fbef714394
MGCP_Templates: Change channel codec to AMR since this is how it's used
2017-11-30 16:43:11 +01:00
Daniel Willmann
04541d715e
bsc-nat: Wait for the second MDCX in the BSC_MS conn handler
...
The bsc-nat sends another MDCX so account for that in the state machine
2017-11-30 13:14:37 +01:00
Harald Welte
e98bb2e153
BSSMAP: Ignore RSPI for unknown endpoint/CIC
2017-11-29 12:09:48 +01:00
Harald Welte
1218883e15
IPA_Emulation: Properly dissect multiple IPA messages in one TCP segment
2017-11-29 12:03:32 +01:00
Harald Welte
26595451b3
IPA_CodecPort: Wrap f_IPL4_setGetMsgLen function
2017-11-29 11:46:24 +01:00
Harald Welte
92e9816df8
IPA: Add support for IPAC_IDTAG_OSMO_RAND
...
this is a non-standard RAND value used by osmo-bsc_nat. The change
requires us to also properly define the individual IpaCcmGetPart
with a one-byte length value at its start.
2017-11-29 11:09:13 +01:00
Harald Welte
a1f0cbcfbe
ipa: PDU_IPA_CCM: Missing CROSSTAG to decode get/resp/other
2017-11-29 11:04:40 +01:00
Harald Welte
643e2a60b0
add RSL_Types.ttcn - untested definitions defining GSM A-bis RSL
2017-11-27 15:03:18 +01:00
Harald Welte
28d943ef35
ts_BSSMAP_HandoReq: Hand in raw list as argument, not IE type
...
Also, add new ts_BSSMAP_Paging() template.
2017-11-25 15:01:16 +01:00
Harald Welte
79feba5ed4
rename 'ipa' directory to 'bsc-nat'
2017-11-25 02:32:50 +01:00
Harald Welte
92632e1dce
ipa: Enable configuration on whether MGCP should use old or new IPA stream ID
2017-11-25 02:31:20 +01:00
Harald Welte
1dd8f3713b
IPA_Emulation: Introduce template for ASP_IPA_Unitdata
2017-11-25 02:25:27 +01:00
Harald Welte
f09d1bad0a
ipa: Ability to transport MGCP over UDP rather than IPA Mux
2017-11-25 02:20:13 +01:00
Harald Welte
5aa1803ef9
Move MGCP_CodecPort to library directory
2017-11-25 02:05:04 +01:00
Harald Welte
a34e47f2e4
BSC_MS_ConnectionHandler: Use actual state machine to enforce order of events
2017-11-25 01:28:54 +01:00
Harald Welte
98f1f410b2
MSC_ConnectionHandler: Add 5s guard timer
2017-11-25 01:21:49 +01:00
Harald Welte
8f3a962125
BSC_MS_ConnectionHandler: Update FIXME/TODOs
2017-11-25 01:19:13 +01:00
Harald Welte
2fb0479512
ipa: Make test actually terminate. Ensure termination after 30s.
2017-11-25 01:14:35 +01:00
Harald Welte
9ca9eb1648
BSSMAP_Emulation: Set verdict to 'fail' in various lookup error paths
2017-11-25 00:50:43 +01:00
Harald Welte
0a4317a805
ipa: Close SCCP Connection from MSC side; set verdict on BSC side
2017-11-25 00:50:31 +01:00
Harald Welte
be620f6da6
ipa: Give all components proper names to aid log interpretation
2017-11-25 00:23:54 +01:00
Harald Welte
66fecd46a8
MSC_ConnectionHandler: Fix E1 timeslots to be monotonically incrementing
2017-11-24 23:54:44 +01:00
Harald Welte
8ac9f022d7
MSC_ConnectionHandler: Use "Call Control" as release cause
2017-11-24 23:48:14 +01:00