aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/include/openbsc/gsm_data.h
AgeCommit message (Collapse)AuthorFilesLines
2013-02-08Fix of IMMIDIATE ASSIGNMENT REJECT messageAndreas Eversberg1-0/+1
The message was corrupt at several points. They are fixed now and successfully tested. A default T3122 timer value of 10 is defined by default now. If set to 0, the reject message will not be sent. Note that when using existing configs with T3122 value set to 0.
2013-01-01libmsc: Track and update the location update expiryJan Luebbe1-0/+3
Set the subscriber expiry timeout to twice the duration of the location update period and provide functions subscr_expire() and db_subscriber_expire() to mark subscribers offline that have missed two location update periods. This patch increases the DB revision to 3, so the hlr will be incompatible with prior versions. We should allow 0 for T3212 as well to disable the location update period. In that case we will need a way to indicate that in the database.
2012-11-24SMPP: add small utility program 'smpp_mirror'Harald Welte1-3/+1
This program binds as ESME transceiver to a SMSC and simply mirrors back all SMS that it receives.
2012-11-24SMPP: Implement support for MO SMSHarald Welte1-0/+8
Each ESME can have a number of prefix-matching routes, or it can be a 'default route' to whcih all otherwise unknown SMS destinations are routed.
2012-11-16SMPP: Implement transaction mode for SUBMIT-SMHarald Welte1-0/+17
WARNING: if the ESME disconnects, osmo_esme gets freed, and sms->smpp.esme might point to invalid/unallocated memory!
2012-09-11libctrl: Change controlif_setup so it returns the ctrl handleDaniel Willmann1-0/+3
nat: Catch up with controlif_setup API change We now save a control handle reference in the nat osmo-bsc: Catch up with controlif_setup API change We now save a control handle reference in the gsm network
2012-08-17VTY: dynamically create BTS "type" command syntaxHarald Welte1-0/+3
2012-07-02BSC: introduce new "sysmobts" BTS modelHarald Welte1-0/+2
so far, osmo-bts/sysmobts used to be entered as "sysmobts" type in the configuration file. However, there are some differences in the protocol/behaviour and we should reflect that by a new BTS plugin (with lots of code reuse from the nanobts driver).
2012-06-16libgb: move GPRS specific msgb CB definitions to separate headerHarald Welte1-25/+0
2012-06-03Allow VTY-based configuration of T3105Harald Welte1-0/+1
This timer will only be forwarded to BS11 and Ericsson Abis so far, not to Nokia and ip.access BTS yet.
2012-03-16bsc: Create a osmo_bsc_data and embed osmo_msc_dataHolger Hans Peter Freyther1-1/+1
We want to have multiple MSCs but we also have some data that is only present on a per BSC basis. Right now the MSC data is not allocated with talloc, so we have some change in the talloc contexts.
2012-01-15abis: gsm_data_shared.h includes libosmo-abis header, add abis to cflagsHolger Hans Peter Freyther1-1/+0
gsm_data_shared.h includes e1_input.h of libosmo-abis, add the LIBOSMOABIS_CFLAGS to Makefile.am, remove AM_LDFLAGS at the same time as we only build .a archives.
2011-11-06mncc: Address the fixme and put the mncc_sock_state in gsm_networkHolger Hans Peter Freyther1-0/+3
Remove the unused mncc_sock_write_pending, switch over from the static s_state to net->mncc_state.
2011-08-22audio: Remove the hardcoding of the RTP PayloadHolger Hans Peter Freyther1-1/+0
The MGCP config must be correct and use 99 for RTP AMR.
2011-08-19src: port openBSC over libosmo-abis0.9.15Pablo Neira Ayuso1-0/+4
This is a big patch that ports openBSC over libosmo-abis. Sorry, the changes that are included here are all dependent of libosmo-abis, splitting them into smaller pieces would leave the repository in some intermediate state, which is not desired. The main changes are: - The directory libabis/ has been removed as it now lives in libosmo-abis. - new configuration file format for nanoBTS and HSL femto, we need to define the virtual e1_line and attach it to the OML link. - all the existing BTS drivers (nanoBTS, hsl femto, Nokia site, BS11 and rbs2000) now use the new libosmo-abis framework. - use r232 input driver available in libosmo-abis for bs11_config. - use ipa_msg_recv instead of old ipaccess_read_msg function. - delete definition of gsm_e1_subslot and input_signal_data. These structures now lives in libosmo-abis. Most of this patch are deletions of libabis/ which has been moved to libosmo-abis. This patch also modifies openBSC to use all the new definitions available in libosmocore and libosmo-abis. In order to do that, we have replaced the following: - DINP, DMI, DMIB and DMUX by their respective DL* correspondences. - SS_GLOBAL by SS_L_GLOBAL - SS_INPUT by SS_L_INPUT - S_GLOBAL_SHUTDOWN by S_L_GLOBAL_SHUTDOWN - SS_INPUT by SS_L_INPUT - S_INP_* by S_L_INP_* sub-signals - E1INP_NODE by L_E1INP_NODE vty node This patch has been tested with: - one nanoBTS - the HSL femto with the examples available under libosmo-abis - BS11 with both dahdi and misdn drivers.
2011-06-05split gsm_data.c in gsm_data_shared.c and gsm_data.cHarald Welte1-0/+10
This facilitates the use of gsm_data.c from osmo-bts
2011-06-03split gsm_data.h in gsm_data_shared.h and gsm_data.hHarald Welte1-513/+4
gsm_data.h is the part that contains BSC-specific data, whereas gsm_data_shared.h is now shareda with osmo-bts
2011-06-03gsm_data: Use osmocom/gsm/sysinfo.hHarald Welte1-3/+3
and include rest_octets.h only in case of BSC
2011-05-24move some more abis_nm related code into libosmocoreHarald Welte1-23/+0
This syncs openbsc.git with libosmocore.git commit rev 11c7193ad8ceb4f3898799dc44b700b8b93a59b8
2011-05-24prepare gsm_data.h header file sharing with osmo-btsHarald Welte1-114/+132
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-22bsc: on-demand setup of nanoBTS and HSL femto socketsPablo Neira Ayuso1-0/+3
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-06src: use namespace prefix osmo_counter*Pablo Neira Ayuso1-30/+30
Summary of changes: s/struct counter/struct osmo_counter/g s/counter_inc/osmo_counter_inc/g s/counter_get/osmo_counter_get/g s/counter_reset/osmo_counter_reset/g s/counter_alloc/osmo_counter_alloc/g s/counter_free/osmo_counter_free
2011-05-06src: use namespace prefix osmo_timer* for timer functionsPablo Neira Ayuso1-8/+8
Summary of changes: s/struct timer_list/struct osmo_timer_list/g s/bsc_add_timer/osmo_timer_add/g s/bsc_schedule_timer/osmo_timer_schedule/g s/bsc_del_timer/osmo_timer_del/g s/bsc_timer_pending/osmo_timer_pending/g s/bsc_nearest_timer/osmo_timers_nearest/g s/bsc_prepare_timers/osmo_timers_prepare/g s/bsc_update_timers/osmo_timers_update/g s/bsc_timer_check/osmo_timers_check/g
2011-04-18misc: Remove sys/types.h includes from the filesHolger Hans Peter Freyther1-1/+0
These are not needed any more. We used them for u_int types but we now use uint which comes from stdint.h
2011-04-18misc: Move from u_int to uint types of stdint.hHolger Hans Peter Freyther1-81/+81
This was done with sed on the files.
2011-03-23src: use new library libosmogsm and new path to headers in libosmocorePablo Neira Ayuso1-8/+8
libosmogsm is a new library that is distributed in the libosmocore. Now, openbsc depends on it. This patch gets openbsc with this change. This patch also rewrites all include path to the new osmocom/[gsm|core] Signed-off-by: Pablo Neira Ayuso <pablo@gnumonks.org>
2011-03-06OM2000: Track the Operational Info and MO stateHarald Welte1-0/+8
2011-03-04[HSL] initial support for the HSL 2.75G FemtocellHarald Welte1-0/+4
The HSL Femtocell seems to be a poor man implementation of the ip.access Abis/IP protocol, but cutting corners wherever possible. We try to workaround those corners wherever possible...
2011-02-15Allow configuration of SI5 neighbor list != SI2 neighbor listHarald Welte1-1/+10
This introducecs the new VTY command "neighbor-list mode manual-si5" in combination with "si5 neighbor-list (add|del) arfcn <0-1024>", which allows you to (optionally) have neighbor channel lists that differ in SI5 and in SI2.
2011-02-14VTY: Allow for per-BTS-model specific config file write functionsHarald Welte1-0/+6
This way a BTS module can append config data to the TS, TRX and BTS sections.
2011-02-13OM2000: Allow configuration of CON from VTYHarald Welte1-0/+3
However, we have no code that generates the OM2K CON List attribute.
2011-02-13OM2000: Allow VTY based configuration of IS connection groupsHarald Welte1-0/+5
2011-02-13INPUT: Allow for a per-TRX OML linkHarald Welte1-0/+2
So far, all BTS we have interfaced had one OML link per BTS, independent of the number of TRX. In Ericsson RBS 2000, there is an OML link for the DXU/IXU, and one additional OML link for each TRX/TRU.
2011-02-13[RBS2000] Initial attempt at Ericsson RBS2000 supportHarald Welte1-0/+1
2011-02-13[OML] Allow each BTS model to specify the OML callbackHarald Welte1-0/+2
This allows us to add BTS models that do not use the standard TS 12.21 OML
2011-02-11[BSC] Move the BTS-type specific code from bcs_init.c to bts_*.cHarald Welte1-6/+0
bsc_init.c was a big mess even only for two supported BTS models, so before adding more BTS types, this needs a cleanup. All the BTS specific code from bsc_init.c has now moved into bts_{siemens_bs11,ipaccess_nanobts}.c This has required that input_event() and nm_state_event() get both converted to proper libosmocore signals instead of referencing external symbols.
2011-01-11[BSC] Allow manual override of neighbor cell listHarald Welte1-0/+1
So far, OpenBSC simply assumed that all BTS's configured in openbsc.cfg are neighbors of each other. While this is true for small site installations, it is definitely not true in most real world cases. We now have the following new commands at the 'configure bts' level: 'neighbor-list mode (auto|manual)' for selecting the mode 'neighbor-list (add|del) arfcn <0-1024>' for adding/deleting ARFCN in manual mode
2011-01-06subscr: Remember if we need to call subscr_put_channel at the end.Holger Hans Peter Freyther1-0/+1
Remember if this channel got opened due a paging response and in that case when we close it down we will call subscr_put_channel that will try to page the subscriber again. This highlights the lack of a good subscriber management in the MSC code.
2011-01-01MNCC: pass the actual 'struct msgb' down the mncc_recv() callbackHarald Welte1-2/+2
this is required as we no longer have a dequeue-handler that can take care of free()ing the message after passing it to the MNCC handler.
2011-01-01MNCC: move cc_tx_to_mncc() from gsm_data.h into mncc.cHarald Welte1-6/+0
2011-01-01MNCC: rename mncc_upq_enqueue() to cc_tx_to_mncc()Harald Welte1-1/+1
The new function name clearly indicates: The Call Control (TS 04.08, msc-side in OpenBSC) wants to transmit something to the MNCC interface.
2010-12-26sms: Introduce a SMS queue that will be responsible for deliveryHolger Hans Peter Freyther1-0/+2
The SMSqueue will be responsible of sending to the user. It will do so in a loop and will also try not to overload the BTS. This means the throughput of SMS will be limited.
2010-12-25paging: Introduce a GSM_PAGING_BUSY event for a special timeoutHolger Hans Peter Freyther1-0/+1
Start counting the attempts of each paging request and call the callback with the PAGING_BUSY type when the paging request timed out but the subscriber was not paged at all. This can only happen with a huge paging backlog. In case the system has so many pending paging
2010-12-24subscr: Make it possible to keep subscribers in RAM.Holger Hans Peter Freyther1-0/+3
This is implemented by not freeing the subscriber when the reference count becomes smaller than zero. We hope that this will save many database accesses during the congres.
2010-12-24BSC Call Control: Actually implement call statisticsHarald Welte1-3/+4
The existing call realated statistics counters apparently were never used. This introduces a new set of counters, two for the MO and MT case.
2010-12-23Use 04.08 IMM ASS REJECT in case we run out of channelsHarald Welte1-0/+1
If the user has a non-zero 'timer t3122' in the config file, we will send an IMM ASS REJECT in case we run out of resources.
2010-12-22MNCC: introduce mncc_upq_enqueue() wrapper around msgb_enqueue()Harald Welte1-0/+6
This wrapper will allow us to add queue related code at one single location in the code as opposed to three locations.
2010-12-21abis_nm: Band aid on OML initialisation by queuing messagesHolger Hans Peter Freyther1-0/+6
Instead of sending many messages we will queue the OML messages and wait for the ACK/NACK before sending the next message from the queue. We tag the msgb to remember if we need to wait for an ack or not. We keep the order of all messages, on ACKs and similiar occassions we will drown the queue until we reach a message that needs to be acked and then wait for that ack again. Possible breakage can appear when we send an OML (e.g. BS11 specific message) msg which does not need to be acked through the abis_nm_sendmsg call. The fix will be to use the _direct version of this method. Re-Enable as it might have fixed something... who knows. Conflicts: openbsc/include/openbsc/abis_nm.h openbsc/include/openbsc/gsm_data.h openbsc/src/abis_nm.c openbsc/src/gsm_data.c
2010-12-01include: Small fixes to gsm_data.hSylvain Munaut1-2/+3
We don't really need openbsc/gsm_04_08.h or abis_rsl.h But we do need some definition from libosmocore Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2010-12-01bsc: Allow to configure Optional Cell Selection params from vtySylvain Munaut1-0/+2
The default values are those where the parameters are encoded as '0' and they're not output in the config file if that case Signed-off-by: Sylvain Munaut <tnt@246tNt.com>