Commit Graph

3437 Commits

Author SHA1 Message Date
Harald Welte bc82f92a8d move gsm 05.02 related calculations into libosmocore 2011-06-26 14:41:58 +02:00
Harald Welte 457a081379 use new gsm48_number_of_paging_subchannels from libosmocore 2011-06-26 14:21:43 +02:00
Harald Welte 2c1ae479ab system information related bits for osmo-bts 2011-06-26 14:13:37 +02:00
Harald Welte 1a07e21eaf osmo-bsc: bring in sync with recent NM MO changes 2011-06-25 21:10:23 +02:00
Harald Welte f6093a4d0e move {ts,lchan}2chan_nr() functions to gsm_data_shared.c
... this way osmo-bts can use them
2011-06-25 10:02:33 +02:00
Harald Welte 8b65ab9d91 HACK: disable NM_ATTR for CELL GLOBAL ID for sysmo-bts
Do not commit this to master.  It disables a non-standard IE in the BTS
attributes.
2011-06-09 11:03:49 +02:00
Harald Welte d134cc7d9d add back-pointer for l1 as part of BTS role. 2011-06-07 00:12:53 +02:00
Harald Welte df680288a9 initialize NM state for all objects to known state 2011-06-07 00:12:34 +02:00
Harald Welte 850dc6bbfa gsm_data_shared: make sure to initialzie the MO obj_class/obj_inst 2011-06-06 20:31:15 +02:00
Harald Welte 32bc11698a add mo->bts member so we can discover which BTS a MO belong sto 2011-06-06 18:58:48 +02:00
Harald Welte 978714d752 move objclass2{nmstate,mo,}obj() to gsm_data_shared.c (and prefix) 2011-06-06 18:31:20 +02:00
Harald Welte 28307643d7 gsm_data: don't free a bts that's not even allocated yet 2011-06-06 17:52:56 +02:00
Harald Welte 5ac0179f47 make sure to include gsm_data.h, not gsm_data_shared.h 2011-06-06 17:52:38 +02:00
Harald Welte 3300c01e82 split gsm_data.c in gsm_data_shared.c and gsm_data.c
This facilitates the use of gsm_data.c from osmo-bts
2011-06-05 13:31:33 +02:00
Harald Welte 472e7e937c abis_nm.h: Use osmocom/core/abis_nm.h 2011-06-05 11:24:08 +02:00
Harald Welte 135a648ad7 Introduce per-ts TSC
This allows us to configure a TSC for each timeslot, not just one globally for
the entire BTS.
2011-06-03 14:03:27 +02:00
Harald Welte d64c0bca17 gsm_data_shared: introduce 'struct gsm_abis_mo'
... as a common wrapper around nm_attr and nm_state
2011-06-03 14:03:27 +02:00
Harald Welte 6be350c045 split gsm_data.h in gsm_data_shared.h and gsm_data.h
gsm_data.h is the part that contains BSC-specific data, whereas
gsm_data_shared.h is now shareda with osmo-bts
2011-06-03 14:03:27 +02:00
Harald Welte b96be39d47 gsm_data: Use osmocom/gsm/sysinfo.h
and include rest_octets.h only in case of BSC
2011-06-03 14:03:27 +02:00
Harald Welte bb6034e2d8 add HSL femtocell openbsc.cfg example 2011-06-03 14:02:56 +02:00
Holger Hans Peter Freyther 9bdf5a9ef7 mgcp: Fix a typo in the function name 2011-06-02 19:04:22 +02:00
Holger Hans Peter Freyther e36b487958 nat: Add VTY code to configure the SMSC rewriting 2011-06-01 20:47:01 +02:00
Holger Hans Peter Freyther acc4031cf5 nat: Look into the TPDU/SMS-SUBMIT and use the TP-DestAddress for matches
Match the used SMSC and the destination of the SMS and change
the SMSC address if both are matched.
2011-06-01 20:45:12 +02:00
Holger Hans Peter Freyther 9c20571280 nat: Patch the destination SMS address of a message
Use the same filtering infrasturcture to patch the SMSC
address in a CP-DATA/RP-DATA message. Add a very simple
testcase for this code.
2011-06-01 20:45:03 +02:00
Holger Hans Peter Freyther 2e2ff34021 nat: Move the common new message generation code into the base method 2011-06-01 20:41:46 +02:00
Holger Hans Peter Freyther df8e6e9e4a nat: Prepare to patch more than the CC Setup message
Refactor the code to allow having different handlers. The goal
is to be able to patch some SMS messages too.
2011-06-01 20:41:30 +02:00
Holger Hans Peter Freyther ad75eababc nat: Allow to have a regexp to match the MSISDN
The idea that MCC and MNC is enough to classify a subscriber
turns out to be wrong. Certain operatos license a number range
of IMSIs to others. When we see a '^' in the MCC field we treat
it as a regexp. The code now turns the MCC/MNC into a regexp
for the IMSI. It is not using extended POSIX regexp to match
the behavior of the access list.
2011-06-01 20:40:35 +02:00
Holger Hans Peter Freyther 384ef09920 nat: Add a test utility for the number rewriting 2011-05-31 00:37:48 +02:00
Holger Hans Peter Freyther 1d54c40dd6 nat: Allow to rewrite any non international number
Remove the arteficial limitation of the number format
of an unknown number.
2011-05-31 00:37:48 +02:00
Holger Hans Peter Freyther 20102b0c82 nat: Refactor the number patching code into a new method
Separate the code to patch the code and the code to find a
new number based on the old number. This will allow to add
multiple targets for number changing.
2011-05-31 00:37:47 +02:00
Holger Hans Peter Freyther f2c1f25612 abis: Get the structs and values from libosmocore
Remove the forward declarations for functions and structs
that have been moved to libosmocore.
2011-05-31 00:37:47 +02:00
Holger Hans Peter Freyther 4e318f5938 misc: Provide a uninstall-hook to remove the extra files
Fix make distcheck to uninstall files that were installed
by our custom hook.

This is fixing:
ERROR: files left after uninstall:
./share/doc/openbsc/examples/osmo-bsc_mgcp/mgcp.cfg
./share/doc/openbsc/examples/osmo-nitb/nanobts/openbsc.cfg
./share/doc/openbsc/examples/osmo-nitb/nanobts/openbsc-multitrx.cfg
./share/doc/openbsc/examples/osmo-nitb/bs11/openbsc-1bts-2trx.cfg
./share/doc/openbsc/examples/osmo-nitb/bs11/openbsc.cfg
./share/doc/openbsc/examples/osmo-nitb/bs11/openbsc-1bts-2trx-hopping.cfg
./share/doc/openbsc/examples/osmo-nitb/bs11/openbsc-2bts-2trx.cfg
./share/doc/openbsc/examples/osmo-nitb/rbs2308/openbsc.cfg
2011-05-31 00:37:47 +02:00
Harald Welte 4e4fa4ce9b move some more abis_nm related code into libosmocore
This syncs openbsc.git with libosmocore.git commit rev
11c7193ad8ceb4f3898799dc44b700b8b93a59b8
2011-05-24 17:24:44 +02:00
Alexander Huemer 792edebb4f libabis: fix segfault on malformed ipaccess RSL link
This patch fixes a segfault that occured when a ipaccess RSL link gets
closed unexpectedly.
The segfault can be provoked by connecting to the RSL port with ncat and
hitting ^C.
2011-05-24 17:21:32 +02:00
Alexander Huemer 9e26773167 openbsc: update .gitignore 2011-05-24 17:21:32 +02:00
Alexander Huemer 2b245c4f2b openbsc: rename configure.in -> configure.ac
rename autoconf input file to align with osmocom-bb host applications,
and because that suffix is preferred nowadays.
2011-05-24 17:21:32 +02:00
Alexander Huemer db1bd6998b openbsc: add missing AC_LANG_SOURCE for current autoconf
autoconf >=2.68 demands the body of an AC_COMPILE_IFELSE to be wrapped in
an AC_LANG_SOURCE macro, otherwise outputs annoying warnings on the
invocation of `autoreconf -i`. this patch follows that demand.
2011-05-24 17:21:32 +02:00
Harald Welte 80cffaf323 Move system information related defines and code to libosmocore
This brings openbsc in sync with the following libosmocore commit:
b5503136fa234690d5493b19a8aee3a4ef74190d
2011-05-24 15:02:20 +02:00
Harald Welte f142c97907 prepare gsm_data.h header file sharing with osmo-bts
This should not introduce any functional changes, it just re-arranges
some definitions in the header file, and introduces the ROLE_BSC
define that we enable for the BSC-specific fields.
2011-05-24 13:25:38 +02:00
Harald Welte cdc59ff5cc abis_nm: Some more fall-out from the abis_nm move to libosmocore
we want get_string_value(), not the equivalent of get_value_string()
2011-05-23 20:42:26 +02:00
Harald Welte 867d9f3985 abis_nm: fix some fallout regarding abis_nm migration to libosmocore
Thanks to Holger for noticing this.
2011-05-23 20:30:39 +02:00
Harald Welte 15c6172a8d abis_nm: Move lots of generic definitions + code to libosmocore 2011-05-22 22:45:37 +02:00
Harald Welte a85515bea5 use new libosmogsm ip.access protocol header file 2011-05-22 21:57:36 +02:00
Pablo Neira Ayuso 0d2881ad58 bsc: on-demand setup of nanoBTS and HSL femto sockets
The daemons set up nanoBTS and HSL femto sockets by default, ie. the
three sockets to support these two drivers are open even if we have
no BTS of that kind.

This patch enables on-demand socket creation, ie. we only enable them
if we have one BTS at least that requires it.

I added two new attributes to the gsm_bts object, they are:

* the start() function includes the code that we need to run to start
the BTS. This new function contains the socket creation in the
particular case of nanoBTS and HSL femto.

* the started boolean, which is used to know if we have already
started the BTS, ie. we have already invoked start().

Note that, I have splitted the bts_model_*_init() function into two
functions, the _init() functions that register the BTS driver
and the _start() functions that start BTS driver on-demand.

While I was at it, I added several changes/cleanups to this patch:

* Group all bts_model_*_init() calls into one function bts_init(),
which is called in the initialization path of osmo-nitb and
osmo-bsc.

* Add openbsc/bss.h that contains the declaration of
bsc_bootstrap_network, bsc_shutdown_net and bts_init.

* Add missing e1inp_init() in osmo-bsc.

* Fix missing declaration of hsl_setup in openbsc/e1_input.h
2011-05-22 21:03:35 +02:00
Pablo Neira Ayuso c68f754b3b abis: add init function for emulated ipaccess/HSL emulated E1 input
This patch is a cleanup. It adds an init function for the ipaccess
and HSL emulated E1 input drivers.
2011-05-22 21:02:47 +02:00
Pablo Neira Ayuso 6e52b88a17 bsc: fix bail out in case of problems bootstrapping BTS or E1 input
The error message was missing in case of problems bootstrapping the BTS.
The E1 input driver initialization was displayed in the standard output,
now this error is reported via logs.
2011-05-22 21:02:04 +02:00
Pablo Neira Ayuso d2a7878b35 abis: skip e1_input nesting if empty
With this patch, we don't include e1_input if it's empty

[...]
    timeslot 7
     phys_chan_config TCH/F
     hopping enabled 0
e1_input <----------------- empty, it should not show up.
msc
[...]
2011-05-22 21:01:42 +02:00
Holger Hans Peter Freyther 1e9ae4be66 ipaccess: Fix the case of specifying the interface
Pablo pointed out that my previous commit was rubish. If we have
less than two arguments we want ifname to remain NULL and if we
have a second argument (or more) we want to use that as the interface
name to bind to.
2011-05-17 20:34:53 +02:00
Holger Hans Peter Freyther c0370e4399 nat: Use 'paging group' because we have paging forbidden.
Make paging-group deprecated and introduce the new paging group.
2011-05-17 19:28:07 +02:00
Holger Hans Peter Freyther d3080be131 ipaccess-find: Work without providing an interface name
This will use the default route of the operating system, e.g.
be able to use ipaccess-find without special permission.
2011-05-14 19:46:05 +02:00