2021-01-22 19:14:55 +00:00
|
|
|
osmo-cbc - Osmocom Cell Broadcast Centre
|
|
|
|
========================================
|
|
|
|
|
|
|
|
This repository contains a C-language implementation of a minimal
|
|
|
|
3GPP Cell Broadcast Centre (CBC). It is part of the
|
|
|
|
[Osmocom](https://osmocom.org/) Open Source Mobile Communications
|
|
|
|
project.
|
|
|
|
|
|
|
|
A Cell Broadcast Centre is the central network element of a cellular network
|
|
|
|
for distribution of Cell Broadcast and Emergency messages.
|
|
|
|
|
|
|
|
This code implements
|
|
|
|
* the CBSP protocol on the CBC-BSC interface
|
|
|
|
* a custom HTTP/REST based interface for external users to create/delete CBS messages
|
|
|
|
|
|
|
|
We plan to add support for the following features in the future:
|
|
|
|
* the SABP protocol on the CBC-RNC (or CBC-HNBGW) interface for UMTS support
|
|
|
|
* the SBcAP protocol on the CBC-MME interface for LTE support
|
|
|
|
|
|
|
|
Homepage
|
|
|
|
--------
|
|
|
|
|
|
|
|
The official homepage of the project is
|
|
|
|
https://osmocom.org/projects/osmo-cbc/wiki
|
|
|
|
|
|
|
|
GIT Repository
|
|
|
|
--------------
|
|
|
|
|
|
|
|
You can clone from the official osmo-cbc.git repository using
|
|
|
|
|
2022-06-18 09:41:07 +00:00
|
|
|
git clone https://gitea.osmocom.org/cellular-infrastructure/osmo-cbc
|
2021-01-22 19:14:55 +00:00
|
|
|
|
2022-06-18 09:41:07 +00:00
|
|
|
There is a web interface at <https://gitea.osmocom.org/cellular-infrastructure/osmo-cbc>
|
2021-01-22 19:14:55 +00:00
|
|
|
|
|
|
|
Documentation
|
|
|
|
-------------
|
|
|
|
|
|
|
|
User Manuals and VTY reference manuals are [optionally] built in PDF form
|
|
|
|
as part of the build process.
|
|
|
|
|
|
|
|
Pre-rendered PDF version of the current "master" can be found at
|
|
|
|
[User Manual](https://ftp.osmocom.org/docs/latest/osmocbc-usermanual.pdf)
|
|
|
|
as well as the [VTY Reference Manual for osmo-cbc](https://ftp.osmocom.org/docs/latest/osmocbc-vty-reference.pdf)
|
|
|
|
|
|
|
|
Mailing List
|
|
|
|
------------
|
|
|
|
|
|
|
|
Discussions related to osmo-cbc are happening on the
|
|
|
|
openbsc@lists.osmocom.org mailing list, please see
|
|
|
|
https://lists.osmocom.org/mailman/listinfo/openbsc for subscription
|
|
|
|
options and the list archive.
|
|
|
|
|
|
|
|
Please observe the [Osmocom Mailing List
|
|
|
|
Rules](https://osmocom.org/projects/cellular-infrastructure/wiki/Mailing_List_Rules)
|
|
|
|
when posting.
|
|
|
|
|
|
|
|
Contributing
|
|
|
|
------------
|
|
|
|
|
|
|
|
Our coding standards are described at
|
|
|
|
https://osmocom.org/projects/cellular-infrastructure/wiki/Coding_standards
|
|
|
|
|
|
|
|
We us a gerrit based patch submission/review process for managing
|
|
|
|
contributions. Please see
|
|
|
|
https://osmocom.org/projects/cellular-infrastructure/wiki/Gerrit for
|
|
|
|
more details
|
|
|
|
|
|
|
|
The current patch queue for osmo-cbc can be seen at
|
|
|
|
https://gerrit.osmocom.org/#/q/project:osmo-cbc+status:open
|
2023-05-16 09:28:50 +00:00
|
|
|
|
|
|
|
|
|
|
|
Generating asn1c code
|
|
|
|
---------------------
|
|
|
|
|
|
|
|
Upstream master as1nc from [vlm](https://github.com/vlm/asn1c) [doesn't support
|
|
|
|
APER encoding](https://github.com/vlm/asn1c/issues/452). Nevertheless, the
|
|
|
|
upstream fork maintained by a big contributor
|
|
|
|
[mouse07410](https://github.com/mouse07410/asn1c) does support it, and it is
|
|
|
|
used in osmo-cbc to generate the SBc-AP code from ASN.1 files present in
|
|
|
|
src/sbcap/asn1/.
|
|
|
|
|
|
|
|
In order to regenerate the code, one shall adjust the ASN1C_SKELETON_PATH and
|
|
|
|
ASN1C_BIN_PATH in configure.ac to point to the built & installed asn1c from
|
|
|
|
mouse07410 (usually `vlm_master` branch). Last generated code was built using
|
|
|
|
commit hash 08b293e8aa342d465d26805d1d66f3595b2ce261.
|
|
|
|
|
|
|
|
Then, do the usual `autoreconf -fi && ./configure`, using a buildir != srcdir
|
|
|
|
(important, in order to avoid ending up with tempotary files in srcdir and
|
|
|
|
making it difficult to stash the relevant changes).
|
|
|
|
|
|
|
|
Finally, run `make -C src/ regen`, which will regenerate the files and copy over
|
|
|
|
the skeletons, with git possibily showing changes in the following paths:
|
|
|
|
- include/osmocom/sbcap/
|
|
|
|
- src/sbcap/gen/
|
|
|
|
- src/sbcap/skel/
|
|
|
|
|