Commit Graph

83 Commits

Author SHA1 Message Date
Harald Welte cf28881687 move LAPDm_RAW_PT.ttcn to library 2017-07-30 22:52:27 +02:00
Harald Welte ffcad68801 lapdm: Updated to recent changes in library code (make it compile again) 2017-07-30 22:51:04 +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 77bab25556 BSSGP: Avoid unbound length integer in IE template 2017-07-30 00:53:08 +02:00
Harald Welte 958700ac3c BSSGP_Types: Add IMSI and TMSI IE + related templates 2017-07-30 00:52:39 +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 9a8f503f9a import Ericsson NS, ISUP, ROHC and SNDCP modules for TITAN 2017-07-25 08:23:52 +02:00
Harald Welte 96a06c4373 Add documentation for BSSGP module 2017-07-24 13:27:41 +02:00
Harald Welte a814f263cc Import BSSAP+, BSSGP, BSSMAP, GTP, GTPv2, LLC and MobileL3
this has been kindly provided by Ericsson and will soon (September-ish)
be released officially as FOSS on the eclipse.org git server.
2017-07-24 13:21:35 +02:00
Harald Welte 336959fc3c Import CRC24 code from OsmoSGSN for LLC FCS computation 2017-07-23 21:58:04 +02:00
Harald Welte e38fd7b4ce WIP: Add description of TS 48.064 LLC frames in TITAN TTCN-3 2017-07-23 21:03:02 +02:00
Harald Welte 13d391ea87 gprs_gb: NS + BSSGP operational with OsmoPCU, receiving LLC-PDUs 2017-07-23 19:52:33 +02:00
Harald Welte 1733a38561 Add missing BSSGP_Emulation.ttcn file 2017-07-23 17:26:17 +02:00
Harald Welte 0667eb1797 BSSGP: Fix order of IEs in BVC-RESET PDU 2017-07-23 17:25:38 +02:00
Harald Welte 04a3d3161f BSSGP: don't set length to '0' in t_BssgpIE() template 2017-07-23 17:25:17 +02:00
Harald Welte 6e594f217a gprs_gb: Build stack of NS and BSSGP emulation from test component
We're already getting the NS link up and fail at the BSSGP RESET
procedure at this point.  The problem is erroneous encoding of the
message.
2017-07-23 16:19:35 +02:00
Harald Welte 1067fbd8c9 BSSGP: Add various templates for common messages 2017-07-23 16:18:46 +02:00
Harald Welte 039f6955d8 BSSGP: Define symbolic names for Cause values 2017-07-23 16:18:16 +02:00
Harald Welte 6fff36450a gprs_gb: Add NS CodecPort + Emulation; Add NS selftests 2017-07-22 21:36:13 +02:00
Harald Welte f1fd016fb8 Expand BSSGP helpers + codec to cover expansion + compaction 2017-07-22 20:34:05 +02:00
Harald Welte 3a1944091e WIP: BSSGP related hepler functions; towards tests 2017-07-22 18:29:03 +02:00
Harald Welte b2f94c4baa move lapd to lapdm (it was a mis-nomer) 2017-07-19 20:17:31 +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
Harald Welte 599faa1d18 Add LAPDm test case about SABM contention 2017-07-17 21:49:24 +02:00
Harald Welte dca7e45ce8 don't match on L1CTL SAPI in received frames
L1 has no idea about the SAPI encoded in LAPDm when it passes a
PH-DATA.ind up to us.  So dont match on that L1CTL field, only match the
SAPI we decoded from LAPDm header.
2017-07-17 21:43:58 +02:00
Harald Welte d4ba7ff93e Add new LAPDm RAW port
This is a Test Component which sits on top of L1CTL (which in turn is on
top of the Unix Domain Socket Test Porrt).  It performs LAPDm message
encoding/decoding, so we can use the regular send() / receive() methods
and associated template matching to send/receive/match LAPDm in a
comfortable way.
2017-07-17 21:01:12 +02:00
Harald Welte cb5d1fb2ee fix ts_RslLinkID_SACCH template 2017-07-17 21:00:15 +02:00
Harald Welte 1bd7c32db8 export more encoder/decoder functions for LAPDm RAW coder debuggin 2017-07-17 20:59:46 +02:00
Harald Welte c2a5c07267 LAPDm_Types: re-order fields of LapdmCtrl definitions
for some reason, the "TAG()" matic of TITAN RAW decoder seems to fail
when we use FIELDORDER(msb) and match on a field that's not the first
field of the sub-record :/

Re-ordering the fields into LSB order seems to resolve this.
2017-07-17 20:58:32 +02:00
Harald Welte 143edbd5e9 L1CTL_Types: Fix copy+paste error in t_L1CTL_DM_REL_REQ
t_L1CTL_DM_REL_REQ shouldn't generate an DM_EST_REQ !
2017-07-17 20:56:56 +02:00
Harald Welte 9e4725dcd3 l1ctl/lapdm test infrastructure: Move helper functions out
moving all templates into L1CTL_Types as well as helper functions into
L1CTL_PortType allows us to have a clean L1CTL_Test.ttcn where we can
focus on actual test cases.  At the moment it's just a PoC that can
establish dedicated mode and send a SABM frame to the BTS, which is
properly echo'ed back in the UA, as expected for contention resolution.
2017-07-16 23:18:09 +02:00
Harald Welte 66110f0d77 L1CTL Test: Get all the way up to dedicated channel establishment
The code is now a proof of concept to establish a dedicated channel
via virt_um, at which point we can exchange L2 messages with the BTS.
2017-07-16 21:05:18 +02:00
Harald Welte c3286ccd8c GSM_Types: Add function to compute request reference from RA + FN 2017-07-16 21:04:34 +02:00
Harald Welte b33e7272b5 GSM_TypeS: Add RSL Link Identifier 2017-07-16 21:04:12 +02:00
Harald Welte 57a3150778 GSM_TypeS: Add Mobile Identity type 'NONE' 2017-07-16 21:03:47 +02:00
Harald Welte ad091b6b10 ChannelDescription sometimes used as V, sometimes as LV field 2017-07-16 21:03:17 +02:00
Harald Welte 5f0d5c8753 L1CTL: Fix GSM Frame Number (uint32_t, not least bits required for integer) 2017-07-16 18:56:01 +02:00
Harald Welte 8e4db2c4a4 L1CTL: Use RSL Channel Number definition for proper decode 2017-07-16 18:54:55 +02:00