Age | Commit message (Collapse) | Author | Files | Lines |
|
Change-Id: Ia7e95e5e0c8c1c4218dab52a4020912bd3d327f6
|
|
Change-Id: I37100a925cb89b850684e08bf1e97550d90f3eee
|
|
Change-Id: I36e9ba7a5ee94f879c9d89605a316ca264bbe2ac
|
|
In osmo-bsc-sccplite we so far didn't implement the inbound RESET
procedure. We instead ignored any RESET message from the MSC. This
commit adds support for RESET: We will destrpy any SCCP connections
and acknowledge the RESET to the MSC.
As osmo-msc is requiring the BSC to handle an inbound RESET procedure,
this commit allows osmo-msc to properly initialize the A interface
towards osmo-bsc-sccplite via a translating/routing osmo-stp. While
we don't anticipate any new deployments of osmo-bsc-sccplite, making
it interoperate with osmo-msc enables us to do more testing of
osmo-bsc-sccplite.
Change-Id: Iceb8278deb36d6103662a704f489ba0d685e04d3
|
|
When we receive unimplemented/unhandled message types, we shouldn't
simply silently discard them, but print a log message for the
benefit of the user.
Change-Id: I8ecb1d2134f9c6a96f29e145fa0430880e971168
|
|
vty_install_default() and install_default() will soon be deprecated.
Depends: I5021c64a787b63314e0f2f1cba0b8fc7bff4f09b
Change-Id: I4951982fc78ae167d8e16a672d7af44d703721a9
|
|
vty_install_default() and install_default() will soon be deprecated.
Depends: I5021c64a787b63314e0f2f1cba0b8fc7bff4f09b
Change-Id: I4951982fc78ae167d8e16a672d7af44d703721a9
|
|
Change-Id: I30151897d621a1428095006e1f0e8a47059de4cd
|
|
This marks the first tagged source code revision after the repository
split and subsequent removal of GPRS related code.
Change-Id: I5d19269983c9281bf36a7279151891902eff0013
|
|
See osmo-ci change I2409b2928b4d7ebbd6c005097d4ad7337307dd93 for rationale.
Depends: I2409b2928b4d7ebbd6c005097d4ad7337307dd93
Change-Id: Ibafac7c8a48f46237835e91c80e72543c6841d08
|
|
This is to avoid naming conflicts with the new osmo-bsc, which resides
in its own git repository (osmo-bsc.git) and which uses libosmo-sigtran
and implements (primarily) 3GPP AoIP.
Change-Id: If10d1599b62d010726336134091a4e855c380d93
|
|
The GPRS related programs osmo-sgsn, osmo-gtphub and osmo-gbproxy
have been split off into the separate osmo-sgsn repository, which
can be found at
git://git.osmocom.org/osmo-sgsn.git
http://git.osmocom.org/osmo-sgsn/
This is technically unrelated but conceptually part of the larger
NITB-split activities.
I did a brief log of all changes in src/gprs and couldn't find any
commits that we might have applied here but which are missing from
osmo-sgsn.git.
Change-Id: If60e28b23f5cfb2c4eb354951363a2bb63f3e0de
|
|
The library code for rate counter initialization, which is called
from the descendants of bsc_network_alloc() might already want to
log something (particularly after Change-Id
Ifc6ac824f5dae9a848bb4a5d067c64a69eb40b56 in libosmocore), so the
logging framework must be initialized before.
Change-Id: I1e893c97e023e63489fe8c46539b5e507d3cec8f
|
|
... the library code we call could want to log something, after all.
Port of osmo-bsc Change-Id Ic01e9bfb63d7b6def9432103e744c23c90f0f6b9
Change-Id: Ib4be9541771e95ca4e051b778fc3958202aab9ab
|
|
The test clearly fails unless bts->network is set correctly. Not sure
why this hasn't shown up before?
Port of osmo-bsc Change-Id I47786ed06ff610213d7a0b56d0ebf1c537cd7568
Change-Id: Id1cd4ce8f1e03b9715e1223414918bc69499e13d
|
|
* log administrative state transitions
* log what's caused it
* while at it, mark boolean variable as such
Cherry-picked from osmo-bsc be356ed32fbd28dc8d1460371d9e47511b20ac63
Change-Id: I3e25a19fac4d0b4886d825c9876771b1f66efe58
Related: SYS#3864
|
|
unsigned long can be 32 bits on some arch/OS, while "current" field is
always 64 bit because it's a uint64_t.
Change-Id: I9719c69ef661bb46d8bb43cf8d6537c3e8d47826
|
|
Related: OW#3893
Program terminated with signal SIGSEGV, Segmentation fault.
0 gsm_lchan_name (lchan=lchan@entry=0x0) at gsm_data_shared.c:342
(gdb) bt
0 gsm_lchan_name (lchan=lchan@entry=0x0) at gsm_data_shared.c:342
1 0x0805ab80 in lchan_release (lchan=0x0, sacch_deact=sacch_deact@entry=0, mode=mode@entry=RSL_REL_LOCAL_END)
at chan_alloc.c:410
2 0x0805c1dd in handle_ass_fail (msg=0x94142b8, conn=0x9251048) at bsc_api.c:459
3 dispatch_dtap (msg=0x94142b8, link_id=0 '\000', conn=0x9251048) at bsc_api.c:598
4 gsm0408_rcvmsg (msg=msg@entry=0x94142b8, link_id=0 '\000') at bsc_api.c:658
5 0x08058ca2 in abis_rsl_rx_rll (msg=0x94142b8) at abis_rsl.c:1686
6 abis_rsl_rcvmsg (msg=0x94142b8) at abis_rsl.c:2097
7 0xb7e8cf9a in handle_ts1_read (bfd=0x94e8e08) at input/ipaccess.c:271
8 ipaccess_fd_cb (bfd=0x94e8e08, what=1) at input/ipaccess.c:386
9 0xb7ee8434 in osmo_select_main (polling=polling@entry=0) at select.c:158
10 0x0804bd7c in main (argc=6, argv=0xbfc27144) at osmo_bsc_main.c:272
(gdb) print lchan
$2 = (const struct gsm_lchan *) 0x0
Possible scenario in which this crash can appear:
1- gsm0808_assign_req() calls handle_new_assignment() which sends an CHAN
ACTIVATE msg and arms T10 timer.
2- ACTIVATE ACK is received (handle_chan_ack), which calls
gsm48_send_rr_ass_cmd() which sends an ASSIGNMENT CMD, and doesn't
disable/modify T10 timer.
3- T10 timeout is triggered (assignment_t10_timeout()), which sets
conn->secondary_lchan = NULL
4- Immediately after, the ASSIGNMENT FAILURE message (which might have been
already queued) is processed in handle_ass_fail, and then the crash occurs.
This race condition is not an issue for handle_ass_compl() path because there's
this check there which would trigger most probably if secondary_lchan is NULL:
"if (conn->secondary_lchan != msg->lchan)"
Change-Id: Ied5bd90b9c06f27135a2e3c46e40d49d27d9a387
|
|
This adds a test case to explicitly verify the BA-IND is as expected
by the behaviour introduced in Change-Id I1cd0dc51026dcd0e508e63eea4e333e6b184787a
Related: OS#2525
Change-Id: I3e5b260af97ce96a221e4d51f6c1b41d58817a59
|
|
In masurement reports sent by the MS, this can then be used to correlate
if a given measurement report was in response to a BCCH/neighbor list
received on BCCH (SI2xxx) or on dowlink SACCH (SI5xxx).
Closes: OS#2525
Change-Id: I1cd0dc51026dcd0e508e63eea4e333e6b184787a
|
|
Change-Id: I5afc6e6a5a1d6b6a8ee73fdb60cc28074cf8585b
|
|
Save the time when OML link to BTS was established and show it in
vty. That's useful when troubleshooting issues like periodic/sporadic
BTS restart.
Related: SYS#3889
Change-Id: I9e4e8504afe8ca467b68d41826f61654e24d9600
|
|
Remove trivial functions by using more specific defines for CTRL
commands.
Change-Id: I719b75b6ca1e9372ea11e7e9ff7896021f357035
|
|
This patch just makes the log match chronologically what
is happening. We receive the deliver_sm_resp before we send
the RP ACK to the MS.
Change-Id: I29270652957f58093be8bf7f2e898b0b4933bd93
|
|
If smpp_first is set off and there is a local receiver for this sms,
then return 0. Without this patch, we return 'rc' which is uninitialized
in the scenario that I'm describing above.
Change-Id: I0c0bcd919cc3275d491995d17c6a32bb61c6afe1
|
|
Fix four instances of VTY tests working because it used to include implicit
'exit' commands to the parent node.
Since libosmocore change-id Id73cba2dd34676bad8a130e9c45e67a272f19588 = commit
d64b6aed235f6e4d84a2cb8e84b32c3179260254, we no longer do this implicit-exit in
interactive VTY shells.
*) the nitb node lacked the default command set (including 'end' and 'exit'),
so it was impossible to leave the nitb node. This hit in
testSubscriberCreateDelete. Add vty_install_default(NITB_NODE).
*) in testPingPongConfiguration, the intention is to enter the /msc 0 node.
Drop prior entry of the 'network' node, which looks like an oversight. So
far the 'msc 0' caused an implicit 'exit' and thus worked, now fails.
*) Two instances following comments "# Check searching for outer node's
commands", which look like they are intended to check for this implicit-exit
behavior. This is obsolete, drop those parts of the tests.
Change-Id: I77931d6a09c42c443c6936000592f22a7fd06cab
|
|
Annotate this esme route, so we can use it to return -EINPROGRESS to
skip sending premature RP-ACK to the mobile station, in case we're
handling sms routes through SMPP.
Now that we have this information in place, we use it wherever possible
to avoid kludgy checks on sms->receiver.
sms_free() already releases references to this object, so we should be
fine with this.
Fixes: 4e5b90a594f9 ("libmsc: remove 'deferred' parameter in sms_route_mt_sms()")
Change-Id: Ib8a8fd9bbb0d3b6aff7931e4bacbea99d000e484
|
|
Change-Id: I8a2ff700bbe3806bb2c1d561c6f2249fae3d8dd8
Note: this patchset depends on https://gerrit.osmocom.org/#/c/3822/1
|
|
Handover attempt for power budget case should be performed every N SACCH frames,
where N = Power Budget Interval.
First measurement report with mr->nr = 0 was used for the first handover attempt
in this case, which is not correct, because first usable report should have
mr->nr = net->handover.pwr_interval-1.
Moreover using the first measurement report with mr->nr = 0 for handover attempt
could lead to unnecessary handover, because usually av_rxlev for first measurement report
from MS is worse than for following reports.
Change-Id: If7f54a4cb179eaa9e5eb147b9477633ac618e69e
|
|
According to 3GPP TS 44.018 §1.8 the "network shall never enable PBCCH
and PCCCH".
Change-Id: I319e71a4b0c682361529e9c21377398a826b934b
Related: OS#2400
|
|
See
https://osmocom.org/projects/cellular-infrastructure/wiki/Make_a_new_release
for details.
Change-Id: I460fd73230facbba3e326214e46c0b98b7491628
Related: OS#1861
|
|
It's not required by gsm_data_shared.h anymore.
Change-Id: I22004af84244936ca431f3bf901059f366be8bca
Related: OS#2272
|
|
verify_value_string_arrays_are_terminated has recently been moved
from libosmocore.git to osmo-ci.git and the person doing this seems
to have forgotten to update openbsc.git
Change-Id: Ibe4a7f71d2557dfee94803e909dabb00d2ce10af
|
|
This reverts commit ac1f1436e9d380f632dd850fcd253d3480f0fc2d.
common_cs.h added to gsm_data_shared.h was a mistake, i.e. I added the
dependency by accident. Including common_cs.h in the debian installation may
have seemed like the logical consequence but was not intended. AFAICT for
osmo-msc, the need for struct gsm_encr is obsoleted by libvlr, gsm_encr will
only be used in osmo-bsc and can just stay an inline struct.
Related: OS#2272
Change-Id: I15d60441c6c6f053486c0482258a8759bdd92df1
|
|
When somebody kills the process, it's best to handle the signal
and to use the opportunity for some cleanup. We always did this
in the NITB on SIGINT, but never on SIGTERM. Let's change it.
Change-Id: Iea6804325a6575ceab5edfd28dd20249462f143b
|
|
This option was present in very early versions of the NITB, but
at least since 2011 it is no longer supported. It's still listed
in --help output, which is wrong.
Change-Id: I1d2cceb588ec5fb34ec5e2c05a7d8c93310bee88
|
|
Set the time on the status report to the time the message was delivered, as
this may not be the same as the time when we are delivering the report to the
originating MS.
Change-Id: I9056429d40bf02731f004b7833f1de45a0d1add8
|
|
Change-Id: I6ed923f5c60a8d64305f4b8e90d1362d6510e1c5
|
|
Change-Id: Ibe3c8bd353b3a178e26b0936f25b2e1959f9990c
|
|
libsmpp34 already converts received TLV integer values to native
endianess in libsmpp34_(un)pack.
Converting them again at receive time swaps the 2 bytes of
user_message_reference, then using a wrong value. As GSM03.40 spec
uses only 1 byte for the id, then only the high byte of the initial
value is used and eventually sent back to the ESME. Again, at that time,
htons() is not needed because libsmpp34 already handles that part.
See OS-#2429 for more details.
Change-Id: If748548a4a223e529a1110c89e483b599b406e8b
|
|
I already stumbled into 2 compilation environments which had Werror
enabled for -Wmaybe-uninitialized and the build failed, so let's
workaround this warning.
| smpp_openbsc.c: In function 'handle_smpp_submit':
| smpp_openbsc.c:216:9: error: 'sms_msg_len' may be used uninitialized in this function [-Werror=maybe-uninitialized]
| memcpy(sms->user_data, sms_msg, sms_msg_len);
| ^
| smpp_openbsc.c:100:15: note: 'sms_msg_len' was declared here
| unsigned int sms_msg_len;
| ^
| cc1: some warnings being treated as errors
Change-Id: I0901ddadb5f72e1585cb1797ac22c8ab95e83146
|
|
Commit 058cd573d8 added 2 new pointer parameters to
gprs_subscr_request_auth_info, but forgot to update wraps of the
function in sgsn_test.
I catched this today because openbsc build test sgsn_test was failing.
Closed look up to the logs showed:
Assert failed (auts != NULL) == (auts_rand != NULL) openbsc/openbsc/src/gprs/gprs_subscriber.c:791
Change-Id: Ie9e4af6da0339536fb20ca0b7bbcf6f485bd522c
|
|
gsm_04_11.c sms_report_alloc()
Use the sms->text, not the sms->user_data to construct the report body.
This also prevents the potential output of non printable characters to
the log and or vty.
Change-Id: Id51bc9483ad6f52d6da74135605cfd12434c7c96
|
|
gsm_04_11.c: gsm340_gen_sms_status_report_tpdu()
When we construct the status report PDU, use sms->src
instead of sms->dst as the destination address
This way we tell the MS that the message was delivered
to the destination and not to itself.
This is relevant for phones that display a textual
representation of the delivery report.
Change-Id: I2d4f87ac777465de9bfb5a775a789a2691755ee9
|
|
Use new definitions in libsmpp34 to set the registered_delivery field
accordingly, as provided by I5b3afff1b3b77cccd949e0606914c7ac3ba6114c.
Moreover, do not set this header field to zero if status reports are
off, the deliver_t structure has been already zeroed so this not
required.
Change-Id: Ie78e17323796120f576b9c0e1bc5ccc32da8ee12
|
|
Only 1.12 contains some of the #defines that we're using with recent
commits.
Change-Id: I3743b10a1a5d2f1d42a61204273c1d00dc22b600
|
|
In 2015, Jacob moved/copied related functions to libosmocore, but
for some reason didn't remove the copies here. Let's follow-up on
that and remove duplicated code.
The libosmocore commit introducing osmo_apn_to_str() was
8114294bf29ac6e44822c0ae43d4b0819f11b022
Change-Id: I7315ffcbed8a54cca2056f313bb7783ad82d0ee9
|
|
We can only print libgtp pdp information if a library context is
attached to this pdp context. This is not always the case,
particuarly during some teardown scenarios.
Change-Id: Ia3184877f9709db65f5f93a98403f2ef5b04a8ca
|
|
When converting from GSM_PCHAN_PDCH, we should generate
a RSL channel number IE with the osmocom extension
RSL_CHAN_OSMO_PDCH rather than claiming it is a regular
TCH/F channel.
This is important as this function is used by
osmo-bts, too - and it decides which channel number IE is
put in the GSMTAP header for both GSMTAP tracing as well
as the GSMTAP based osmo-bts-virtual.
In order to avoid any unintended effect on libbsc,
we make sure to modify rsl_ipacc_pdch_activate() to
always use GSM_PCHAN_TCH_F in related RSL message.
Change-Id: Ie34219e64a6d89da4a79f2db8ec73d1909fb8280
|
|
In the PDP Context Create from SGSN to GGSN, we include information
about the RAN type (GERAN/UTRAN) and the Cell of the MS. This was
all hard-coded to GERAN, and wasn't updated when we added UTRAN
support to the SGSN.
Change-Id: I6c79e42c5e08b28fe8182555302a5505fbbaa313
|