By default systemd will execute service with root directory (or home directory for user instance) which might result in
attempts to create files in unexpected place. Let's set it to 'osmocom' subdir of state directory (/var/lib for system instance) instead.
Related: OS#4821
Change-Id: I67564759f43193f4739b0b194d5f5da92e3bc6ae
This bug showed up when running the whole TTCN3 hnodeb-test testsuite.
llsk_audio_sapi_version_confirmed() was setting the expected struct size
fo the version previously set.
Related: SYS#5516
Change-Id: Ic94881f46b20ba2817b56d88ada9da5d13b1e294
This commit introduces support for the new llsk_audio SAPI v1.
This new version is almost the same as v0, with the exception that
primitive <REQUEST,HNB_AUDIO_PRIM_CONN_ESTABLISH> wins an extra field
appended at the end:
"""
uint8_t rfci[HNB_MAX_RFCIS]; /* values range 6 bits */
"""
This allows lowerlayers to provide an unordered array of RFCIs, which
was seen may happen under some conditions. For instance:
"""
rfci[HNB_MAX_RFCIS] = { 2, 3, 1};
[0] RFCI 2
[1] RFCI 3
[2] RFCI 1
"""
OsmoHNodeB still supports v0 if the lowerlayer asks for it, and will
continue having the exact behavior as before in this case (using
position in the array as RFCI). Hence, no compatibility breakage occurs
in this patch. New clients, on the other hand, can provide the extra
information by announcing V1 support during version negotiation at
startup.
Related: SYS#5516
Change-Id: I860d18b80c1041bf63a1570d435e0568c0f6b01b
NOTICE: This commit implies an API change when using libosmogsm.
However, the previous API was never available in any libosmogsm release,
and only available in both libosmogsm and osmo-hnodeb master, so we are
only breaking compatibility between different master versions, which is
acceptable.
Related: SYS#5969
Change-Id: Ia26a945147d68511bb1750d51ed91909e48b4139
We build with --enable-werror during development and in CI. If the code
is built with a different compiler that throws additional warnings, it
should not stop the build.
This patch also effectively removes dependency on autoconf-archive.
Related: OS#5289
Related: SYS#5789
Change-Id: Ie30d8024ee2ad48073dd8be2e02856b6ce1a6b0b
It doesn't make much sense to pull whole libgtp to implement only the
user plan side of GTP. Let's drop it and add a minimal GTP-U
implementation here.
Related: SYS#5516
Change-Id: I53ad4915aaed3bc7574036e963be10514e370fe2
Use the recently introduced IuUP support in libosmocore to send and receive
proper IuUP over RTP instead of regular RTP.
The LLSK AUDIO primitives are updated to provide required information
back and forth.
Depends: libosmocore.git Change-Id Ibe356fa7b1abaca0091e368db8478e79c09c6cb0
Related: SYS#5516
Change-Id: Ie137809e1f91dfd702853c52be97ca79e8604eab
This config file is also installed and used by the systemd service by
default. Local ip address of 127.0.0.3 is used by default to avoid
collisions with default configs of osmo-sgsn and osmo-ggsn.
Related: OS#5360
Change-Id: I02d628f48ca5adbc46e75a015c39a6fb5614a2d6
This is needed for instance:
* AUDIO: video calls
* GTP: secondary pdp contexts
For better abstraction, now both AUDIO and GTP conns use unique ID
namespaces, and one ID is used to identify each one. Each conn relate in
turn to a UE since a context_id is passed during connection
establishment.
Related: SYS#5516
Change-Id: Ib3f60d5ba21defe5259c25e2034fc2217c4d93df
This first implementation uses libgtp to manage the GTPv1-U socket and
pdp contexts, as a proof of concept to have something working for now.
At a later step, it is expected to drop libgtp and use some adhoc code
to handle GTP-U.
Related: SYS#5516
Change-Id: I5a6f5dfc4e508c92adb35210b4dc576d64353366
This first version can send and receive regular RTP, but does not talk IuUP.
Support for IuUP will be added in a future patch. This way we can
already test the whole LLSK<->RTP path.
Change-Id: I9909a7c054ddaabb1bb63d7d06331cc79f642b5d
The LLSK socket is an interface allowing thid-parties to implement and
hook their RLC/MAC/RRC stack to osmo-hnodbe, which takes care of
interconnection with the rest of the RAN and core network (Iuh, RTP,
GTP-U, etc.).
Related: SYS#5516
Change-Id: Icaabb2206d6f141d4fba47dedf71f8ec37e6257d
The higher level bits were used in originally imported hnb-test code in
order to control interaction with the HNBGW over the VTY. This is no
longer needed in osmo-hnodeb, as NAS is in layers above the ones being
handled by an hNodeB.
Regarding RANAP, most of it is going to be handled by the LowerLayer UD
socket peer to be introduced in the future, so we can drop most of it,
as in osmo-hnodeb we'll basically be speaking RUA to the HNBGW and
passing RANAP buffers transparently.
We keep the .c/.h files since some small helpers functions will be
ntroduced later on when adding support for the mentioned LL socket.
Related: SYS#5516
Change-Id: I6aae54734c1c4607beede19169f16bafe35b3a61
The shutdown_fsm doesn't do much right now, but it's included there in
order to allow easy clean up of resources upon Iuh reconnect in the
future, as well as reset the lower layers.
Change-Id: Id35d692218af366843186b0966b62f65bb9eb620
The Iuh code will be further extended next to properly support
reconnect, and hnb will also gain proper shutdown support soon.
Change-Id: I6e94210ab06a34b70c61bb074c58d7b0f4ee75de
Fix for:
File not found: /home/abuild/rpmbuild/BUILDROOT/osmo-hnodeb-0.0.0.202111021358-1.1.arm/usr/share/doc/packages/osmo-hnodeb/examples/osmo-hnodeb/*/osmo-hnodeb*.cfg
File not found: /home/abuild/rpmbuild/BUILDROOT/osmo-hnodeb-0.0.0.202111021358-1.1.arm/usr/share/doc/packages/osmo-hnodeb/README
With this patch applied, the deb and rpm packages build successfully now
(verified in own OBS namespace).
Related: SYS#5516
Change-Id: I3c728489d38272d8477da5050f407708b8c4289b
autoconf-archive is apparently needed to build the package. We have it
in few other Osmocom projects as build dependency too, others seem to
ship related m4 macros directly in a m4 dir.
Fix for:
configure: error: Please install autoconf-archive; re-run 'autoreconf -fi' for it to take effect.
Related: SYS#5516
Change-Id: If9ff232844d72094fb883700185ae152ca40493d
Fixes following warning types:
"passing argument 1 of ‘ranap_cn_rx_co’ from incompatible pointer type
[-Wincompatible-pointer-types]"
Change-Id: If80b57a8d36c28dee7db28cb36a88ed41e0a7328
Let's use already available functionality to handle the conn for us.
This is specially useful since we gain a connect_cb.
Change-Id: I9d884231577aa47af22cd6319130ca5c9e595d61