aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2016-11-11abis_om2000: switch superchannel/timeslot between stateslynxis/altcswitchAlexander Couzens1-0/+2
Change-Id: I3050ad452b6645ff500fa8db82a7e2b7056fd452
2016-11-03abis_om2k: protect mo fsms by NULL checkAlexander Couzens1-1/+17
also set them NULL Change-Id: I30df0b9ab8bc47ba9756c8388e977deed0e40200
2016-11-03rbs2000: allow to use unixsocket as wellAlexander Couzens1-2/+4
Change-Id: Iae5ec9cf9dd396c84b7dd3bf38e66060ac8d0722
2016-11-02rsl: support for ericssons propritary SI13 formatPhilipp1-2/+11
Ericsson has introduced a propritary format to issue the S13 BCCH information. Normally the system info type field for SI13 would be encoded as 0x28. Ericsson encodes that field as 0x02 and ads a bcch mapping parameter, (IEI=F2) This patch sets the BCCH mapping to 0x00 (=BCCH Normal) statically (0xF200) Change-Id: Ie0900f9b810744172b3090ce1b0ef7b7a1132946
2016-11-02rbs2000: Add missing bts feature definitionsPhilipp1-0/+2
function bts_model_rbs2k_start() in bts_ericsson_rbs2000.c lacks the feature definition for GPRS and EGPRS. Change-Id: I777a67862084aa6cca39cfc43f5708e47608b0e6
2016-11-02pcu_if: original pcu sock interface from osmo-btsPhilipp3-0/+1101
The pcu interface required to support bsc co-located pcu uses pcu_sock.c and its related header files as a starting point. See also: osmo-bts.git: ced9a5d0e2c7e3371760f1c07df7b41cfe7ab71d Change-Id: I46b0a65f1633c40053d43b57b786b042f20f12bd
2016-11-02OM2000: Throw error when MO can not be enabledPhilipp1-0/+10
Throw warning message in case the MO state does not change to enabled after sendeing an Enable-Request message. Change-Id: Idfde8d6f71526e8acfea51835732515a4bee858e
2016-11-02om2000: added support for ericssons sabm negotiationPhilipp1-0/+3
This patch adds support for ericssons sambm negotiation. This patch depends on libosmo-abis commit: 2788c7eacab91cd39d68e316fc8ee87763bbfeb4 Change-Id: I56b1c1cef07a61143fc0e8058480805cddfeff96
2016-11-02OM2000: Add fault report parsingPhilipp1-1/+129
This patch adds parsing for OM2000 MO fault report map parsing, the bits in the fault maps are counted out and displayed. Change-Id: I6e2928f39b09bc08e9ab78bc10bc81e07f7eb55d
2016-11-02RBS2000: re-establish any lost signalling linksHarald Welte1-0/+12
Contrary to standard A-bis, in the RBS2000 case the BSC connects the signalling data links (LAPD) to the BTS. In case one of them drop, we need to attempt to re-establish them. This requires libosmo-abis with Change-Id I07f0f79e0cda09766f357032ffb4e7ad643d448a Change-Id: I710b5af5d0acbdd3febd314849340f2adb7abd80
2016-11-02om2000: Add support for querying RBS capabilitiesroot3-0/+28
Change-Id: Id1fbaf41286f3651ce8f210eb8da05fb51179c96
2016-11-02OM2000: Fix state machien for CF/TRXC on START ResultHarald Welte1-1/+1
When receiving the 'Start Result' message, for CF and TRXC MO we directly transition to performing the Operational Info. In that case, we need to return after sending the Operational Info and skip the usual processing for the default case below. Change-Id: I99860d198b337ffe461b240bda20dc10e1b5b2cb
2016-11-02abis_rsl: Add mandatory IE for Ericsson RBS2000 PDCH activationHarald Welte1-0/+3
We need to include the RSL_IE_ACT_TYPE Information Element with the proprietary coding 0x0F for "packet channel related activation" in order for the RBS2xxx to accept this message Change-Id: I53bad674d3bb02f5210e71ca5b4280be9c956a57
2016-11-02WIP: OM2000: Full state machine implementation using osmo_fsmHarald Welte4-286/+1132
Our existing OM2000 code for initializing all Managed Objects of a BTS at startup was never complete. Rather than trying to fix the old-style code, introudce a hierarchy of osmo_fsm's reflecting the full protocol hand-shake and sequence of bringing up the individual MO's. If this works out well, it mihgt make sense to convert the TS 12.21 OML code for other BTS models, too. Change-Id: I3e11b28ba22b8c227e0401e6207fdda5381dda8c
2016-11-02Attempt at extending dynamic PDCH support to Ericcson RBS2000Harald Welte4-9/+61
In Ericsson RBS2000, all PDCH's are dynamic, i.e. there is only one shared PCHAN type for TCH/F, TCH/H and PDCH. The PDCH needs to be activated with a RSL CHAN ACT with some proprietary coding of the Channel Number IE. Change-Id: I48089fcf8328d52f57e97b003790ffdeed766367
2016-11-02mncc_builtin: Properly reject DTMFlynxis/masterHarald Welte1-0/+2
As per TS 23.014, a GSM MSC must implement mobile-originated DTMF generation. We gate the DTMF signalling messages to MNCC, and expect the external MNCC handler to deal with it. However, the internal MNCC handler simply ignored such singalling messages, rather than rejecting DTMF altogether. It turns out failure to respond to START DTMF will cause some phones to behave in interesting ways, particularly with modem firmware v6.01.00, see https://osmocom.org/issues/1817). In this case the phone is not able to release the call as the pending response to the START DTMF is probably keping a reference or lock of some sort. Change-Id: I336f0cd0a6396b522d228479a417fd4d606157ac
2016-11-01Cosmetic: Add missing switch to usage helpPhilipp1-0/+1
Adds the -p --pcap option to the help text. Change-Id: I3e763c30ca13bc51c8b72af8a94558c92439f109
2016-11-01gsm0408: Adding log output for 3g specific RR messagesPhilipp2-7/+11
GSM 04.18, which is the successor of GSM 04.08, describes additional RR 3g specific message types. This commit adds log output for those messages. The behaviour is not changed all affected message types are still forwared to the MSC as they were before. See also 3GPP TS 04.18, section 10.4, table 10.4.1 The change requires to update libosmocore as well, see also commit f48fdb3a108da0dc23d7af4ac021e98e11f07152 in libosmocore.git for details. Change-Id: I41f2242fdf59c3eb4b3f8f7f003c17f7e0df01aa
2016-11-01OML: Improve OML attribute handlingPhilipp12-221/+638
the OML attribute tables are hardcoded. To set variable parameters, the hardcoded data structure (tlv) is patched on byte level during runtime. This patch replaces this mechanism. - Replace hardcoded OML attribute tables with dynamically generated TLV structures. - Add unit tests to check if the OML attribute tables are generated correctly - Put OML attribute table generator code in a separate file: bts_ipaccess_nanobts_omlattr.c Change-Id: Ibeb34a84912d6cf695f553a34c69320fca7d08fa
2016-11-01Decrease count_codecs logging verbosityMax1-2/+2
Use channel type name instead of number and log it with DEBUG facility otherwise it produces lots of irrelevant messages for SDCCH* Change-Id: I11b04e0cb02bf6ed01f6076cb31a56d8921d735e
2016-10-30info log: iu: add line break to and tweak rx RAB Ass Resp logNeels Hofmeyr1-3/+2
Change-Id: I50e701493f3951a43506cc37753a30d47f8d601f
2016-10-28sndcp: Fixups for sndcp layer based on coverity-scan suggestionsPhilipp5-13/+18
- missing break in gprs_sndcp_pcomp.c, line 143 - string overflow in slhc_test.c, line 211 - sizeof mismatch in gprs_sndcp_xid.c, line 1369 and 1378 - mismatching signedness in gprs_sndcp_xid.c, line 1377 - needless < 0 comparison in gprs_sndcp_xid.c, line 477 - needless < 0 comparison in gprs_sndcp_xid.c, line 209 - missing returncode check in v42bis_test.c, line 320 - wrong pointer dereferentialization in gprs_sndcp_comp.c, line 73 Change-Id: I4f9adf251f5119e67ffe76baad6f1f996ac8dbad
2016-10-28DTX DL: Add FACCH cacheMax1-0/+3
When DL DTX is active and silent period is in progress dtx.cache is populated by SID UPDATE message which about to be scheduled next. If at that moment FACCH message arrives (which have higher priority) we have to send ONSET message to L1 but we can't invalidate cache with SID UPDATE as it will be used for SID FIRST message to resume silent period after FACCH transmission is over (provided there were no incoming voice in between). Hence the necessity for separate buffer to store content of FACCH message while we're sending ONSET to L1 while keeping SID UPDATE cached. Change-Id: I316e81af893b24766bf259baaed7a0be75a11694 Related: OS#1801
2016-10-27bsc: count the usage of codec by setting the lchan activeAlexander Couzens2-0/+47
We count the codec when the channel was successful setted up Using sign_link->trx->bts instead of msg->trx to get the bts. Add OSMO_ASSERT for bts within count_codecs() Change-Id: Ib49c7c337980a7d6f189d7a0551ca2e4c3822f45
2016-10-18Replace magic number with defineMax2-1/+5
Value 4 used as magic number by both OpenBSC and OsmoBTS so it make sense to add it to shared header. See ebb483b69a5319e522ba5f713e9cb6f68a814a6a in osmo-bts for details. Change-Id: I9c6ad68f4c6aa72d39ec7e5a6968b36ec20e79f4
2016-10-14fix mistypes, spaces and tabsAlexander Couzens3-17/+17
Change-Id: I651473f638365bbd333c4c80d223cdd023dd2c51
2016-10-13msgb ctx: use new msgb_talloc_ctx_init(), don't access talloc_msgb_ctxNeels Hofmeyr5-13/+7
Drop extern definitions of talloc_msgb_ctx and use msgb_talloc_ctx_init() instead. In sgsn_test.c, use a local variable msgb_ctx to do the talloc report from the return value of msgb_talloc_ctx_init(). Change-Id: I2f9ace855f0ecbdc9adf5d75bcb1a3d666570de4
2016-10-13msgb talloc ctx: initialize in all main() scopesNeels Hofmeyr15-0/+20
Add msgb_talloc_ctx_init() call to many main() functions still lacking a msgb talloc context. Change-Id: Ib0d6751260659cabf18a7ce80680ba2fb4228ea1
2016-10-13gtphub_test.c: remove unused include of msgb.hNeels Hofmeyr1-1/+0
Change-Id: I7a8003a0e0bff803941d7981ffc07cf78c3ae9a9
2016-10-13meas_pcap2db.c: remove unused include of msgb.hNeels Hofmeyr1-1/+0
Change-Id: I2197432c9482537bd5cf06a6c4fc912607ffab53
2016-10-13bs11_config: initialize bs11 tall ctx, use instead of bsc ctxNeels Hofmeyr1-0/+2
Actually initialize tall_bs11cfg_ctx as named const. Change-Id: I3b42b29cd1a688cb4c9d1d4e44208509d936e4ef
2016-10-13ipaccess-config: initialize root talloc ctx with nameNeels Hofmeyr1-0/+2
tall_ctx_config is defined but remains NULL. Instead initialize as named const. Change-Id: Iec708eda2e4f8eb88b9e5bc5f82f6342709760b1
2016-10-13Log use of incompatible BS-AG-BLKS-RES valueMax1-2/+7
There's "channel-descrption bs-ag-blks-res" vty command which sets BS-AG-BLKS-RES which might be too high if CCCH is combined with SDCCHs. Previously proper value was silently enforced. Log this situation explicitly and add spec reference to the comment. Change-Id: I53e2b881fc28472d6709f063fb265a4e6a0fffcd
2016-10-12jenkins.sh: use osmo-build-dep.sh, log test failuresNeels Hofmeyr1-40/+23
Like in libosmo-abis' jenkins.sh Change-Id: I4d6ffd5b230dd095650cc2231678b66056a8e4b5
2016-10-12DTX DL: use FSM for AMRMax1-12/+9
- consolidate all DTX-specific things in a separate struct - rename struct fields to better reflect meaning - add pointer to DL FSM for AMR - remove unused flag - expand buffer to hold cached payload alongside with CMR/CMI Change-Id: Idac8609faf9b5ced818fde899ccfc6ed0c42e8fd
2016-10-10gsm_trx_name(): don't break if trx is NULLNeels Hofmeyr1-2/+5
Just as a general precaution deemed to fit such a convenience function that lives in libcommon, no actual failure observed. Change-Id: I8e77fe1abc402469fd037e2fde2f46e2c8114f59
2016-10-10abis_rsl_rx_dchan(): guard against lchan_lookup() returning NULLNeels Hofmeyr1-0/+2
Found this by coincidence, no actual failure case was observed. lchan_lookup() does have a return NULL code path, so we should not blindly use its returned pointer. Change-Id: I34ce126d36420b8194c88c0faa865294334a6658
2016-10-10Revert "bsc: count the usage of codec by setting the lchan active"Neels Hofmeyr2-45/+0
This reverts commit 38e9ea3f7f385c6660c5958970af5c71adc1682b. Introduced a reproducable segfault, because msg->trx is not actually set/used in the openbsc code paths. Program received signal SIGSEGV, Segmentation fault. count_codecs (lchan=0x1, bts=<optimized out>) at ../../../src/libbsc/abis_rsl.c:104 104 rate_ctr_inc(&bts->network->bsc_ctrs->ctr[BSC_CTR_CODEC_V1_FR]); (gdb) bt #0 count_codecs (lchan=0x1, bts=<optimized out>) at ../../../src/libbsc/abis_rsl.c:104 #1 0x0000000000425661 in abis_rsl_rx_dchan (msg=<optimized out>) at ../../../src/libbsc/abis_rsl.c:1516 #2 abis_rsl_rcvmsg (msg=0x8143f0) at ../../../src/libbsc/abis_rsl.c:2611 #3 0x00007ffff71420d0 in handle_ts1_read (bfd=<optimized out>) at ../../src/input/ipaccess.c:271 #4 ipaccess_fd_cb (bfd=0x815af8, what=1) at ../../src/input/ipaccess.c:386 #5 0x00007ffff7779b62 in osmo_fd_disp_fds (_eset=0x7fffffffe590, _wset=0x7fffffffe510, _rset=0x7fffffffe490) at ../../src/select.c:149 #6 osmo_select_main (polling=polling@entry=0) at ../../src/select.c:189 #7 0x0000000000406fac in main (argc=<optimized out>, argv=0x7fffffffe738) at ../../../src/osmo-nitb/bsc_hack.c:385
2016-10-05DTX: add flag for AMR HR P*Max1-0/+5
Add flag to explicitly track the state of DTX DL for AMR HR whe SID_FIRST_P1 has been sent to L1 already but no next frame available yet: this can be followed by SID_FIRST_P2 or SID_FIRST_INH depending on arrival of voice frame within next 60 ms. Change-Id: Id28b07b8e83cfe5e84de48a2f124084036580cd4
2016-10-05DTX: extend SID cacheMax1-1/+1
In addition to RTP payload SID cache got to store CMR/CMI prefix. Extend the buffer so it can fit in. Change-Id: Ibd4a63604a82cad3ce65f0752bffefa4b083e1b3 Fixes: Coverity CID#149508
2016-10-04gprs/gprs_llc: count UI frames over SAPI in the statisticsAlexander Couzens1-0/+3
Change-Id: I5f38d70e046ce9ca1342e6f862329dc3cded8995
2016-10-04msc: add counters to track call attempts/active/success/failedAlexander Couzens3-1/+42
active_calls describe all calls in active state. call.complete Call got terminated by disconnect requested either by MS or MSC. call.incomplete Call got terminated by any other reason. call.active Calls reached active state. Change-Id: I49b93af2e6a0ba16c2fb00b7b83974e8a6a16df3
2016-10-04bsc: count the usage of codec by setting the lchan activeAlexander Couzens2-0/+45
we count the codec when the channel was successful setted up Change-Id: Ifc8a406a11dce16b9e7f3310841e470545550a2c
2016-10-01configure: check for pkg-config presenceNeels Hofmeyr1-0/+7
Change-Id: I1484fc8b870df6f0aeef0c13078c66d0cfa97e75
2016-10-01build: be robust against install-sh files above the root dirNeels Hofmeyr1-0/+3
Explicitly set AC_CONFIG_AUX_DIR. To reproduce the error avoided by this patch: rm install-sh # in case it was already generated. touch ../install-sh # yes, outside this source tree autoreconf -fi This will produce an error like ... configure.ac:16: error: required file '../ltmain.sh' not found configure.ac:5: installing '../missing' src/Makefile.am: installing '../depcomp' autoreconf: automake failed with exit status: 1 See also automake (vim `which automake`) and look for 'sub locate_aux_dir'. Change-Id: I3b6d9ad4e5af44c2bdf3844c7bf8e8517bd61d8e
2016-09-30SGSN: Fixing build configPhilipp2-4/+8
Tests for V.42bis, slhc, llc-xid and sndcp-xid are built and executed on all build configurations, but are only needed when the sgsn (gprs) is built. This patch adds conditions check if the tests mentioned abvove are needed or not. Change-Id: I6921e6198ea7f99fe5276f91cbc522091853bc4e
2016-09-30vty_test_runner.py: fix indents to use spaces, fix vim commentNeels Hofmeyr1-27/+27
Most of this file uses four spaces of indenting. Replace all tabs with spaces. Remove the erratic 'set' from the recently added vim comment at the bottom. Change-Id: I4273b3314defb1e5b31b509c2ac7d7c6cd6834cf
2016-09-30vty_test_runner.py: make unittest print all output by defaultNeels Hofmeyr1-1/+1
Add option to TextTestRunner that shows print output on stdout. It's better to see everything in our jenkins runs and not hide test output. Change-Id: If4be1ad1c81c9ed4ab9b208b4c6d1e4b2cc8fdd5
2016-09-30log CTRL bind only onceNeels Hofmeyr4-8/+0
After libosmocore 38d232ee5d2ceb045d9ad6d3a23afcb4972523f7 which outputs 'CTRL at <ip> <port>' from ctrl_interface_setup_dynip(), there's no need to log the CTRL bind here anymore. Change-Id: I1a874efe365a1ecf8ec37b058215b95b9a635ec2
2016-09-29fix: send SNDCP XID only on GERAN Gb contextsNeels Hofmeyr1-5/+7
Add a condition for GERAN Gb. SNDCP and IuPS were developed on separate branches, and the merge results in code trying to use an llme on a UTRAN Iu context where the llme is NULL, leading to stack corruption upon PDP ctx act. Change-Id: Ibb20d738c1b64d36630ce8eceb54c33ba4f1b003