aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/osmo-bsc
AgeCommit message (Collapse)AuthorFilesLines
2011-08-19src: port openBSC over libosmo-abis0.9.15Pablo Neira Ayuso4-26/+29
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-07-19osmo-bsc: Only keep the newest of subsequent invalid positionsDaniel Willmann1-1/+12
2011-07-19osmo_bsc: Track the last three locations.Daniel Willmann1-7/+47
2011-07-19osmo-bsc: Add valid field to location commandDaniel Willmann1-6/+13
2011-07-19osmo-bsc: Improve return handling in verify_net_locDaniel Willmann1-3/+2
2011-07-19osmo-bsc: Compare char * with NULL instead of 0Daniel Willmann1-1/+2
2011-07-19bsc: Correct the cast for the signal dataHolger Hans Peter Freyther1-3/+3
There is a dedicated msc_signal_data cast the signal_data to this type and enjoy working connection closing on a per MSC base.
2011-07-19bsc: Fix a memory leak when the BSC is not allowed to open a connectionHolger Hans Peter Freyther1-0/+4
When the BSC is refusing to open an outgoing connection the SCCP connection was leaked. Use the normal free as the socket should be either closed or disconnected.
2011-07-19bsc: Call the RF Control interface ctrl all the wayHolger Hans Peter Freyther3-10/+10
We had the rf_ctrl_name and the rf_ctl pointer, make both use the word ctrl.
2011-07-18misc: Remove the osmocom/core/process.h includeHolger Hans Peter Freyther1-1/+0
The osmo_daemonize moved from process.h to application.h (that is already included), remove the process.h include.
2011-07-13controlif: declare controlif_setup() in control_cmd.hHarald Welte1-2/+0
this avoids us to copy+paste external declarations over all 'main' files.
2011-07-13controlif: Adapt to minor data structure change regarding nm_stateHarald Welte1-1/+1
This was required due to master diverging from where controlif had last branched off.
2011-07-13osmo_bsc: Add some libctrl commandsDaniel Willmann1-0/+164
* net.location to get/set the geographical location of the network format is <tstamp>,<lat>,<lon>,<height> * per trx rf_locked command (net.bts0.trx0.rf_locked) * network-wide rf_locked command (net.rf_locked)
2011-07-13osmo_bsc: Use libctrl, handle ctrl cmds on port 4249 or from the natDaniel Willmann3-0/+39
This patch initializes libctrl to listen for connections on port 4249. Additionally, control messages arriving from the nat will also be processed.
2011-07-12osmo-bsc: Some more logging (LOGL_INFO).Harald Welte1-0/+12
2011-07-12osmo-bsc: Add missing return statement causing CIPH MODE REJHarald Welte1-0/+2
due to a missing return statement, we ran into the 'reject' case of bssmap_handle_cipher_mode(). Due to another bug in libosmocore, the reject message was corrupted (fixed in libosmocore commit 0c83670a595a278b7d1fb7b21b2eacab84d3c031)
2011-07-11osmo_bsc_msc: use DMI consistnetly for debugging packet payloadHarald Welte1-1/+1
2011-07-11bsc/msc bssap: some logging clean-upHarald Welte1-6/+16
* the DEBUG level will print hex-dumps of messages * all other messages are INFO or higher * print human-readable name of BSSMAP message types
2011-07-11use the recently introduced gsm0808_bssmap_name() of libosmogsmHarald Welte1-2/+4
This allows human-readable printing of message types on the A interface.
2011-06-30bsc: Require osmo-sccp 0.0.6 and update the APIHolger Hans Peter Freyther2-3/+4
2011-06-25osmo-bsc: bring in sync with recent NM MO changesHarald Welte1-5/+5
2011-05-22bsc: on-demand setup of nanoBTS and HSL femto socketsPablo Neira Ayuso1-9/+2
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-12misc: Use the osmo_init code for signals and loggingHolger Hans Peter Freyther1-10/+8
Use the libosmocore code to ignore certain signals by default (e.g. SIGHUP, SIGPIPE) and use the new code to create a default stderr logging target and initialize it properly.
2011-05-07src: use namespace prefix osmo_* for misc utilsPablo Neira Ayuso2-6/+6
Summary of changes: s/bcd2char/osmo_bcd2char/g s/char2bcd/osmo_char2bcd/g s/hexparse/osmo_hexparse/g s/hexdump/osmo_hexdump/g s/hexdump_nospc/osmo_hexdump_nospc/g s/ubit_dump/osmo_ubit_dump/g s/static_assert/osmo_static_assert/g
2011-05-06src: use namespace prefix osmo_wqueue*Pablo Neira Ayuso2-6/+6
Summary of changes: s/struct write_queue/struct osmo_wqueue/g s/write_queue_init/osmo_wqueue_init/g s/write_queue_clear/osmo_wqueue_clear/g s/write_queue_enqueue/osmo_wqueue_enqueue/g s/write_queue_bfd_cb/osmo_wqueue_bfd_cb/g
2011-05-06src: use namespace prefix osmo_signal*Pablo Neira Ayuso6-7/+7
Summary of changes: s/signal_cbfn/osmo_signal_cbfn/g s/register_signal_handler/osmo_signal_register_handler/g s/unregister_signal_handler/osmo_signal_unregister_handler/g s/dispatch_signal/osmo_signal_dispatch/g
2011-05-06src: use namespace prefix osmo_fd* and osmo_select*Pablo Neira Ayuso3-13/+13
Summary of changes: s/struct bsc_fd/struct osmo_fd/g s/bsc_register_fd/osmo_fd_register/g s/bsc_unregister_fd/osmo_fd_unregister/g s/bsc_select_main/osmo_select_main/g
2011-05-06src: use namespace prefix osmo_timer* for timer functionsPablo Neira Ayuso3-19/+19
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-05-04bsc: Provide a show statistics commandHolger Hans Peter Freyther1-0/+11
2011-04-26bsc: Allow to have a list of MSCs/MUXs to connect toHolger Hans Peter Freyther2-28/+48
Be able to configure a list of destinations (duplicates allowed) that will be tried in a round robin fashion. The change is in the bsc_msc_connection to operate on a list. We achieve the round robin nature with the same trick used in the paging code to delete and append the current entry. The nat code was updated to compile but one can only configure one destination.
2011-04-26bsc: Allow the NAT to query the list of LACsHolger Hans Peter Freyther1-3/+38
Right now the code assumes that any request coming from the NAT is a query and the code responds to with a list of configured LACs.
2011-04-26bsc: Handle MGCP coming from Osmo Extensions headerHolger Hans Peter Freyther1-0/+20
Start using the new Osmo Extension header and forward MGCP to the MGCP GW.
2011-04-13bsc: Remove the handling of the RTP option from the switch/case stmtHolger Hans Peter Freyther1-3/+0
The 'P' code was not present in the getopt call anyway.
2011-04-13bsc: Use the new name in the usage statementHolger Hans Peter Freyther1-1/+1
2011-04-07bsc: Add the bsc-rf-socket command to master as wellHolger Hans Peter Freyther2-6/+26
Make it possible to specify the rf-socket path via the vty configuration as well. The command line setting will override it though.
2011-04-07bsc: Include openbsc/ipaccess.h for the drop_oml commandHolger Hans Peter Freyther1-0/+1
Fix a compiler warning about the drop_oml command.
2011-03-29bsc: Make the MSC node a child of CONFIG_NODEHolger Hans Peter Freyther1-15/+15
The VTY code calls the write function for nodes in the order of registration of the node and not in terms of hierachy of nodes. This means that the e1_input code is written before the MSC node that was the child of the network. Make the MSC_NODE a direct descendant of the CONFIG_NODE and avoid this issue.
2011-03-29bsc: Fix the generation of the config file, fix indentionHolger Hans Peter Freyther1-4/+4
Fix the indention of codec-list, bsc-welcome-text, mid-call-text and the mid-call-timeout. Fix the name of the codec-list in the write method.
2011-03-23Fix build of bsc-nat and GPRS code after include path changeHarald Welte5-8/+8
The last patch changed the osmocore include paths, this fixes some build problems caused by it
2011-03-23src: use new library libosmogsm and new path to headers in libosmocorePablo Neira Ayuso8-15/+15
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-19bsc: change bsc_vty_init to take logging categories as parameterPablo Neira Ayuso1-1/+1
This change is required to finish the integration of the VTY and the per-application logging categories that provides: "vty: integration with logging framework" in libosmocore. It has been tested with osmo-nitb. The other just compiled tested.
2011-03-04fix path of bscconfig.h include fileHarald Welte1-1/+1
2011-03-04prefix sub-directories containing libraries with 'lib'Harald Welte1-2/+6
... and make sure tests work again after restructuring
2011-03-03re-structure the OpenBSC directory layoutHarald Welte11-0/+2675
The new structure divides the code into a number of libraries for the BSC core functionality, MSC core functionality, Abis transport, TRAU and other bits. This doesn't introduce any functional code change but simply moves around files and alters Makefile.am accordingly. Next step would be to disentangle a lot of the inter-library dependencies and make the individual bits of code more independent.