Osmocom's Base Station Controller for 2G mobile networks https://osmocom.org/projects/osmobsc
Go to file
Philipp Maier 844876f8d5 codec_pref: move match_codec_pref() to separate c-file and add unit-test
At the moment there are three sources that may advertise a list of
supported audio codec/rate settings. There is the MS that advertises
advertises a speech codec list and the MSC that sends a channel type
information element over A and there are also settings in the bsc
configuration file that may restrict the codec/rate types that are
allowed to use.

The function match_codec_pref() looks at all of the three buckets and
selects a codec that satisfies all three. This is already a somewhat
complicated process, overit is very isolated, so lets give it its own
c-file.

Due to the lack of unit-tests it is very hard to make changes here so
lets add also unit-test to make sure that regressions are catched early.

- Put match_codec_pref() and all its helper functions into a separate
  c-file.
- Add a unit test.

Change-Id: Iabedfdcec8b99a319f2d57cbea45c5e36c7b6e29
Related: OS#3361
2018-07-22 06:16:11 +00:00
contrib contrib: osmo-bsc.service: Fix osmo-mgw.service dependency 2018-03-23 15:44:19 +00:00
debian debian: Move meas related binaries into new package osmo-bsc-meas-utils 2018-06-25 19:22:16 +00:00
doc doc: charts: illustrate new plan for ts and lchans 2018-06-08 16:16:42 +00:00
include codec_pref: move match_codec_pref() to separate c-file and add unit-test 2018-07-22 06:16:11 +00:00
m4 move openbsc/* to repos root 2017-08-27 03:52:43 +02:00
src codec_pref: move match_codec_pref() to separate c-file and add unit-test 2018-07-22 06:16:11 +00:00
tests codec_pref: move match_codec_pref() to separate c-file and add unit-test 2018-07-22 06:16:11 +00:00
.gitignore update.gitignore with 'tags' files and 'deps' directory 2018-01-28 03:23:07 +01:00
.gitreview .gitreview: update repo url to new location 2017-08-08 17:24:04 +02:00
.mailmap add .mailmap file for mapping git author name/mail in shortlog 2016-08-08 17:40:28 +00:00
AUTHORS move openbsc/* to repos root 2017-08-27 03:52:43 +02:00
COPYING move openbsc/* to repos root 2017-08-27 03:52:43 +02:00
Makefile.am Remove unneeded .py scripts 2017-12-19 18:08:46 +01:00
README rewrite README 2017-09-06 16:25:09 +02:00
README.vty-tests Remove obsolete ./configure option 2018-01-02 12:53:11 +01:00
configure.ac codec_pref: move match_codec_pref() to separate c-file and add unit-test 2018-07-22 06:16:11 +00:00
git-version-gen git-version-gen: look for .git in ./, not ../ 2017-08-27 03:52:43 +02:00
osmoappdesc.py remove traces of osmo-bsc_nat in python test (osmoappdesc/test_runner) 2018-06-10 22:13:47 +02:00

README

About OsmoBSC
=============

OsmoBSC originated from the OpenBSC project, which started as a minimalistic
all-in-one implementation of the GSM Network. In 2017, OpenBSC had reached
maturity and diversity (including M3UA SIGTRAN and 3G support in the form of
IuCS and IuPS interfaces) that naturally lead to a separation of the all-in-one
approach to fully independent separate programs as in typical GSM networks.

OsmoBSC was one of the parts split off from the old openbsc.git. Before, it
worked as a standalone osmo-bsc binary as well as a combination of libbsc and
libmsc, i.e. the old OsmoNITB. Since the standalone OsmoMSC with a true A
interface (and IuCS for 3G support) is available, OsmoBSC exists only as a
separate standalone entity.

OsmoBSC exposes
- A over IP towards an MSC (e.g. OsmoMSC);
- Abis interfaces towards various kinds of BTS;
- The Osmocom typical telnet VTY and CTRL interfaces.

Find OsmoBSC issue tracker and wiki online at
https://osmocom.org/projects/osmobsc
https://osmocom.org/projects/osmobsc/wiki

OsmoBSC-NAT is a specialized solution to navigating RTP streams through a NAT.
(Todo: describe in more detail)