Commit Graph

1001 Commits

Author SHA1 Message Date
Harald Welte 346658df4b BSSAP_CodecPort: respondingAddress is optional in BSSAP_N_DISCONNECT_ind 2017-12-10 14:10:25 +01:00
Harald Welte 510a287a5e BSSAP_CodecPort: Don't dereference optional fields unconditionally 2017-12-10 13:48:17 +01:00
Harald Welte e8a5ab1122 RSL_Types: New tr_RSL_REL_REQ and tr_RSL_DEACT_SACCH templates 2017-12-09 22:34:57 +01:00
Harald Welte 6efa8e3940 RSL_Types: Fix RSL_IE_Cause (missing length octet) 2017-12-09 22:34:06 +01:00
Harald Welte cfa79adb83 BSSMAP_Templates: Add tr_BSSMAP_ClearRequest 2017-12-09 22:33:47 +01:00
Harald Welte 36975c8ef7 add missing BSSAP_CodecPort file 2017-12-09 21:39:57 +01:00
Harald Welte 4a267365fd RSL_Types: Add ts_RSL_RF_CHAN_REL_ACK and ts_RSL_MsgDiscType 2017-12-09 17:49:32 +01:00
Harald Welte 3ec493f9bc Osmocom_CTRL_Fucntions: Add f_ctrl_get_ratectr_abs and f_ctrl_get_exp_ratectr_abs 2017-12-09 16:25:29 +01:00
Harald Welte 0ac4667870 Osmocom_CTRL_Types: Permit * (wildcard) and fix pattern syntax 2017-12-09 14:19:58 +01:00
Harald Welte 852a384e5c Osmocom_CTRL_Functions: Add f_ctrl_get_exp() function to GET + match expected 2017-12-09 14:19:36 +01:00
Harald Welte 95a478172f Osmocom_CTRL_Functions: Make TRAP resistant (ignore TRAPs) 2017-12-09 14:19:03 +01:00
Harald Welte 5819b554ad IPA_Emulation: Don't send events to unconnected ports 2017-12-09 03:13:36 +01:00
Harald Welte 03c0e5600e IPA_Emulation: Send ASP_IPA_EVENT_UP even in client mode 2017-12-09 03:13:32 +01:00
Harald Welte a76c4bb7b9 Extend IPA_Emulation with support for CTRL 2017-12-09 02:06:07 +01:00
Harald Welte bdb63706b7 IPA_Emulation: Add comments 2017-12-09 01:15:44 +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 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 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
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 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 5aa1803ef9 Move MGCP_CodecPort to library directory 2017-11-25 02:05:04 +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 c859df518f BSC_MS_ConnectionHandler: implement MGCP request->response handling 2017-11-24 23:41:41 +01:00
Harald Welte 525a9c118d BSSMAP_Emulation: Fix regex for extraction of MGW endpoint number
Don't use perl regex syntax ".*' but simply "*"
2017-11-24 23:40:41 +01:00
Harald Welte 1b2748eb7b BSSMAP_Emulation: CIC extraction must happen on BSC side, not MSC side 2017-11-24 23:40:16 +01:00
Harald Welte 9002957584 MGCP_Templates: More templates (for the MGW side) 2017-11-24 23:39:50 +01:00
Harald Welte 4c11d56f2d move MGCP utility functions from MSC_ConnectionHandler to MGCP_Templates 2017-11-24 23:39:00 +01:00
Harald Welte 7dc5d37b33 MGC_Types: Add work-around for failure to distinguish between Cmd + Resp 2017-11-24 20:52:06 +01:00
Harald Welte 51f34ada61 MGCP_Templates: Add missing 'any' for trans_id in tr_CRCX_ACK 2017-11-24 20:52:06 +01:00
Harald Welte c82eef458d ipa: Further progress on the bsc-nat test suite 2017-11-24 20:52:06 +01:00
Harald Welte 19ad52b3b9 IPA_Types: Fix length encoding during transmission of OSMO_EXT packets
The extra byte for further demuxing must be included when computing
the payload length from the (classic) IPA header point of view.
2017-11-24 20:52:06 +01:00
Harald Welte 4029e8cd03 Move MGCP_Types.ttcn to library; extract MGCP_Templates.ttcn to library 2017-11-24 20:52:06 +01:00
Harald Welte 2a8f847f6f WIP: attempt at IPA extended StreamID support 2017-11-24 20:52:06 +01:00
Harald Welte 7ed2b08006 BSSMAP_Templates: fix unbound rR_Cause member in Assignment Complete 2017-11-23 18:52:13 +01:00
Harald Welte 5cc4aa2f06 BSSMAP_Emulation: Fix handling of userData
We cannot pass an unbound octetstring record member into a template
argument of a function :/
2017-11-23 18:51:28 +01:00
Harald Welte ab05d6cf97 BSSMAP_Templates: Correct name is AssignmentReq, not AssignmentCmd 2017-11-23 18:50:52 +01:00
Harald Welte b3414b2172 ipa: First version that emulates both MSC and BSC up to ASSIGNMENT REQ 2017-11-23 18:23:38 +01:00
Harald Welte 365f4edbd8 IPA/MSC/BSC Emulation: Framework for handling multiple SCCP connections 2017-11-23 00:00:43 +01:00
Harald Welte c76f29f094 ipa: Pull everything together: L3->BSSAP->SCCP->IPA 2017-11-22 12:46:46 +01:00
Harald Welte d86cdc6811 Expand IPA emulaitpn code + example to include CCM and SCCP binding 2017-11-22 00:45:07 +01:00
Harald Welte 00566f55f0 initial import of new IPA test port 2017-11-21 16:43:49 +01:00
Harald Welte 04d74cdcde Add ASP_ConnId_ReadyToRelease in all translation ports using IPL4asp
This is required after update to IPL4asp R.29.A of 2017-Oct-17
2017-11-19 09:29:51 +01:00
Harald Welte 244cd8acf7 sysinfo: Fix the TC_telnet test case VTY command order 2017-08-26 09:25:20 +02:00
Harald Welte b26cfffeda LAPDm_RAW_PT: Use default L1CTL socket
The L1CTL socket path can be configured as module parameter of
the L1CTL_PortType module, so there's no need in repeating that
configuration inside LAPDm_RAW_PT
2017-08-25 09:56:47 +02:00
Harald Welte f68765d2e5 L1CTL_PortType: Make osmocom_l2 socket configurable as module parameter 2017-08-20 22:54:57 +02:00
Harald Welte f97649269a sysinfo: Fix compilation 2017-08-20 22:47:44 +02:00
Harald Welte 303c19ad63 Add Native_Functions module for inet_addr / inet_ntoa 2017-08-19 13:52:36 +02:00
Harald Welte ddeecbb4ed GGSN_Tests: Make SGSN and GGSN addresses configurable via modulepar 2017-08-19 11:50:08 +02:00
Harald Welte 9d3485243a RLCMAC: Integrate encoding/decoding of Control Message Payload
Rlcmac{Dl,Ul}CtrlBlock now contain Rlcmac{Dl,Ul}CtrlMsg rather
than an octetstring payload.
2017-08-01 00:27:39 +02:00
Harald Welte 422f072176 RLCMAC_CSN1: Add "other" for not-yet-implemented message types 2017-08-01 00:27:06 +02:00
Harald Welte 4b6c772b15 LAPDm_RAW_PT: Add support for TBF mode (GPRS) 2017-08-01 00:07:12 +02:00
Harald Welte 1dcc371539 Add Definitions for GPRS coding schemes 2017-08-01 00:05:52 +02:00
Harald Welte 2072ab6698 RLCMAC: enc__RlcmacUlDataBlock: fix 'omit' for PFI / TLLI
It's not sufficient to check if the value is bound; we must also make
sure that the value is not OMIT.
2017-07-31 18:33:35 +02:00
Harald Welte 78a1af6782 RLCMAC: Fix encoding/decoding of 'union' types
We must supply hand-written C++ functions for encoding/decoding
the union types.
2017-07-31 17:33:56 +02:00
Harald Welte 5aa500791e move LAPDm_types to library + make lapdm executable compile again 2017-07-31 16:15:56 +02:00
Harald Welte efbc2fca24 RLCMAC: Add Rlcmac{Ul,Dl}Block unions to cover both Control + Data blocks 2017-07-31 00:19:13 +02:00
Harald Welte cf28881687 move LAPDm_RAW_PT.ttcn to library 2017-07-30 22:52:27 +02:00
Harald Welte 43e060a50d Add hand-written encoder/decoder for RLC/MAC UL/DL data blocks
Their format is simply too complex to be used with the automatic RAW
encoder/decoder.  Let's implement it by hand, using the automatic
coder whenever possible.
2017-07-30 22:38:03 +02:00
Harald Welte 88849c61b2 L1CTL_Types: Split t_IMM_ASS() off t_RR_IMM_ASS()
It's useful to have a separat template only for the IM_ASS part, without
RR header.
2017-07-30 17:19:41 +02:00
Harald Welte b3c226ebde L1CTL_Types: Add support for L1CTL_DATA_TBF_{REQ,CONF}
Those two L1CTL primitives are extensions of L1CTL for GPRS operation
2017-07-30 17:19:24 +02:00
Harald Welte 6f3c223b9a GSM_Types: Fix RSL Chanenl number encoding; Add OSMO_PDCH extension 2017-07-30 17:17:12 +02:00
Harald Welte 1b9b77096d GSM_RR_Types: Parse PacketChannelDescription 2017-07-30 04:19:14 +02:00
Harald Welte 9419c8aff7 Split RR portion of GSM_Types into GSM_RR_Types 2017-07-30 04:07:35 +02:00
Harald Welte d335cbcdb9 L1CTL_Types: Make t_RR_IMM_ASS match also TBF assignments 2017-07-30 00:51:23 +02:00
Harald Welte 00d4dace72 L1CTL_Types: Add upcoming L1CTL_TBF_CFG_{REQ,CONF}
Related primitives are used to configure L1 for GPRS / TBF operation
2017-07-30 00:50:32 +02:00
Harald Welte c84d847f01 GSM_Types: Fix encoding of RSL Channel numbers 2017-07-30 00:49:56 +02:00
Harald Welte bda65a31f5 GSM_Types: Fix MobileIdentity 2017-07-30 00:49:04 +02:00
Harald Welte d1209a6f04 Move "connect to L1CTL and RESET" function from LAPDm_RAW_PT to L1CTL_PortType 2017-07-29 12:55:06 +02:00
Harald Welte 484160bf21 library: Initial work on GPRS RLC/MAC encoder/decoder
For Downlink and Uplink RLC/MAC Control blocks this is already working
quite nicely.  Data blocks is not working, as their encoding cannot be
expressed in TTCN-3 RAW syntax, and a mixture of C++/native and
RAW-generated coder will be required.
2017-07-28 13:30:24 +02:00
Harald Welte 5b1ce8c4f4 move L1CTL modules to library for easier sharing with other test suites 2017-07-19 20:16:54 +02:00
Harald Welte 8542cefb8e Move VTY utility functions to new Osmocom_VTY_Functions module
... so it can be reused from other Testsuites/modules
2017-07-19 20:06:26 +02:00
Harald Welte 3b8bdd6358 Introduce 'library' directory for modules shared by multiple test cases 2017-07-19 19:57:26 +02:00