Commit Graph

6212 Commits

Author SHA1 Message Date
Max eb6a8f00f1 Fix build after recent rate_ctr patches
It seems like recent changes expanded output of
dump_rate_ctr_group(). Adjust output accordingly to fix the build.

Change-Id: Icc9a53d35be2b0793d7ed25e6fec5bf6c8f84d92
2017-10-25 10:36:43 +02:00
Max b7bd18d037 Fix APN printing
Previously first character of APN was omitted. Fix this by getting rid
of errorneous wrapper function and using osmo_apn_to_str() directly.

The breaking change was introduced in
I7315ffcbed8a54cca2056f313bb7783ad82d0ee9.

Change-Id: Ie13b6cd0066e0370e2adf48d12a363c2e405eaf2
Related: SYS#3610
2017-10-20 18:19:24 +00:00
Max d6984faffc SGSN: check that GSN is created in proper mode
Change-Id: Ie15364fb3c099806ce8a456ef452200305c836f6
2017-10-20 14:28:04 +02:00
Max 322e668fd4 SGSN: print additional GTP-related info
* print libgtp version on startup
* print GSN addresses in 'sh sgsn'

Change-Id: I699a9eb56c4b362984ea8292a3d2b22b71f53c15
Related: SYS#3610
2017-10-20 13:39:57 +02:00
Max bcb19d4f25 SGSN: uncomment BSSGP vty tests
Change-Id: I9181fc0ecd91e96bf6532aa89b811552009a1b7d
2017-10-20 13:38:45 +02:00
Max 72cf554200 Use new FSF address in license header
The issue was uncovered by lintian while checking .deb packaging.

Change-Id: Idfe0e3d61f2604521647e9ef5ffb984db96aabbe
2017-10-17 17:49:59 +02:00
Alexander Couzens 8456fe1b16 debian/rules: show testsuite.log when tests are failing
Change-Id: I4cc6589d4ce95538baf3f30079a3af53cc218268
2017-10-11 08:13:35 +00:00
Max e6fdafb8ae Check for correct P-TMSI allocation
Do not assign new P-TMSI if allocation failed.

Change-Id: Ifa71bbc8df726c74aceaf9ae3eb49e124a53910a
2017-10-09 16:26:43 +02:00
Max 1e6e329817 Move P-TMSI alloc/update into separate function
Remove code duplication by allocating and assigning P-TMSI in a static
function.

Change-Id: Ie5466326a851867d55da389bf18b240acd3f0fc5
2017-10-09 16:21:31 +02:00
Max 3ad0b35fd7 deb: fix copyright file issues
* remove non-existent files
* fix ax_check_compile_flag.m4 license to match autoconf-archive
* fix various .py license to match OpenBSC description

Change-Id: I6881c0a16017d80d142a6cfa756a9c153bee94d3
Related: OS#2527
2017-10-04 12:04:47 +02:00
Max ab65401d37 Use extended logging for PDP contexts
Log additional details (IMSI, NSAPI etc) on PDP context
creation/deletion by using appropriate LOGP() wrappers.

Change-Id: I91a126952ae75ae9ba1f42aac4d26413384bba5d
Related: SYS#3610
2017-10-02 08:38:12 +00:00
Max a8aa4923e7 Cleanup configure checks
* remove unused sqlite3 check
* remove unused NAT/SMPP/BSC/MGCP test checks

Change-Id: I83ae896f57cfb4cb139a42fbf3d77d4b11313f65
2017-10-02 08:37:57 +00:00
Neels Hofmeyr 91d2c59520 jenkins.sh: fix echo string to say osmo-sgsn, not msc
Change-Id: I3e9a1503de55e939179c032c17df53d27bdddd51
2017-09-28 19:07:28 +00:00
Max b83d125b9d jenkins: use osmo-ggsn for tests
Change-Id: I62b29b5531bfb9895318254c41a4e24ba1078fbf
2017-09-28 16:38:11 +02:00
Pau Espin 5878db0e5e Remove unneeded dep libdbi
This dependency is not needed and it's most probably a left over from
openbsc git repository split.

Change-Id: I84b0e2851dc89dca39e87215c71e93457acb884f
2017-09-25 18:46:28 +02:00
Max 8b14382fe7 gbproxy: ensure peer allocation result
gbproxy_peer_alloc() could return NULL which wasn't checked and used
right away. Fix it by making this assumption explicit with
OSMO_ASSERT(); While at it, also format log messages consistently.

Change-Id: Ib10c954e17a479baef31ded54370b35938e00018
2017-09-23 13:57:42 +02:00
Max aea583b379 Remove rest_octets.h
This header is unused anyway.

Change-Id: Ic34f7d3e8f813e020d43be312df940c933bc52b7
2017-09-15 12:01:02 +02:00
Alexander Couzens bdc9bf0c59 debian: fix paths of examples
Change-Id: I054e500be9527b1dd0fc0c21cde2b7b2d2fdfbff
2017-09-14 05:29:17 +02:00
Neels Hofmeyr 4b4c586f03 move include/openbsc to include/osmocom/sgsn
Change-Id: I281ef585fffc2644682c8282224fb1c2da5ca795
2017-09-06 16:47:47 +02:00
Neels Hofmeyr a759e3a07a move openbsc.pc to osmo-sgsn.pc
Change-Id: Iad28d85b2a6d175cbe5d506aa82e7e4d94111eff
2017-09-06 16:47:47 +02:00
Neels Hofmeyr a2ea72915c configure.ac: set name to osmo-sgsn, fix ML addr
Change-Id: I47e9f2307b42d171f2ceeda1e129e2311f611883
2017-09-06 16:47:47 +02:00
Neels Hofmeyr 6fddc86058 rewrite README
Change-Id: If78b74494a00ad230aec94e03b2fe4e905473897
2017-09-06 16:47:47 +02:00
Neels Hofmeyr 0c55de18a0 drop files unrelated to osmo-sgsn
These either remain from openbsc.git or slipped in while applying recent
patches from openbsc.git and do not belong in osmo-sgsn.

Change-Id: Ie9dc7514c3850010d0e9b3ab716b4f4e8d83594f
2017-09-06 16:47:47 +02:00
Neels Hofmeyr f9ced184f5 debian: fix osmo-sgsn.install, tweak VCS link and descriptions
Change-Id: I6493a7ca7d996fab00d99652a74a709c860a3de7
2017-09-06 16:47:47 +02:00
Neels Hofmeyr b95d52e11b jenkins: fix build: remove unused dependencies
Change-Id: Ice81f8541eda2cd5beeacbfd481f3e4283211331
2017-09-03 22:51:13 +02:00
Alexander Couzens d040babfaf rework /debian support to match new osmo-sgsn
Remove old leftover from split of osmo-sgsn out of openbsc.

Change-Id: Ic0135a1118a115e8f053154e280f60674390f43a
2017-08-30 14:18:04 +02:00
Neels Hofmeyr 04b2800fad sccp init: pass no local m3ua addr to use defaults
Remove the FIXMEs because these addresses are configurable via the cs7 /
{as,asp} vty commands.

Change-Id: Ibafda0a9097183c26b21f3380d24dbe293e132e2
2017-08-30 14:16:56 +02:00
Neels Hofmeyr 62507c5b8d split off osmo-sgsn: remove files, apply build
Change-Id: I5d27ff93e56cd13e0e70edd15e2080201e35e91f
2017-08-30 14:14:58 +02:00
Neels Hofmeyr dd8488a528 add msg type to SMS rx logging
Change-Id: I73ea4eebe57b2d1008045a27f174072178b9f077
2017-08-30 14:12:37 +02:00
Neels Hofmeyr 5ae96127c3 msc_vlr tests: add IMEISV tests
Change-Id: I752afef2ae3ce04e813c7e9fea0e883e607c0e14
2017-08-30 14:12:37 +02:00
Neels Hofmeyr 13269deab1 gsup client: move not-connected to error loglevel
Change-Id: I8290963aedb7237da89c9ff98adf4cd33beb5031
2017-08-30 14:12:37 +02:00
Neels Hofmeyr 85012f544b move to osmo-mgw.git: osmo-bsc_mgcp and libmgcp as libosmo-legacy-mgcp
Rewire build and includes to libosmo-legacy-mgcp.

Drop osmo-bsc_mgcp and related python tests, now found in osmo-mgw.git.

libosmo-legacy-mgcp is installed from osmo-mgw, hence add the dependency to
jenkins.sh (so far using the pre_release branch).

Change-Id: Ic99d681759edce11564da62500c2aac5cf5fffe2
2017-08-30 14:12:37 +02:00
Neels Hofmeyr 0e6a44b4f9 .gitignore: cosmetic: use globs to ignore test binaries
Change-Id: I840e4333a4cad646d751ebafe7e0ef23e7a9c708
2017-08-30 14:12:37 +02:00
Neels Hofmeyr b76947c82a cosmetic: msc_vlr_tests: drop unused var
Change-Id: I584c0dfffe005597563dbd72fad8a087c554ba3d
2017-08-30 14:12:37 +02:00
Neels Hofmeyr 5e40da646b move libiu to osmo-iuh/libosmo-ranap
Remove libiu here, use the functions from libosmo-ranap instead, by applying
the ranap_ / RANAP_ prefix.

Corresponding change-id in osmo-iuh.git is I6a3f7ad15be03fb94689b4af6ccfa828c25f45c0

To be able to run the msc_vlr tests for RAN_UTRAN_IU without Iu client headers
available, add iu_dummy.h, containing mere function signatures that match
iu_dummy.c and a mostly empty struct ranap_ue_conn_ctx.

Make sure we can build with and without --enable-iu: include osmo-iuh headers
only with --enable-iu.

Change-Id: Ib8c4fcdb4766c5e575618b95ce16dce51063206b
2017-08-30 14:12:37 +02:00
Neels Hofmeyr b8fc95132c MSC,SGSN: use OSMO_GSUP_PORT == 4222 instead of 2222
In SGSN, actually place the port in the SGSN config by default, so that the
gsup port may now be omitted in the VTY config (the IP address suffices).

Adjust the osmo-sgsn.cfg example.

Depends: I4222e21686c823985be8ff1f16b1182be8ad6175 (libosmocore)
Change-Id: I50f2040e2eb0baacb43849e93cfed10cbc2fc156
2017-08-30 14:12:37 +02:00
Philipp Maier fd889137c9 mgcp: add VTY Option to force-realloc endpoints
Currently the force_realloc feature is turnd on and of in a
hardcoded way. This patch makes the option available via VTY.

Change-Id: Ic8740512c5ea0766ff6ceb1c28b9c2b3fe46e75f
2017-08-30 14:12:37 +02:00
Philipp Maier 68760a8659 Implement AoIP, port to M3UA SIGTRAN (large addition and refactoring)
This was originally a long series of commits converging to the final result
seen in this patch. It does not make much sense to review the smaller steps'
trial and error, we need to review this entire change as a whole.

Implement AoIP in osmo-msc and osmo-bsc.

Change over to the new libosmo-sigtran API with support for proper
SCCP/M3UA/SCTP stacking, as mandated by 3GPP specifications for the IuCS and
IuPS interfaces.

From here on, a separate osmo-stp process is required for SCCP routing between
OsmoBSC / OsmoHNBGW <-> OsmoMSC / OsmoSGSN

jenkins.sh: build from libosmo-sccp and osmo-iuh master branches now for new
M3UA SIGTRAN.

Patch-by: pmaier, nhofmeyr, laforge
Change-Id: I5ae4e05ee7c57cad341ea5e86af37c1f6b0ffa77
2017-08-30 14:12:37 +02:00
Max 938cf56464 Use release helper from libosmocore
See
https://osmocom.org/projects/cellular-infrastructure/wiki/Make_a_new_release
for details.

Change-Id: I869395d5c9ab5ec1a487aff15418d1517f47e831
Related: OS#1861
2017-08-30 14:12:37 +02:00
Harald Welte a4bbf8f9da Treat SIGTERM just like SIGINT in our programs
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
2017-08-27 17:40:56 +02:00
Harald Welte a833816028 NITB: remove 'help' output about '-a' option that is removed for ages
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
2017-08-27 17:40:56 +02:00
Keith Whyte cc96021bb1 libmsc: Use actual delivery time in delivery reports.
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
2017-08-27 17:40:56 +02:00
Max 8ec35e46e4 gbproxy: log signal value as text
Change-Id: I6ed923f5c60a8d64305f4b8e90d1362d6510e1c5
2017-08-27 17:40:56 +02:00
Max c6f9615d63 gbproxy: log unhandled BSSGP PDU as text
Change-Id: Ibe3c8bd353b3a178e26b0936f25b2e1959f9990c
2017-08-27 17:40:56 +02:00
Pau Espin ab80c30242 libmsc: Fix wrong handling of user_message_reference parameter
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
2017-08-27 17:40:56 +02:00
Pau Espin fb7f9136db smpp: Fix compilation warning
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💯15: note: 'sms_msg_len' was declared here
|   unsigned int sms_msg_len;
|                ^
| cc1: some warnings being treated as errors

Change-Id: I0901ddadb5f72e1585cb1797ac22c8ab95e83146
2017-08-27 17:40:56 +02:00
Pau Espin 78a62a50ac sgsn_test: Fix wrong definition of wrap func
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
2017-08-27 17:40:56 +02:00
Keith Whyte 54decbdbe1 LIBMSC: Use sms->text, not sms->user_data to construct report body
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
2017-08-27 17:40:55 +02:00
Keith Whyte 448180e37f LIBMSC: Place correct dst address in status report
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
2017-08-27 17:40:55 +02:00
Pablo Neira Ayuso 36679f2371 libmsc: use SMPP34_DELIVERY_RECEIPT_* in libsmpp34
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
2017-08-27 17:40:55 +02:00