aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/libbsc
AgeCommit message (Collapse)AuthorFilesLines
2012-01-17lchan: Close a possible still open RTP SocketHolger Hans Peter Freyther1-0/+12
In case of a reset (loss of the BTS) close down all remaining RTP Proxy sockets. In case of a lchan_free shout if the rtp proxy is still open. I would prefer if the proxy code sits inside the gsm subscriber connection.
2012-01-17ho: Remove rtp_proxy.h include, no proxy code in hereHolger Hans Peter Freyther1-1/+0
2012-01-15abis: gsm_data_shared.h includes libosmo-abis header, add abis to cflagsHolger Hans Peter Freyther1-2/+2
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.
2012-01-15channel: Review lchan_free calls and the state the channel is inHolger Hans Peter Freyther1-1/+1
In case of a memory allocation failure in rsl_rx_chan_rqd we would have left the channel in the LCHAN_S_ACT_REQ state. Move the state change below the allocation.
2012-01-15lchan: Rename release_reason to release_modeHolger Hans Peter Freyther1-5/+5
Use the name of GSM 08.58 for the release mode.
2012-01-15channel: The error timer and the lchan_deact_tmr are both runningHolger Hans Peter Freyther1-1/+2
In case a BTS does not send the RF Channel Release ACK and we are closing the channel because of an error two timers are running to set the state back to none. Make lchan_deact_tmr_cb and rsl_rx_rf_chan_rel_ack behave the same in regard to changing the state of the lchan. For the other direction we are save, the error path will set the state to NONE and the timeout will call lchan_free to set the channel type back to NONE, only then the lchan may be allocated again. The channel release procedure requires some more tweaking, some part was started in the zecke/28c3 branch and needs to be tested/integrated with the goal of having one common release path.
2012-01-15Revert "libbsc: Log if a channel is freed with lchan->state != LCHAN_S_NONE"Holger Hans Peter Freyther1-4/+0
In case of a failed channel we still want the channel to not be re-allocated right away but keep it closed/unused for (T3109 + T311). rsl_rx_rf_chan_rel_ack has a check to not set the channel to S_NONE in case the channel is in the error state. Add the camp Harald added a timer to set the channel back to the none state in case the RF Channel Release is not acked. This reverts commit fc462dd59ee4772f06c9f2477b36b3f166a8e74b.
2012-01-15bsc: Fix "show lchan" for partially provided informationHolger Hans Peter Freyther1-13/+53
show lchan should be capable of showing all allocated lchans, all of a given bts, a given trx, a given ts. This feature was broken when I added the ability to show a more simple summary. Restore the initial behavior by splitting out the for loops for the bts/trx/ts and check if we have parsed all parameters and then call and return the subroutine.
2011-12-27bsc: Assume assignment_complete/assignment_fail is setHolger Hans Peter Freyther1-4/+4
The osmo-nitb application sometimes crashes because the BSC API is doing an assignment underneath which is not handled by the code, add dumy handlers to not crash, the right thing to do is to change MNCC to have an assignment that can succeed/fail. The keyword to look for is MNCC_LCHAN_MODIFY and mncc_sock should wait for an ack/nack but right now the call just continues.
2011-12-24RSL: Nokia BTS reports TA in quarter-bits, not full bits.Andreas Eversberg1-2/+3
We need to compensate accordingly...
2011-12-16RSL: BS-11 reports TA in quarter-bits, not full bits.Andreas Eversberg1-4/+11
We need to compensate accordingly...
2011-12-02Add NITZ (timezone) support as part of MM INFOGus Bourg1-0/+29
The UTC offset from the operating system will be used by default to calculate the NITZ in MM INFO. However, a "timezone" vty command is added at the BTS level, allowing BTS-specific overrides, e.g. in case BTSs are distributed accross multiple timezones.
2011-11-13bsc_vty: Fix usage of deprecated osmo_osmo_hexdump_nospcSylvain Munaut1-1/+1
The typo was fixed upstream Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-11-02nokia: Use a longer T200 because RSL link can be pretty slow after a resetAndreas.Eversberg1-2/+4
Written-by: Andreas Eversberg <jolly@eversberg.eu> Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-10-18libbsc/nokia_site: Increase reset timer to 15 secondsSylvain Munaut1-1/+1
Also make sure to specify seconds in the 'seconds' field. Doing otherwise is an abuse that non longer works with the new timer infra. Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-10-18libbsc/nokia_site: Fix reset procedure and add option to skip it.Sylvain Munaut2-4/+31
do_reset was not initialized anywhere anymore, so the reset was never triggered. It's now fixed and we add an option to skip it in the config so that when in production, you can restart without config changes quickly. Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-10-17libbsc/nanobts: Fix NSVC OML init sequence for some rugby modelsSylvain Munaut1-1/+2
The NVC never goes to OFF LINE but only to DEPENDENCY (because of missing attributes). Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-10-17libbsc: Don't include ext_info in SI13 if not in EGPRS modeSylvain Munaut1-1/+1
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-10-12bsc: Drop the BTS instead of exiting the applicationHolger Hans Peter Freyther1-7/+12
When the BTS reboots it might not want to accept our BTS Attr, do not leave the bsc_msc_ip/bsc_nitb but simply drop the BTS connection. Manually cherry-picked from: 54e6c8b3400b376ed36fe84f28f7930d2d9ff24b
2011-10-12vty: Document more VTY parameters of a commandHolger Hans Peter Freyther1-33/+55
The below is used to identify commands that need proper documentation diff --git a/src/vty/command.c b/src/vty/command.c index ab1eaca..bcf72d0 100644 --- a/src/vty/command.c +++ b/src/vty/command.c @@ -426,6 +426,20 @@ void install_element(enum node_type ntype, struct cmd_element *cmd) cmd->strvec = cmd_make_descvec(cmd->string, cmd->doc); cmd->cmdsize = cmd_cmdsize(cmd->strvec); + + printf("NODE: %d\n", ntype); + + int j; + for (j = 0; j < vector_count(cmd->strvec); ++j) { + vector descvec = vector_slot(cmd->strvec, j); + int i; + for (i = 0; i < vector_active(descvec); i++) { + struct desc *desc = vector_slot(descvec, i); + if (desc == NULL) + continue; + printf(" %s %s\n", desc->cmd, desc->str); + } + } }
2011-09-29Undo my changes to bts_siemens_bs11.c it works as it was.Andreas Eversberg1-35/+0
2011-09-29All 3 E1-BTS should now work with dahdi and misdn_lapd driver.Andreas Eversberg3-9/+41
2011-09-26Fix Ericsson RBS2000 support after libosmo-abis mergeHarald Welte2-21/+11
The libosmo-abis merge broke Ericsson RBS support, as it didn't get the part right where the per-TRX OML sign_link is determined while transmitting OM2000 messages. As a result of this fix, we can remove the 'to_trx_oml' parameter to _abis_nm_sendmsg(), which is a nice cleanup.
2011-09-13bsc_api: Add some more comments to the codeHarald Welte1-0/+10
2011-09-06fix some "implicit declaration" warnings in libbscAlexander Huemer1-0/+2
2011-09-03bsc_api: Make sure to use correct MS Power on ASSIGNMENT CMDDieter Spaar1-1/+1
When gsm48_send_rr_ass_cmd() is being called to send the ASSIGNMENT COMMAND, we need to use the propwer lchan->ms_power setting, not some fixed magic "0x3" number. Without this patch, every MS would transmit at a very high output power fullowing an assignment command - more than what was set in the config file with "ms max power"
2011-08-30bsc: Fix a crash in case we get a NACK from the BTS for a new channelHolger Hans Peter Freyther1-5/+5
In case of a nack the secondary_lchan will be NULLed but then the T10 timeout will attempt to release the channel and we will try to release a NULL pointer. Daniel witnessed this crash at the camp and added the NULL check at: 28d9ccbca0cb522c90f551cf4bf243acab7a1944, it is also the proper fix given the _NAK handling.
2011-08-26BTS support: nokia/ericcson - use e1inp_ts->lapdHarald Welte2-4/+4
the lapd member has moved from the .driver.dahdi.lapd to the more generic lapd location inside 'struct e1inp_ts'
2011-08-23Revert "we don't have openbsc/ipaccess.h anymore"Harald Welte1-1/+1
This reverts commit 8697e43bb2b9d6f217090ca93057d9d4ab6942a9.
2011-08-22audio: Move the setting of MultiRateConfig to one placeHolger Hans Peter Freyther1-14/+19
Move it to one place so it is more easy to make changes to that.
2011-08-22audio: From RTP point of view we can use one payload for HR/FR AMRHolger Hans Peter Freyther1-2/+1
Remove the separation of half-rate and full-rate AMR. The used rate can be found inside the AMR payload. The signalling of what kind of traffic channel is used can be done with the GSM 08.08 Chosen Channel IE in the Assignment Complete message. This way I can use a fixed payload type in the MGCP GateWay but have a mixed TCH/F and TCH/H config. E.g. use TCH/F FR3 for some subscribers when connected to MSC A but use AMR5.9 on a TCH/F for MSC B when all TCH/Hs are gone.
2011-08-22audio: Remove the hardcoding of the RTP PayloadHolger Hans Peter Freyther1-4/+0
The MGCP config must be correct and use 99 for RTP AMR.
2011-08-20we don't have openbsc/ipaccess.h anymoreHarald Welte1-1/+1
2011-08-19src: port openBSC over libosmo-abis0.9.15Pablo Neira Ayuso12-131/+525
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-08-19src: use new msg->dst pointer instead of deprecated msg->trxPablo Neira Ayuso8-84/+114
This patch modifies openBSC code to use msg->dst which stores the pointer to the signalling link structure instead of the pointer to the transceiver structure. This patch prepares the introduction of libosmo-abis.
2011-08-13bsc: Crash fix for the osmo-nitb/MNCC codeHolger Hans Peter Freyther1-1/+2
It is possible that MNCC sends a MNCC_LCHAN_MODIFY and wants a channel mode that is not possible on the current lchan, in that case a new channel is assigned. We now crash as the osmo-nitb is not having an assignment complete handler, add a NULL check.
2011-08-11libbsc: Log if a channel is freed with lchan->state != LCHAN_S_NONEDaniel Willmann1-0/+4
I'm not sure if that is an abnormal condition or not, but it seems that lchan state and type have to be none for the lchan to be considered idle.
2011-08-11libbsc: Cosmetic fix for the channel activate NACK log messageDaniel Willmann1-1/+1
2011-08-11libbsc: Release the RF channel if BTS thinks it's still in useDaniel Willmann1-0/+3
The Nokia metrosite BTS seem to keep the channels open indefinitely. If osmo-nitb is restarted while one of the channel was still active and tries to activate that channel again the bts would return a CHANNEL ACTIVATE NACK with "Radio channel already activated". This accumulated over the restarts so soon enough no more channels were available. This patch sends a release request to the bts so the channel becomes available again.
2011-08-11libbsc: Call lchan_free in the timeout callbacksDaniel Willmann1-2/+4
This makes sure that the lchans can be used again. (state and type are set to NONE)
2011-08-11libbsc: Only skip lchans with state AND type set to NONE in show lchanJan Luebbe1-1/+1
The function lchan_alloc only considers lchans to be available if both the type and state are NONE. So change show lchan to list all lchans that are not considered available.
2011-08-11RSL: add timer for lchan activation/deactivation without BTS responseHarald Welte1-1/+37
The timer callback will simply reset the lchan state to NONE in order to prevent channels getting stuck in 'activation requested' or 'deactivation requested' states.
2011-08-11E1 Input: Move 'show e1_*' command to e1_input_vty.cHarald Welte1-117/+0
2011-08-10libbsc: Don't free secondary lchan if it is NULL.Daniel Willmann1-1/+5
2011-08-10NOKIA: Resend SABM on unknown TEI from LAPDPablo Neira Ayuso1-1/+8
2011-08-10NOKIA: use 'struct value_string' whenever possibleHarald Welte1-472/+243
2011-08-10NOKIA: use 'value_string' for severity and bts_typeHarald Welte1-48/+31
2011-08-10NOKIA: Move more static variables into 'struct gsm_bts'Harald Welte1-14/+9
2011-08-10NOKIA: move 'conf' and 'bts_type' into 'struct gsm_bts'Harald Welte1-12/+10
This is one step in the direction of supporting multiple Nokia BTS
2011-08-10NOKIA: Some more whitespace changesHarald Welte1-20/+11