This patch itnroduces all the boilerplate required to build and package
a new libosmo-gprs-sm.so library, which aims to contain the SM layer
implementation.
A minimal implementation is provided together with a unit test,
showcasing Activation of a PDP Context and requesting implicit GPRS
attach to GMM if it is not yet attached.
This commit also adds/improves code in GMM layer implementing the GMMSM
SAP which is used to interact SM<->GMM.
Related: OS#5501
Change-Id: I9b4a9a6364f7799540475e7e1d10ab2310768281
The library itself only contains a bunch of boilerplate to build the
library and have usual initialization, logging, prim APIs.
There's not yet much logic specific in it yet, but will make next
commits easier to review.
Related: OS#5501
Change-Id: Ie098576954a55e5046c2463390ab7133511c1eb3
This commit follows a similar approach to Change-Id
I588eb576b2703262f4ab9566ec362920d8390cfd, this time targeting the SNDCP
layer, creating a new library for it.
This new library depends on headers from libosmo-gprs-llc since the
SNDCP spec takes the interface towards lower interfaces from same
llc_prim. It doesn't really call any API from the libosmo-gprs-llc
library to dispatch the primitive, that's left for the application, so
that it can be reused against other implementations.
Most of the SNDCP data structures and APIs are kept private and used
only internally. The Higher/lower layers are expected to interact with
it through the sndcp_prim API.
This commit also implements some of the code paths of the public API by
means on importing SNDCP code from osmo-sgsn.git commit
57b63875c762a784127a13becd1c2549ca6c5454.
The import of code cannot be done in a separate commit since existing code
in osmo-sgsn.git is low quality and has tons of layer violations in all
directions.
Hence, this commit aims at being an initial point of having some working
SNDCP stack by means of a few unit tests, but by no means aims to be a
total working implementation. Some code paths are missing; bugs are
expected at this point.
Change-Id: Ie05b5d721cf0a6147ed45c1feb75ad829865252b
This commit introduces a new library called 'libosmo-gprs-rlcmac',
which is going to be used by osmo-pcu and osmocom-bb for parsing
and generation of PDUs defined using CSN.1 (see 3GPP TS 24.007).
The actual RLC/MAC definitions are imported from osmo-pcu.git [1].
Change-Id: Ic322543e6d9a870beec83fa1166352e4a51366e7
Related: [1] osmo-pcu.git 0eaa3d379828517b5478d0202a26f6f3eb561a4e
This commit introduces a new library called 'libosmo-csn1', which
is going to be used by osmo-pcu and osmocom-bb for parsing and
generation of PDUs defined using CSN.1 (see 3GPP TS 24.007).
The actual CSN.1 codec is imported from osmo-pcu.git [1].
Change-Id: Ib195d1e2a53aead4f89c799cef1e5f1be110aad9
Related: [1] osmo-pcu.git 0eaa3d379828517b5478d0202a26f6f3eb561a4e
Depends: libosmocore.git Ie8c0effb764547a0f9cc8c6825e11a6617501e95