mirror of
				https://gitea.osmocom.org/cellular-infrastructure/osmo-smlc.git
				synced 2025-11-04 06:03:33 +00:00 
			
		
		
		
	Compare commits
	
		
			45 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					ccfd8e40ea | ||
| 
						 | 
					ebf2429f39 | ||
| 
						 | 
					ddfea86880 | ||
| 
						 | 
					b9e204f3bd | ||
| 
						 | 
					7dbd34a37e | ||
| 
						 | 
					961e96bfd9 | ||
| 
						 | 
					4b739ac260 | ||
| 
						 | 
					f66763e891 | ||
| 
						 | 
					e7535a4a9b | ||
| 
						 | 
					7385427397 | ||
| 
						 | 
					81e12318ae | ||
| 
						 | 
					85f1cca096 | ||
| 
						 | 
					e8c4967639 | ||
| 
						 | 
					d09e87c645 | ||
| 
						 | 
					386d5acdbe | ||
| 
						 | 
					8c11b24ca0 | ||
| 
						 | 
					8bcac6f928 | ||
| 
						 | 
					74b4e61f36 | ||
| 
						 | 
					7118875839 | ||
| 
						 | 
					cf29f44722 | ||
| 
						 | 
					0fda654d29 | ||
| 
						 | 
					848316e9d4 | ||
| 
						 | 
					5ac8ab7cd9 | ||
| 
						 | 
					518550e404 | ||
| 
						 | 
					f2a03654bb | ||
| 
						 | 
					accb1d1b25 | ||
| 
						 | 
					f30a8a1133 | ||
| 
						 | 
					cd82cb23be | ||
| 
						 | 
					bc54ff06f8 | ||
| 
						 | 
					b9b65d953f | ||
| 
						 | 
					454047c586 | ||
| 
						 | 
					5b7f1fd5c8 | ||
| 
						 | 
					8ec775714c | ||
| 
						 | 
					ec37263a37 | ||
| 
						 | 
					44a2a85202 | ||
| 
						 | 
					ed87bd5c74 | ||
| 
						 | 
					14c9c7bcd7 | ||
| 
						 | 
					b36a18f139 | ||
| 
						 | 
					427fbbd541 | ||
| 
						 | 
					5dadf0ae6e | ||
| 
						 | 
					8b6341b02f | ||
| 
						 | 
					dbf98d5433 | ||
| 
						 | 
					63ec8a9c59 | ||
| 
						 | 
					fb2abb8f8c | ||
| 
						 | 
					033b15679c | 
							
								
								
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@@ -34,6 +34,7 @@ stamp-h1
 | 
				
			|||||||
libtool
 | 
					libtool
 | 
				
			||||||
ltmain.sh
 | 
					ltmain.sh
 | 
				
			||||||
m4/*.m4
 | 
					m4/*.m4
 | 
				
			||||||
 | 
					*~
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# git-version-gen magic
 | 
					# git-version-gen magic
 | 
				
			||||||
.tarball-version
 | 
					.tarball-version
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										4
									
								
								.gitreview
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								.gitreview
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,4 @@
 | 
				
			|||||||
 | 
					[gerrit]
 | 
				
			||||||
 | 
					host=gerrit.osmocom.org
 | 
				
			||||||
 | 
					project=osmo-smlc
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -19,7 +19,7 @@ SUBDIRS = \
 | 
				
			|||||||
BUILT_SOURCES = $(top_srcdir)/.version
 | 
					BUILT_SOURCES = $(top_srcdir)/.version
 | 
				
			||||||
EXTRA_DIST = \
 | 
					EXTRA_DIST = \
 | 
				
			||||||
	     .version \
 | 
						     .version \
 | 
				
			||||||
	     contrib/osmo-smlc.spec.in \
 | 
						     README.md \
 | 
				
			||||||
	     debian \
 | 
						     debian \
 | 
				
			||||||
	     git-version-gen \
 | 
						     git-version-gen \
 | 
				
			||||||
	     osmoappdesc.py \
 | 
						     osmoappdesc.py \
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										69
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										69
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,69 @@
 | 
				
			|||||||
 | 
					osmo-smlc - Osmocom Serving Mobile Location Centre
 | 
				
			||||||
 | 
					==================================================
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This repository contains a C-language implementation of a minimalistic
 | 
				
			||||||
 | 
					GSM Serving Mobile Location Centre (SMLC) for 2G (GSM).  It is part of the
 | 
				
			||||||
 | 
					[Osmocom](https://osmocom.org/) Open Source Mobile Communications project.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					OsmoSMLC exposes
 | 
				
			||||||
 | 
					 * 3GPP Lb interface towards the BSC
 | 
				
			||||||
 | 
					 * The Osmocom typical telnet VTY and CTRL interfaces.
 | 
				
			||||||
 | 
					 * The Osmocom typical statsd exporter.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					OsmoSMLC supports the following location methods:
 | 
				
			||||||
 | 
					 * currently only the Timing Advance based method of determining a mobile station; operator must configure the
 | 
				
			||||||
 | 
					   locations of the cells in the osmo-smlc configuration file
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Homepage
 | 
				
			||||||
 | 
					--------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					You can find the OsmoSMLC issue tracker and wiki online at
 | 
				
			||||||
 | 
					<https://osmocom.org/projects/osmo-smlc> and <https://osmocom.org/projects/osmo-smlc/wiki>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					GIT Repository
 | 
				
			||||||
 | 
					--------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					You can clone from the official osmo-smlc.git repository using
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        git clone https://gitea.osmocom.org/cellular-infrastructure/osmo-smlc
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					There is a web interface at <https://gitea.osmocom.org/cellular-infrastructure/osmo-smlc>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Documentation
 | 
				
			||||||
 | 
					-------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					User Manuals and VTY reference manuals are [optionally] built in PDF form
 | 
				
			||||||
 | 
					as part of the build process.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Pre-rendered PDF version of the current "master" can be found at
 | 
				
			||||||
 | 
					[User Manual](https://ftp.osmocom.org/docs/latest/osmosmlc-usermanual.pdf)
 | 
				
			||||||
 | 
					as well as the [VTY Reference Manual](https://ftp.osmocom.org/docs/latest/osmosmlc-vty-reference.pdf)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Mailing List
 | 
				
			||||||
 | 
					------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Discussions related to osmo-smlc are happening on the
 | 
				
			||||||
 | 
					openbsc@lists.osmocom.org mailing list, please see
 | 
				
			||||||
 | 
					<https://lists.osmocom.org/mailman/listinfo/openbsc> for subscription
 | 
				
			||||||
 | 
					options and the list archive.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Please observe the [Osmocom Mailing List
 | 
				
			||||||
 | 
					Rules](https://osmocom.org/projects/cellular-infrastructure/wiki/Mailing_List_Rules)
 | 
				
			||||||
 | 
					when posting.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Contributing
 | 
				
			||||||
 | 
					------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Our coding standards are described at
 | 
				
			||||||
 | 
					<https://osmocom.org/projects/cellular-infrastructure/wiki/Coding_standards>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					We use a Gerrit based patch submission/review process for managing
 | 
				
			||||||
 | 
					contributions.  Please see
 | 
				
			||||||
 | 
					<https://osmocom.org/projects/cellular-infrastructure/wiki/Gerrit> for
 | 
				
			||||||
 | 
					more details
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The current patch queue for osmo-smlc can be seen at
 | 
				
			||||||
 | 
					<https://gerrit.osmocom.org/#/q/project:osmo-smlc+status:open>
 | 
				
			||||||
							
								
								
									
										35
									
								
								configure.ac
									
									
									
									
									
								
							
							
						
						
									
										35
									
								
								configure.ac
									
									
									
									
									
								
							@@ -9,6 +9,8 @@ AC_CONFIG_AUX_DIR([.])
 | 
				
			|||||||
AM_INIT_AUTOMAKE([dist-bzip2])
 | 
					AM_INIT_AUTOMAKE([dist-bzip2])
 | 
				
			||||||
AC_CONFIG_TESTDIR(tests)
 | 
					AC_CONFIG_TESTDIR(tests)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CFLAGS="$CFLAGS -std=gnu11"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
dnl kernel style compile messages
 | 
					dnl kernel style compile messages
 | 
				
			||||||
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
 | 
					m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -34,17 +36,12 @@ if test "x$PKG_CONFIG_INSTALLED" = "xno"; then
 | 
				
			|||||||
fi
 | 
					fi
 | 
				
			||||||
PKG_PROG_PKG_CONFIG([0.20])
 | 
					PKG_PROG_PKG_CONFIG([0.20])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
dnl check for AX_CHECK_COMPILE_FLAG
 | 
					PKG_CHECK_MODULES(LIBOSMOCORE, libosmocore >= 1.10.0)
 | 
				
			||||||
m4_ifdef([AX_CHECK_COMPILE_FLAG], [], [
 | 
					PKG_CHECK_MODULES(LIBOSMOVTY, libosmovty >= 1.10.0)
 | 
				
			||||||
	AC_MSG_ERROR([Please install autoconf-archive; re-run 'autoreconf -fi' for it to take effect.])
 | 
					PKG_CHECK_MODULES(LIBOSMOCTRL, libosmoctrl >= 1.10.0)
 | 
				
			||||||
	])
 | 
					PKG_CHECK_MODULES(LIBOSMOGSM, libosmogsm >= 1.10.0)
 | 
				
			||||||
 | 
					PKG_CHECK_MODULES(LIBOSMOSIGTRAN, libosmo-sigtran >= 1.9.0)
 | 
				
			||||||
PKG_CHECK_MODULES(LIBOSMOCORE, libosmocore >= 1.3.0)
 | 
					PKG_CHECK_MODULES(LIBOSMOSCCP, libosmo-sccp >= 1.9.0)
 | 
				
			||||||
PKG_CHECK_MODULES(LIBOSMOVTY, libosmovty >= 1.3.0)
 | 
					 | 
				
			||||||
PKG_CHECK_MODULES(LIBOSMOCTRL, libosmoctrl >= 1.3.0)
 | 
					 | 
				
			||||||
PKG_CHECK_MODULES(LIBOSMOGSM, libosmogsm >= 1.3.0)
 | 
					 | 
				
			||||||
PKG_CHECK_MODULES(LIBOSMOSIGTRAN, libosmo-sigtran >= 0.10.0)
 | 
					 | 
				
			||||||
PKG_CHECK_MODULES(LIBOSMOSCCP, libosmo-sccp >= 0.10.0)
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
dnl checks for header files
 | 
					dnl checks for header files
 | 
				
			||||||
AC_HEADER_STDC
 | 
					AC_HEADER_STDC
 | 
				
			||||||
@@ -92,13 +89,6 @@ AC_COMPILE_IFELSE([AC_LANG_SOURCE([char foo;])],
 | 
				
			|||||||
CFLAGS="$saved_CFLAGS"
 | 
					CFLAGS="$saved_CFLAGS"
 | 
				
			||||||
AC_SUBST(SYMBOL_VISIBILITY)
 | 
					AC_SUBST(SYMBOL_VISIBILITY)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
AX_CHECK_COMPILE_FLAG([-Werror=implicit], [CFLAGS="$CFLAGS -Werror=implicit"])
 | 
					 | 
				
			||||||
AX_CHECK_COMPILE_FLAG([-Werror=maybe-uninitialized], [CFLAGS="$CFLAGS -Werror=maybe-uninitialized"])
 | 
					 | 
				
			||||||
AX_CHECK_COMPILE_FLAG([-Werror=memset-transposed-args], [CFLAGS="$CFLAGS -Werror=memset-transposed-args"])
 | 
					 | 
				
			||||||
AX_CHECK_COMPILE_FLAG([-Wnull-dereference], [CFLAGS="$CFLAGS -Wnull-dereference"])
 | 
					 | 
				
			||||||
AX_CHECK_COMPILE_FLAG([-Werror=sizeof-array-argument], [CFLAGS="$CFLAGS -Werror=sizeof-array-argument"])
 | 
					 | 
				
			||||||
AX_CHECK_COMPILE_FLAG([-Werror=sizeof-pointer-memaccess], [CFLAGS="$CFLAGS -Werror=sizeof-pointer-memaccess"])
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Coverage build taken from WebKit's configure.in
 | 
					# Coverage build taken from WebKit's configure.in
 | 
				
			||||||
AC_MSG_CHECKING([whether to enable code coverage support])
 | 
					AC_MSG_CHECKING([whether to enable code coverage support])
 | 
				
			||||||
AC_ARG_ENABLE(coverage,
 | 
					AC_ARG_ENABLE(coverage,
 | 
				
			||||||
@@ -127,13 +117,13 @@ AC_ARG_ENABLE([external_tests],
 | 
				
			|||||||
				[Include the VTY/CTRL tests in make check [default=no]]),
 | 
									[Include the VTY/CTRL tests in make check [default=no]]),
 | 
				
			||||||
		[enable_ext_tests="$enableval"],[enable_ext_tests="no"])
 | 
							[enable_ext_tests="$enableval"],[enable_ext_tests="no"])
 | 
				
			||||||
if test "x$enable_ext_tests" = "xyes" ; then
 | 
					if test "x$enable_ext_tests" = "xyes" ; then
 | 
				
			||||||
	AC_CHECK_PROG(PYTHON2_AVAIL,python2,yes)
 | 
						AC_CHECK_PROG(PYTHON3_AVAIL,python3,yes)
 | 
				
			||||||
	 if test "x$PYTHON2_AVAIL" != "xyes" ; then
 | 
						 if test "x$PYTHON3_AVAIL" != "xyes" ; then
 | 
				
			||||||
		AC_MSG_ERROR([Please install python2 to run the VTY/CTRL tests.])
 | 
							AC_MSG_ERROR([Please install python3 to run the VTY/CTRL tests.])
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	AC_CHECK_PROG(OSMOTESTEXT_CHECK,osmotestvty.py,yes)
 | 
						AC_CHECK_PROG(OSMOTESTEXT_CHECK,osmotestvty.py,yes)
 | 
				
			||||||
	 if test "x$OSMOTESTEXT_CHECK" != "xyes" ; then
 | 
						 if test "x$OSMOTESTEXT_CHECK" != "xyes" ; then
 | 
				
			||||||
		AC_MSG_ERROR([Please install git://osmocom.org/python/osmo-python-tests to run the VTY/CTRL tests.])
 | 
							AC_MSG_ERROR([Please install https://gitea.osmocom.org/cellular-infrastructure/osmo-python-tests to run the VTY/CTRL tests.])
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
AC_MSG_CHECKING([whether to enable VTY/CTRL tests])
 | 
					AC_MSG_CHECKING([whether to enable VTY/CTRL tests])
 | 
				
			||||||
@@ -218,5 +208,4 @@ AC_OUTPUT(
 | 
				
			|||||||
    doc/manuals/Makefile
 | 
					    doc/manuals/Makefile
 | 
				
			||||||
    contrib/Makefile
 | 
					    contrib/Makefile
 | 
				
			||||||
    contrib/systemd/Makefile
 | 
					    contrib/systemd/Makefile
 | 
				
			||||||
    contrib/osmo-smlc.spec
 | 
					 | 
				
			||||||
    Makefile)
 | 
					    Makefile)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -58,12 +58,12 @@ LD_LIBRARY_PATH="$inst/lib" $MAKE check \
 | 
				
			|||||||
  || cat-testlogs.sh
 | 
					  || cat-testlogs.sh
 | 
				
			||||||
LD_LIBRARY_PATH="$inst/lib" \
 | 
					LD_LIBRARY_PATH="$inst/lib" \
 | 
				
			||||||
  DISTCHECK_CONFIGURE_FLAGS="--enable-vty-tests --enable-external-tests --enable-werror $CONFIG" \
 | 
					  DISTCHECK_CONFIGURE_FLAGS="--enable-vty-tests --enable-external-tests --enable-werror $CONFIG" \
 | 
				
			||||||
  $MAKE distcheck \
 | 
					  $MAKE $PARALLEL_MAKE distcheck \
 | 
				
			||||||
  || cat-testlogs.sh
 | 
					  || cat-testlogs.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if [ "$WITH_MANUALS" = "1" ] && [ "$PUBLISH" = "1" ]; then
 | 
					if [ "$WITH_MANUALS" = "1" ] && [ "$PUBLISH" = "1" ]; then
 | 
				
			||||||
	make -C "$base/doc/manuals" publish
 | 
						make -C "$base/doc/manuals" publish
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
$MAKE maintainer-clean
 | 
					$MAKE $PARALLEL_MAKE maintainer-clean
 | 
				
			||||||
osmo-clean-workspace.sh
 | 
					osmo-clean-workspace.sh
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,88 +0,0 @@
 | 
				
			|||||||
#
 | 
					 | 
				
			||||||
# spec file for package osmo-smlc
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Copyright (c) 2017, Martin Hauke <mardnh@gmx.de>
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# All modifications and additions to the file contributed by third parties
 | 
					 | 
				
			||||||
# remain the property of their copyright owners, unless otherwise agreed
 | 
					 | 
				
			||||||
# upon. The license for this file, and modifications and additions to the
 | 
					 | 
				
			||||||
# file, is the same license as for the pristine package itself (unless the
 | 
					 | 
				
			||||||
# license for the pristine package is not an Open Source License, in which
 | 
					 | 
				
			||||||
# case the license is the MIT License). An "Open Source License" is a
 | 
					 | 
				
			||||||
# license that conforms to the Open Source Definition (Version 1.9)
 | 
					 | 
				
			||||||
# published by the Open Source Initiative.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
## Disable LTO for now since it breaks compilation of the tests
 | 
					 | 
				
			||||||
## https://osmocom.org/issues/4113
 | 
					 | 
				
			||||||
%define _lto_cflags %{nil}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Name:           osmo-smlc
 | 
					 | 
				
			||||||
Version:        @VERSION@
 | 
					 | 
				
			||||||
Release:        0
 | 
					 | 
				
			||||||
Summary:        OsmoSMLC: Osmocom's Location Service Center
 | 
					 | 
				
			||||||
License:        AGPL-3.0-or-later
 | 
					 | 
				
			||||||
Group:          Hardware/Mobile
 | 
					 | 
				
			||||||
URL:            https://osmocom.org/projects/osmo-smlc
 | 
					 | 
				
			||||||
Source:         %{name}-%{version}.tar.xz
 | 
					 | 
				
			||||||
BuildRequires:  automake >= 1.9
 | 
					 | 
				
			||||||
BuildRequires:  libtool >= 2
 | 
					 | 
				
			||||||
BuildRequires:  pkgconfig >= 0.20
 | 
					 | 
				
			||||||
%if 0%{?suse_version}
 | 
					 | 
				
			||||||
BuildRequires:  systemd-rpm-macros
 | 
					 | 
				
			||||||
%endif
 | 
					 | 
				
			||||||
BuildRequires:  pkgconfig(libosmo-netif) >= 0.6.0
 | 
					 | 
				
			||||||
BuildRequires:  pkgconfig(libosmo-sccp) >= 0.10.0
 | 
					 | 
				
			||||||
BuildRequires:  pkgconfig(libosmo-sigtran) >= 0.10.0
 | 
					 | 
				
			||||||
BuildRequires:  pkgconfig(libosmocore) >= 1.2.0
 | 
					 | 
				
			||||||
BuildRequires:  pkgconfig(libosmoctrl) >= 1.2.0
 | 
					 | 
				
			||||||
BuildRequires:  pkgconfig(libosmogsm) >= 1.2.0
 | 
					 | 
				
			||||||
BuildRequires:  pkgconfig(libosmovty) >= 1.2.0
 | 
					 | 
				
			||||||
BuildRequires:  pkgconfig(talloc)
 | 
					 | 
				
			||||||
%{?systemd_requires}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
%description
 | 
					 | 
				
			||||||
OsmoBSC: Osmocom's Base Station Controller for 2G circuit-switched mobile networks.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
%prep
 | 
					 | 
				
			||||||
%setup -q
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
%build
 | 
					 | 
				
			||||||
echo "%{version}" >.tarball-version
 | 
					 | 
				
			||||||
autoreconf -fi
 | 
					 | 
				
			||||||
%configure \
 | 
					 | 
				
			||||||
  --docdir=%{_docdir}/%{name} \
 | 
					 | 
				
			||||||
  --with-systemdsystemunitdir=%{_unitdir}
 | 
					 | 
				
			||||||
make %{?_smp_mflags}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
%install
 | 
					 | 
				
			||||||
%make_install
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
%if 0%{?suse_version}
 | 
					 | 
				
			||||||
%preun
 | 
					 | 
				
			||||||
%service_del_preun %{name}.service
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
%postun
 | 
					 | 
				
			||||||
%service_del_postun %{name}.service
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
%pre
 | 
					 | 
				
			||||||
%service_add_pre %{name}.service
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
%post
 | 
					 | 
				
			||||||
%service_add_post %{name}.service
 | 
					 | 
				
			||||||
%endif
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
%check
 | 
					 | 
				
			||||||
make %{?_smp_mflags} check || (find . -name testsuite.log -exec cat {} +)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
%files
 | 
					 | 
				
			||||||
%license COPYING
 | 
					 | 
				
			||||||
%doc AUTHORS README
 | 
					 | 
				
			||||||
%{_bindir}/osmo-smlc
 | 
					 | 
				
			||||||
%dir %{_docdir}/%{name}/examples
 | 
					 | 
				
			||||||
%dir %{_docdir}/%{name}/examples/osmo-smlc
 | 
					 | 
				
			||||||
%{_docdir}/%{name}/examples/osmo-smlc/osmo-smlc.cfg
 | 
					 | 
				
			||||||
%dir %{_sysconfdir}/osmocom
 | 
					 | 
				
			||||||
%config(noreplace) %{_sysconfdir}/osmocom/osmo-smlc.cfg
 | 
					 | 
				
			||||||
%{_unitdir}/%{name}.service
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
%changelog
 | 
					 | 
				
			||||||
@@ -1,10 +1,16 @@
 | 
				
			|||||||
[Unit]
 | 
					[Unit]
 | 
				
			||||||
Description=Osmocom Serving Mobile Location Center (SMLC)
 | 
					Description=Osmocom Serving Mobile Location Center (SMLC)
 | 
				
			||||||
 | 
					After=network-online.target
 | 
				
			||||||
 | 
					Wants=network-online.target
 | 
				
			||||||
 | 
					
 | 
				
			||||||
[Service]
 | 
					[Service]
 | 
				
			||||||
Type=simple
 | 
					Type=simple
 | 
				
			||||||
Restart=always
 | 
					Restart=always
 | 
				
			||||||
ExecStart=/usr/bin/osmo-smlc -c /etc/osmocom/osmo-smlc.cfg -s
 | 
					StateDirectory=osmocom
 | 
				
			||||||
 | 
					WorkingDirectory=%S/osmocom
 | 
				
			||||||
 | 
					User=osmocom
 | 
				
			||||||
 | 
					Group=osmocom
 | 
				
			||||||
 | 
					ExecStart=/usr/bin/osmo-smlc -c /etc/osmocom/osmo-smlc.cfg
 | 
				
			||||||
RestartSec=2
 | 
					RestartSec=2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
[Install]
 | 
					[Install]
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										106
									
								
								debian/changelog
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										106
									
								
								debian/changelog
									
									
									
									
										vendored
									
									
								
							@@ -1,3 +1,109 @@
 | 
				
			|||||||
 | 
					osmo-smlc (0.3.0) unstable; urgency=medium
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ Andreas Eversberg ]
 | 
				
			||||||
 | 
					  * Use uniform log format for default config files
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ Vadim Yanitskiy ]
 | 
				
			||||||
 | 
					  * build: include README.md into the release tarball
 | 
				
			||||||
 | 
					  * README.md: cosmetic: fix a typo
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ Max ]
 | 
				
			||||||
 | 
					  * .deb/.rpm: add osmocom user during package install
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ Oliver Smith ]
 | 
				
			||||||
 | 
					  * .deb/.rpm: various fixes related to non-root
 | 
				
			||||||
 | 
					  * contrib: remove rpm spec file
 | 
				
			||||||
 | 
					  * debian/postinst: add checks, be verbose
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 -- Oliver Smith <osmith@sysmocom.de>  Thu, 25 Jul 2024 09:49:50 +0200
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					osmo-smlc (0.2.4) unstable; urgency=medium
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ arehbein ]
 | 
				
			||||||
 | 
					  * Transition to use of 'telnet_init_default'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ Vadim Yanitskiy ]
 | 
				
			||||||
 | 
					  * configure.ac: set -std=gnu11
 | 
				
			||||||
 | 
					  * Makefile.am: remove $(COVERAGE_LDFLAGS) from osmo_smlc_LDADD
 | 
				
			||||||
 | 
					  * Makefile.am: remove unneeded AM_LDFLAGS with LIBS
 | 
				
			||||||
 | 
					  * tests: $(BUILT_SOURCES) is not defined, depend on osmo-smlc
 | 
				
			||||||
 | 
					  * tests: execute osmotest{vty,config}.py against osmo-smlc
 | 
				
			||||||
 | 
					  * copyright: fix typo: sysmocom s/s.m.f.c./s.f.m.c./ GmbH
 | 
				
			||||||
 | 
					  * configure.ac: migrate from python2 to python3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ Oliver Smith ]
 | 
				
			||||||
 | 
					  * debian: set compat level to 10
 | 
				
			||||||
 | 
					  * systemd: depend on networking-online.target
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ Neels Janosch Hofmeyr ]
 | 
				
			||||||
 | 
					  * ctrl-test: drop bogus 'rm -f $(CTRL_TEST_DB)'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ Pau Espin Pedrol ]
 | 
				
			||||||
 | 
					  * Write explicit role & sctp-role fields in ASP configurations
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 -- Pau Espin Pedrol <pespin@sysmocom.de>  Tue, 12 Sep 2023 17:14:41 +0200
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					osmo-smlc (0.2.3) unstable; urgency=medium
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ Vadim Yanitskiy ]
 | 
				
			||||||
 | 
					  * contrib/jenkins.sh: execute distcheck/maintainer-clean with $PARALLEL_MAKE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ Max ]
 | 
				
			||||||
 | 
					  * Add git-review config
 | 
				
			||||||
 | 
					  * Set working directory in systemd service file
 | 
				
			||||||
 | 
					  * ctrl: take both address and port from vty config
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 -- Pau Espin Pedrol <pespin@sysmocom.de>  Tue, 07 Feb 2023 17:42:00 +0100
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					osmo-smlc (0.2.2) unstable; urgency=medium
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ Oliver Smith ]
 | 
				
			||||||
 | 
					  * treewide: remove FSF address
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ Pau Espin Pedrol ]
 | 
				
			||||||
 | 
					  * deb/rpm packaging: Drop dependency on autoconf-archive
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ Vadim Yanitskiy ]
 | 
				
			||||||
 | 
					  * tests: use 'check_PROGRAMS' instead of 'noinst_PROGRAMS'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ Harald Welte ]
 | 
				
			||||||
 | 
					  * update git URLs (git -> https; gitea)
 | 
				
			||||||
 | 
					  * Fill README with content; convert to markdown
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 -- Pau Espin Pedrol <pespin@sysmocom.de>  Wed, 29 Jun 2022 12:21:06 +0200
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					osmo-smlc (0.2.1) unstable; urgency=medium
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ Pau Espin Pedrol ]
 | 
				
			||||||
 | 
					  * Use new stat item/ctr getter APIs
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ Oliver Smith ]
 | 
				
			||||||
 | 
					  * configure: don't turn some warnings into errors
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 -- Pau Espin Pedrol <pespin@sysmocom.de>  Tue, 16 Nov 2021 18:14:21 +0100
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					osmo-smlc (0.2.0) unstable; urgency=medium
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ Harald Welte ]
 | 
				
			||||||
 | 
					  * contrib/jenkins.sh: Build libosmo-abis, a dependency of libosmo-netif
 | 
				
			||||||
 | 
					  * fix build of usermanual
 | 
				
			||||||
 | 
					  * update vty reference XML
 | 
				
			||||||
 | 
					  * debian/spec: Add build depedency to autoconf-archive
 | 
				
			||||||
 | 
					  * debian: the osmo-smlc example is not in the osmo-msc directory
 | 
				
			||||||
 | 
					  * osmo-smlc.spec.in:  Add dependency to autoconf-archive
 | 
				
			||||||
 | 
					  * fix osmo-smlc.service: drop unknown '-s' command line argument
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ Neels Hofmeyr ]
 | 
				
			||||||
 | 
					  * initial working osmo-smlc implementation
 | 
				
			||||||
 | 
					  * manual: describe TA-based positioning and cell locations
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  [ Pau Espin Pedrol ]
 | 
				
			||||||
 | 
					  * gitignore: Ignore autofoo files *~
 | 
				
			||||||
 | 
					  * main: Support setting cmdline --vty-ref-mode
 | 
				
			||||||
 | 
					  * smlc_subscr_test: Replace use of deprecated log_set_print_filename() API
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 -- Pau Espin Pedrol <pespin@sysmocom.de>  Wed, 24 Feb 2021 14:30:56 +0100
 | 
				
			||||||
 | 
					
 | 
				
			||||||
osmo-smlc (0.0.1) unstable; urgency=medium
 | 
					osmo-smlc (0.0.1) unstable; urgency=medium
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  [ Harald Welte ]
 | 
					  [ Harald Welte ]
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										2
									
								
								debian/compat
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								debian/compat
									
									
									
									
										vendored
									
									
								
							@@ -1 +1 @@
 | 
				
			|||||||
9
 | 
					10
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										14
									
								
								debian/control
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										14
									
								
								debian/control
									
									
									
									
										vendored
									
									
								
							@@ -2,7 +2,7 @@ Source: osmo-smlc
 | 
				
			|||||||
Section: net
 | 
					Section: net
 | 
				
			||||||
Priority: extra
 | 
					Priority: extra
 | 
				
			||||||
Maintainer: Osmocom team <openbsc@lists.osmocom.org>
 | 
					Maintainer: Osmocom team <openbsc@lists.osmocom.org>
 | 
				
			||||||
Build-Depends: debhelper (>=9),
 | 
					Build-Depends: debhelper (>= 10),
 | 
				
			||||||
               dh-autoreconf,
 | 
					               dh-autoreconf,
 | 
				
			||||||
               autotools-dev,
 | 
					               autotools-dev,
 | 
				
			||||||
               autoconf,
 | 
					               autoconf,
 | 
				
			||||||
@@ -11,13 +11,13 @@ Build-Depends: debhelper (>=9),
 | 
				
			|||||||
               pkg-config,
 | 
					               pkg-config,
 | 
				
			||||||
               libsctp-dev,
 | 
					               libsctp-dev,
 | 
				
			||||||
               libtalloc-dev,
 | 
					               libtalloc-dev,
 | 
				
			||||||
               libosmocore-dev (>= 1.3.0),
 | 
					               libosmocore-dev (>= 1.10.0),
 | 
				
			||||||
               libosmo-sccp-dev (>= 1.1.0),
 | 
					               libosmo-sccp-dev (>= 1.9.0),
 | 
				
			||||||
               libosmo-sigtran-dev (>= 1.1.0),
 | 
					               libosmo-sigtran-dev (>= 1.9.0),
 | 
				
			||||||
               osmo-gsm-manuals-dev (>= 0.2.0)
 | 
					               osmo-gsm-manuals-dev (>= 1.6.0)
 | 
				
			||||||
Standards-Version: 3.9.8
 | 
					Standards-Version: 3.9.8
 | 
				
			||||||
Vcs-Git: git://git.osmocom.org/osmo-smlc.git
 | 
					Vcs-Git: https://gitea.osmocom.org/cellular-infrastructure/osmo-smlc
 | 
				
			||||||
Vcs-Browser: https://git.osmocom.org/osmo-smlc/
 | 
					Vcs-Browser: https://gitea.osmocom.org/cellular-infrastructure/osmo-smlc
 | 
				
			||||||
Homepage: https://osmocom.org/projects/osmo-smlc
 | 
					Homepage: https://osmocom.org/projects/osmo-smlc
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Package: osmo-smlc
 | 
					Package: osmo-smlc
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										2
									
								
								debian/copyright
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								debian/copyright
									
									
									
									
										vendored
									
									
								
							@@ -1,6 +1,6 @@
 | 
				
			|||||||
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
 | 
					Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
 | 
				
			||||||
Upstream-Name: osmo-smlc
 | 
					Upstream-Name: osmo-smlc
 | 
				
			||||||
Source: git://git.osmocom.org/osmo-smlc
 | 
					Source: https://gitea.osmocom.org/cellular-infrastructure/osmo-smlc
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Files:     *
 | 
					Files:     *
 | 
				
			||||||
Copyright: 2020 Harald Welte <laforge@osmocom.org>
 | 
					Copyright: 2020 Harald Welte <laforge@osmocom.org>
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										2
									
								
								debian/osmo-smlc.install
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								debian/osmo-smlc.install
									
									
									
									
										vendored
									
									
								
							@@ -1,4 +1,4 @@
 | 
				
			|||||||
etc/osmocom/osmo-smlc.cfg
 | 
					etc/osmocom/osmo-smlc.cfg
 | 
				
			||||||
lib/systemd/system/osmo-smlc.service
 | 
					lib/systemd/system/osmo-smlc.service
 | 
				
			||||||
usr/bin/osmo-smlc
 | 
					usr/bin/osmo-smlc
 | 
				
			||||||
usr/share/doc/osmo-msc/examples/osmo-smlc/osmo-smlc.cfg usr/share/doc/osmo-smlc/examples
 | 
					usr/share/doc/osmo-smlc/examples/osmo-smlc/osmo-smlc.cfg usr/share/doc/osmo-smlc/examples
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										38
									
								
								debian/postinst
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										38
									
								
								debian/postinst
									
									
									
									
										vendored
									
									
										Executable file
									
								
							@@ -0,0 +1,38 @@
 | 
				
			|||||||
 | 
					#!/bin/sh -e
 | 
				
			||||||
 | 
					case "$1" in
 | 
				
			||||||
 | 
						configure)
 | 
				
			||||||
 | 
							# Create the osmocom group and user (if it doesn't exist yet)
 | 
				
			||||||
 | 
							if ! getent group osmocom >/dev/null; then
 | 
				
			||||||
 | 
								groupadd --system osmocom
 | 
				
			||||||
 | 
							fi
 | 
				
			||||||
 | 
							if ! getent passwd osmocom >/dev/null; then
 | 
				
			||||||
 | 
								useradd \
 | 
				
			||||||
 | 
									--system \
 | 
				
			||||||
 | 
									--gid osmocom \
 | 
				
			||||||
 | 
									--home-dir /var/lib/osmocom \
 | 
				
			||||||
 | 
									--shell /sbin/nologin \
 | 
				
			||||||
 | 
									--comment "Open Source Mobile Communications" \
 | 
				
			||||||
 | 
									osmocom
 | 
				
			||||||
 | 
							fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							# Fix permissions of previous (root-owned) install (OS#4107)
 | 
				
			||||||
 | 
							if dpkg --compare-versions "$2" le "0.3.0"; then
 | 
				
			||||||
 | 
								if [ -e /etc/osmocom/osmo-smlc.cfg ]; then
 | 
				
			||||||
 | 
									chown -v osmocom:osmocom /etc/osmocom/osmo-smlc.cfg
 | 
				
			||||||
 | 
									chmod -v 0660 /etc/osmocom/osmo-smlc.cfg
 | 
				
			||||||
 | 
								fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								if [ -d /etc/osmocom ]; then
 | 
				
			||||||
 | 
									chown -v root:osmocom /etc/osmocom
 | 
				
			||||||
 | 
									chmod -v 2775 /etc/osmocom
 | 
				
			||||||
 | 
								fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								mkdir -p /var/lib/osmocom
 | 
				
			||||||
 | 
								chown -R -v osmocom:osmocom /var/lib/osmocom
 | 
				
			||||||
 | 
							fi
 | 
				
			||||||
 | 
							;;
 | 
				
			||||||
 | 
					esac
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# dh_installdeb(1) will replace this with shell code automatically
 | 
				
			||||||
 | 
					# generated by other debhelper scripts.
 | 
				
			||||||
 | 
					#DEBHELPER#
 | 
				
			||||||
@@ -4,7 +4,6 @@ SUBDIRS = \
 | 
				
			|||||||
	$(NULL)
 | 
						$(NULL)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
msc: \
 | 
					msc: \
 | 
				
			||||||
	$(builddir)/location_request_fsm.png \
 | 
					 | 
				
			||||||
	$(NULL)
 | 
						$(NULL)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
dot: \
 | 
					dot: \
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,3 +1,11 @@
 | 
				
			|||||||
 | 
					log stderr
 | 
				
			||||||
 | 
					 logging color 1
 | 
				
			||||||
 | 
					 logging print category-hex 0
 | 
				
			||||||
 | 
					 logging print category 1
 | 
				
			||||||
 | 
					 logging timestamp 0
 | 
				
			||||||
 | 
					 logging print file basename last
 | 
				
			||||||
 | 
					 logging print level 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
cells
 | 
					cells
 | 
				
			||||||
 lac-ci 23 42 lat 12.34567 lon 34.56789
 | 
					 lac-ci 23 42 lat 12.34567 lon 34.56789
 | 
				
			||||||
 cgi 262 42 17 5 lat 12.34765 lon 34.56987
 | 
					 cgi 262 42 17 5 lat 12.34765 lon 34.56987
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,19 +0,0 @@
 | 
				
			|||||||
digraph G {
 | 
					 | 
				
			||||||
rankdir=TB
 | 
					 | 
				
			||||||
labelloc=t; label="Location Request FSM in OsmoSMLC"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	BSC [label="BSC\nvia\nLb interface",shape=box3d]
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	subgraph cluster_LOC_REQ_FSM {
 | 
					 | 
				
			||||||
		label="loc_req_fsm"
 | 
					 | 
				
			||||||
		INIT -> WAIT_TA_RESPONSE
 | 
					 | 
				
			||||||
		WAIT_TA_RESPONSE -> GOT_TA_RESPONSE
 | 
					 | 
				
			||||||
		GOT_TA_RESPONSE -> terminate
 | 
					 | 
				
			||||||
		terminate [shape=octagon]
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	BSC -> INIT [label="BSSMAP-LE Perform\nLocation Req",style=dashed]
 | 
					 | 
				
			||||||
	WAIT_TA_RESPONSE -> BSC [label="TA Request",style=dashed]
 | 
					 | 
				
			||||||
	BSC -> WAIT_TA_RESPONSE [label="TA Response",style=dashed]
 | 
					 | 
				
			||||||
	GOT_TA_RESPONSE -> BSC [label="BSSMAP-LE Perform\nLocation Resp",style=dashed]
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										26
									
								
								doc/manuals/chapters/cells.adoc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								doc/manuals/chapters/cells.adoc
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,26 @@
 | 
				
			|||||||
 | 
					== Configure Cell Locations
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					To determine geographic location estimates based on the serving cell, OsmoSMLC
 | 
				
			||||||
 | 
					needs preconfigured global positions by latitude and longitude, for each cell of
 | 
				
			||||||
 | 
					each BSC.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					On the `cells` configuration node, cell locations can be indicated by LAC and
 | 
				
			||||||
 | 
					CI, or by Cell Global Identity. The following example configures the position
 | 
				
			||||||
 | 
					for a cell by LAC 23 and CI 42:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					----
 | 
				
			||||||
 | 
					cells
 | 
				
			||||||
 | 
					 lac-ci 23 42 lat 12.3456 lon 23.4567
 | 
				
			||||||
 | 
					----
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The following example configures the position by a Cell Global Identity with
 | 
				
			||||||
 | 
					PLMN 001-01, LAC 2 and CI 3:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					----
 | 
				
			||||||
 | 
					cells
 | 
				
			||||||
 | 
					 cgi 001 01 2 3 lat 34.5678 lon 45.6789
 | 
				
			||||||
 | 
					----
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					If a cell's latitude and longitude is not configured, all location requests for
 | 
				
			||||||
 | 
					subscribers served by that cell are answered by a BSSMAP-LE Perform Location
 | 
				
			||||||
 | 
					Response without a Location Estimate and  LCS Cause "Facility not supported".
 | 
				
			||||||
							
								
								
									
										11
									
								
								doc/manuals/chapters/positioning.adoc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								doc/manuals/chapters/positioning.adoc
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,11 @@
 | 
				
			|||||||
 | 
					== Positioning Methods
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					So far, OsmoSMLC provides only TA-based positioning.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					=== TA-Based Positioning
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					In TA-based positioning, the serving Cell Id and the Timing Advance (a.k.a.
 | 
				
			||||||
 | 
					Access Delay) are provided by the BSC. OsmoSMLC returns a GAD "ellipsoid point
 | 
				
			||||||
 | 
					with uncertainty circle" as location estimate. The ellipsoid point is the
 | 
				
			||||||
 | 
					latitude and longitude of the serving cell, and the uncertainty circle is the
 | 
				
			||||||
 | 
					maximum distance from that cell based on the Timing Advance information.
 | 
				
			||||||
@@ -63,16 +63,18 @@ has to configure a distinct point-code. See <<cs7_config>>.
 | 
				
			|||||||
===== Configure SCCP/M3UA (AoIP)
 | 
					===== Configure SCCP/M3UA (AoIP)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
OsmoSMLC acts as client to contact an STP instance and establish an SCCP/M3UA
 | 
					OsmoSMLC acts as client to contact an STP instance and establish an SCCP/M3UA
 | 
				
			||||||
link.
 | 
					link. OsmoSMLC always uses the SSN "SMLC (BSSMAP-LE)" (SSN code 252). The
 | 
				
			||||||
 | 
					configurable point-code defaults to 0.23.6 (190).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
An example configuration of OsmoSMLC's Lb SCCP link, assuming the SMLC at
 | 
					An example configuration of OsmoSMLC's Lb SCCP link, assuming the SMLC at
 | 
				
			||||||
point-code 1.23.6 via an SG listening for M3UA at 127.0.0.1:2905:
 | 
					point-code 1.23.6, listening for M3UA at 127.0.0.1:2905:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
----
 | 
					----
 | 
				
			||||||
cs7 instance 0
 | 
					cs7 instance 0
 | 
				
			||||||
 point-code 1.23.6
 | 
					 point-code 1.23.6
 | 
				
			||||||
 asp asp-clnt-msc-0 2905 0 m3ua
 | 
					 asp asp-clnt-msc-0 2905 0 m3ua
 | 
				
			||||||
  remote-ip 127.0.0.1
 | 
					  remote-ip 127.0.0.1
 | 
				
			||||||
 | 
					  role asp
 | 
				
			||||||
  sctp-role client
 | 
					  sctp-role client
 | 
				
			||||||
----
 | 
					----
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -18,6 +18,10 @@ include::./common/chapters/logging.adoc[]
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
include::./common/chapters/cs7-config.adoc[]
 | 
					include::./common/chapters/cs7-config.adoc[]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					include::{srcdir}/chapters/positioning.adoc[]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					include::{srcdir}/chapters/cells.adoc[]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
include::./common/chapters/counters-overview.adoc[]
 | 
					include::./common/chapters/counters-overview.adoc[]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// include::{srcdir}/chapters/counters.adoc[]
 | 
					// include::{srcdir}/chapters/counters.adoc[]
 | 
				
			||||||
 
 | 
				
			|||||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -17,10 +17,6 @@
 | 
				
			|||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 * GNU General Public License for more details.
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * You should have received a copy of the GNU General Public License along
 | 
					 | 
				
			||||||
 * with this program; if not, write to the Free Software Foundation, Inc.,
 | 
					 | 
				
			||||||
 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#pragma once
 | 
					#pragma once
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -17,10 +17,6 @@
 | 
				
			|||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 * GNU General Public License for more details.
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * You should have received a copy of the GNU General Public License along
 | 
					 | 
				
			||||||
 * with this program; if not, write to the Free Software Foundation, Inc.,
 | 
					 | 
				
			||||||
 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
#pragma once
 | 
					#pragma once
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -14,12 +14,6 @@ AM_CFLAGS = \
 | 
				
			|||||||
	$(COVERAGE_CFLAGS) \
 | 
						$(COVERAGE_CFLAGS) \
 | 
				
			||||||
	$(NULL)
 | 
						$(NULL)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
AM_LDFLAGS = \
 | 
					 | 
				
			||||||
	$(LIBOSMOCORE_LIBS) \
 | 
					 | 
				
			||||||
	$(LIBOSMOGSM_LIBS) \
 | 
					 | 
				
			||||||
	$(COVERAGE_LDFLAGS) \
 | 
					 | 
				
			||||||
	$(NULL)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
SUBDIRS = \
 | 
					SUBDIRS = \
 | 
				
			||||||
	osmo-smlc \
 | 
						osmo-smlc \
 | 
				
			||||||
	$(NULL)
 | 
						$(NULL)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -39,6 +39,5 @@ osmo_smlc_LDADD = \
 | 
				
			|||||||
	$(LIBOSMOGSM_LIBS) \
 | 
						$(LIBOSMOGSM_LIBS) \
 | 
				
			||||||
	$(LIBOSMOVTY_LIBS) \
 | 
						$(LIBOSMOVTY_LIBS) \
 | 
				
			||||||
	$(LIBOSMOCTRL_LIBS) \
 | 
						$(LIBOSMOCTRL_LIBS) \
 | 
				
			||||||
	$(COVERAGE_LDFLAGS) \
 | 
					 | 
				
			||||||
	$(LIBOSMOSIGTRAN_LIBS) \
 | 
						$(LIBOSMOSIGTRAN_LIBS) \
 | 
				
			||||||
	$(NULL)
 | 
						$(NULL)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -17,10 +17,6 @@
 | 
				
			|||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 * GNU General Public License for more details.
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * You should have received a copy of the GNU General Public License along
 | 
					 | 
				
			||||||
 * with this program; if not, write to the Free Software Foundation, Inc.,
 | 
					 | 
				
			||||||
 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <limits.h>
 | 
					#include <limits.h>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,7 +1,7 @@
 | 
				
			|||||||
/* SMLC Lb connection implementation */
 | 
					/* SMLC Lb connection implementation */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * (C) 2020 by sysmocom s.m.f.c. <info@sysmocom.de>
 | 
					 * (C) 2020 by sysmocom s.f.m.c. <info@sysmocom.de>
 | 
				
			||||||
 * All Rights Reserved
 | 
					 * All Rights Reserved
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * Author: Neels Hofmeyr
 | 
					 * Author: Neels Hofmeyr
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,5 @@
 | 
				
			|||||||
/*
 | 
					/*
 | 
				
			||||||
 * (C) 2019 by sysmocom - s.m.f.c. GmbH <info@sysmocom.de>
 | 
					 * (C) 2019 by sysmocom - s.f.m.c. GmbH <info@sysmocom.de>
 | 
				
			||||||
 * All Rights Reserved
 | 
					 * All Rights Reserved
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * SPDX-License-Identifier: AGPL-3.0+
 | 
					 * SPDX-License-Identifier: AGPL-3.0+
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,5 @@
 | 
				
			|||||||
/*
 | 
					/*
 | 
				
			||||||
 * (C) 2020 by sysmocom - s.m.f.c. GmbH <info@sysmocom.de>
 | 
					 * (C) 2020 by sysmocom - s.f.m.c. GmbH <info@sysmocom.de>
 | 
				
			||||||
 * All Rights Reserved
 | 
					 * All Rights Reserved
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * SPDX-License-Identifier: AGPL-3.0+
 | 
					 * SPDX-License-Identifier: AGPL-3.0+
 | 
				
			||||||
@@ -186,14 +186,14 @@ static int sccp_lb_sap_down(struct sccp_lb_inst *sli, struct osmo_prim_hdr *oph)
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
	int rc;
 | 
						int rc;
 | 
				
			||||||
	if (!sli->scu) {
 | 
						if (!sli->scu) {
 | 
				
			||||||
		rate_ctr_inc(&g_smlc->ctrs->ctr[SMLC_CTR_BSSMAP_LE_TX_ERR_CONN_NOT_READY]);
 | 
							rate_ctr_inc(rate_ctr_group_get_ctr(g_smlc->ctrs, SMLC_CTR_BSSMAP_LE_TX_ERR_CONN_NOT_READY));
 | 
				
			||||||
		return -EIO;
 | 
							return -EIO;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	rc = osmo_sccp_user_sap_down_nofree(sli->scu, oph);
 | 
						rc = osmo_sccp_user_sap_down_nofree(sli->scu, oph);
 | 
				
			||||||
	if (rc >= 0)
 | 
						if (rc >= 0)
 | 
				
			||||||
		rate_ctr_inc(&g_smlc->ctrs->ctr[SMLC_CTR_BSSMAP_LE_TX_SUCCESS]);
 | 
							rate_ctr_inc(rate_ctr_group_get_ctr(g_smlc->ctrs, SMLC_CTR_BSSMAP_LE_TX_SUCCESS));
 | 
				
			||||||
	else
 | 
						else
 | 
				
			||||||
		rate_ctr_inc(&g_smlc->ctrs->ctr[SMLC_CTR_BSSMAP_LE_TX_ERR_SEND]);
 | 
							rate_ctr_inc(rate_ctr_group_get_ctr(g_smlc->ctrs, SMLC_CTR_BSSMAP_LE_TX_ERR_SEND));
 | 
				
			||||||
	return rc;
 | 
						return rc;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -17,10 +17,6 @@
 | 
				
			|||||||
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
				
			||||||
 * GNU General Public License for more details.
 | 
					 * GNU General Public License for more details.
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * You should have received a copy of the GNU General Public License along
 | 
					 | 
				
			||||||
 * with this program; if not, write to the Free Software Foundation, Inc.,
 | 
					 | 
				
			||||||
 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <osmocom/smlc/smlc_data.h>
 | 
					#include <osmocom/smlc/smlc_data.h>
 | 
				
			||||||
@@ -96,7 +92,7 @@ static int smlc_loc_req_start(struct lb_conn *lb_conn, const struct bssmap_le_pe
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
	struct smlc_loc_req *smlc_loc_req;
 | 
						struct smlc_loc_req *smlc_loc_req;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	rate_ctr_inc(&g_smlc->ctrs->ctr[SMLC_CTR_BSSMAP_LE_RX_DT1_PERFORM_LOCATION_REQUEST]);
 | 
						rate_ctr_inc(rate_ctr_group_get_ctr(g_smlc->ctrs, SMLC_CTR_BSSMAP_LE_RX_DT1_PERFORM_LOCATION_REQUEST));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (lb_conn->smlc_loc_req) {
 | 
						if (lb_conn->smlc_loc_req) {
 | 
				
			||||||
		/* Another request is already pending. If we send Perform Location Abort, the peer doesn't know which
 | 
							/* Another request is already pending. If we send Perform Location Abort, the peer doesn't know which
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -78,6 +78,31 @@ static void print_help()
 | 
				
			|||||||
	printf("  --vty-ref-xml			Generate the VTY reference XML output and exit.\n");
 | 
						printf("  --vty-ref-xml			Generate the VTY reference XML output and exit.\n");
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static void handle_long_options(const char *prog_name, const int long_option)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						static int vty_ref_mode = VTY_REF_GEN_MODE_DEFAULT;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						switch (long_option) {
 | 
				
			||||||
 | 
						case 1:
 | 
				
			||||||
 | 
							vty_ref_mode = get_string_value(vty_ref_gen_mode_names, optarg);
 | 
				
			||||||
 | 
							if (vty_ref_mode < 0) {
 | 
				
			||||||
 | 
								fprintf(stderr, "%s: Unknown VTY reference generation "
 | 
				
			||||||
 | 
									"mode '%s'\n", prog_name, optarg);
 | 
				
			||||||
 | 
								exit(2);
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							break;
 | 
				
			||||||
 | 
						case 2:
 | 
				
			||||||
 | 
							fprintf(stderr, "Generating the VTY reference in mode '%s' (%s)\n",
 | 
				
			||||||
 | 
								get_value_string(vty_ref_gen_mode_names, vty_ref_mode),
 | 
				
			||||||
 | 
								get_value_string(vty_ref_gen_mode_desc, vty_ref_mode));
 | 
				
			||||||
 | 
							vty_dump_xml_ref_mode(stdout, (enum vty_ref_gen_mode) vty_ref_mode);
 | 
				
			||||||
 | 
							exit(0);
 | 
				
			||||||
 | 
						default:
 | 
				
			||||||
 | 
							fprintf(stderr, "%s: error parsing cmdline options\n", prog_name);
 | 
				
			||||||
 | 
							exit(2);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static void handle_options(int argc, char **argv)
 | 
					static void handle_options(int argc, char **argv)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	while (1) {
 | 
						while (1) {
 | 
				
			||||||
@@ -90,7 +115,8 @@ static void handle_options(int argc, char **argv)
 | 
				
			|||||||
			{"config-file", 1, 0, 'c'},
 | 
								{"config-file", 1, 0, 'c'},
 | 
				
			||||||
			{"version", 0, 0, 'V' },
 | 
								{"version", 0, 0, 'V' },
 | 
				
			||||||
			{"log-level", 1, 0, 'e'},
 | 
								{"log-level", 1, 0, 'e'},
 | 
				
			||||||
			{"vty-ref-xml", 0, &long_option, 1},
 | 
								{"vty-ref-mode", 1, &long_option, 1},
 | 
				
			||||||
 | 
								{"vty-ref-xml", 0, &long_option, 2},
 | 
				
			||||||
			{0, 0, 0, 0}
 | 
								{0, 0, 0, 0}
 | 
				
			||||||
		};
 | 
							};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -105,14 +131,8 @@ static void handle_options(int argc, char **argv)
 | 
				
			|||||||
			print_help();
 | 
								print_help();
 | 
				
			||||||
			exit(0);
 | 
								exit(0);
 | 
				
			||||||
		case 0:
 | 
							case 0:
 | 
				
			||||||
			switch (long_option) {
 | 
								handle_long_options(argv[0], long_option);
 | 
				
			||||||
			case 1:
 | 
								break;
 | 
				
			||||||
				vty_dump_xml_ref(stdout);
 | 
					 | 
				
			||||||
				exit(0);
 | 
					 | 
				
			||||||
			default:
 | 
					 | 
				
			||||||
				fprintf(stderr, "error parsing cmdline options\n");
 | 
					 | 
				
			||||||
				exit(2);
 | 
					 | 
				
			||||||
			}
 | 
					 | 
				
			||||||
		case 'd':
 | 
							case 'd':
 | 
				
			||||||
			log_parse_category_mask(osmo_stderr_target, optarg);
 | 
								log_parse_category_mask(osmo_stderr_target, optarg);
 | 
				
			||||||
			break;
 | 
								break;
 | 
				
			||||||
@@ -242,14 +262,13 @@ int main(int argc, char **argv)
 | 
				
			|||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* Start telnet interface after reading config for vty_get_bind_addr() */
 | 
						/* Start telnet interface after reading config for vty_get_bind_addr() */
 | 
				
			||||||
	rc = telnet_init_dynif(tall_smlc_ctx, g_smlc, vty_get_bind_addr(), OSMO_VTY_PORT_SMLC);
 | 
						rc = telnet_init_default(tall_smlc_ctx, g_smlc, OSMO_VTY_PORT_SMLC);
 | 
				
			||||||
	if (rc < 0)
 | 
						if (rc < 0)
 | 
				
			||||||
		exit(1);
 | 
							exit(1);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* start control interface after reading config for
 | 
						/* start control interface after reading config for
 | 
				
			||||||
	 * ctrl_vty_get_bind_addr() */
 | 
						 * ctrl_vty_get_bind_addr() */
 | 
				
			||||||
	g_smlc->ctrl = ctrl_interface_setup_dynip2(g_smlc, ctrl_vty_get_bind_addr(), OSMO_CTRL_PORT_SMLC,
 | 
						g_smlc->ctrl = ctrl_interface_setup2(g_smlc, OSMO_CTRL_PORT_SMLC, smlc_ctrl_node_lookup, _LAST_CTRL_NODE_SMLC);
 | 
				
			||||||
						   smlc_ctrl_node_lookup, _LAST_CTRL_NODE_SMLC);
 | 
					 | 
				
			||||||
	if (!g_smlc->ctrl) {
 | 
						if (!g_smlc->ctrl) {
 | 
				
			||||||
		fprintf(stderr, "Failed to init the control interface. Exiting.\n");
 | 
							fprintf(stderr, "Failed to init the control interface. Exiting.\n");
 | 
				
			||||||
		exit(1);
 | 
							exit(1);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -37,11 +37,13 @@ DISTCLEANFILES = \
 | 
				
			|||||||
	$(NULL)
 | 
						$(NULL)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if ENABLE_EXT_TESTS
 | 
					if ENABLE_EXT_TESTS
 | 
				
			||||||
python-tests: $(BUILT_SOURCES)
 | 
					python-tests: $(top_builddir)/src/osmo-smlc/osmo-smlc
 | 
				
			||||||
	$(MAKE) vty-test
 | 
						$(MAKE) vty-test
 | 
				
			||||||
	$(MAKE) ctrl-test
 | 
						$(MAKE) ctrl-test
 | 
				
			||||||
 | 
						osmotestvty.py -p $(abs_top_srcdir) -w $(abs_top_builddir) -v
 | 
				
			||||||
 | 
						osmotestconfig.py -p $(abs_top_srcdir) -w $(abs_top_builddir) -v
 | 
				
			||||||
else
 | 
					else
 | 
				
			||||||
python-tests: $(BUILT_SOURCES)
 | 
					python-tests:
 | 
				
			||||||
	echo "Not running python-based tests (determined at configure-time)"
 | 
						echo "Not running python-based tests (determined at configure-time)"
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -51,7 +53,7 @@ VTY_TEST ?= *.vty
 | 
				
			|||||||
# To update the VTY script from current application behavior,
 | 
					# To update the VTY script from current application behavior,
 | 
				
			||||||
# pass -u to vty_script_runner.py by doing:
 | 
					# pass -u to vty_script_runner.py by doing:
 | 
				
			||||||
#   make vty-test U=-u
 | 
					#   make vty-test U=-u
 | 
				
			||||||
vty-test:
 | 
					vty-test: $(top_builddir)/src/osmo-smlc/osmo-smlc
 | 
				
			||||||
	osmo_verify_transcript_vty.py -v \
 | 
						osmo_verify_transcript_vty.py -v \
 | 
				
			||||||
		-n OsmoSMLC -p 4271 \
 | 
							-n OsmoSMLC -p 4271 \
 | 
				
			||||||
		-r "$(top_builddir)/src/osmo-smlc/osmo-smlc -c $(top_srcdir)/tests/osmo-smlc.cfg" \
 | 
							-r "$(top_builddir)/src/osmo-smlc/osmo-smlc -c $(top_srcdir)/tests/osmo-smlc.cfg" \
 | 
				
			||||||
@@ -60,14 +62,11 @@ vty-test:
 | 
				
			|||||||
# To update the CTRL script from current application behavior,
 | 
					# To update the CTRL script from current application behavior,
 | 
				
			||||||
# pass -u to ctrl_script_runner.py by doing:
 | 
					# pass -u to ctrl_script_runner.py by doing:
 | 
				
			||||||
#   make ctrl-test U=-u
 | 
					#   make ctrl-test U=-u
 | 
				
			||||||
ctrl-test:
 | 
					ctrl-test: $(top_builddir)/src/osmo-smlc/osmo-smlc
 | 
				
			||||||
	-rm -f $(CTRL_TEST_DB)
 | 
					 | 
				
			||||||
	osmo_verify_transcript_ctrl.py -v \
 | 
						osmo_verify_transcript_ctrl.py -v \
 | 
				
			||||||
		-p 4272 \
 | 
							-p 4272 \
 | 
				
			||||||
		-r "$(top_builddir)/src/osmo-smlc/osmo-smlc -c $(top_srcdir)/tests/osmo-smlc.cfg" \
 | 
							-r "$(top_builddir)/src/osmo-smlc/osmo-smlc -c $(top_srcdir)/tests/osmo-smlc.cfg" \
 | 
				
			||||||
		$(U) $(srcdir)/*.ctrl
 | 
							$(U) $(srcdir)/*.ctrl
 | 
				
			||||||
	-rm -f $(CTRL_TEST_DB)
 | 
					 | 
				
			||||||
	-rm $(CTRL_TEST_DB)-*
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
check-local: atconfig $(TESTSUITE)
 | 
					check-local: atconfig $(TESTSUITE)
 | 
				
			||||||
	$(SHELL) '$(TESTSUITE)' $(TESTSUITEFLAGS)
 | 
						$(SHELL) '$(TESTSUITE)' $(TESTSUITEFLAGS)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -20,7 +20,7 @@ EXTRA_DIST = \
 | 
				
			|||||||
	smlc_subscr_test.err \
 | 
						smlc_subscr_test.err \
 | 
				
			||||||
	$(NULL)
 | 
						$(NULL)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
noinst_PROGRAMS = \
 | 
					check_PROGRAMS = \
 | 
				
			||||||
	smlc_subscr_test \
 | 
						smlc_subscr_test \
 | 
				
			||||||
	$(NULL)
 | 
						$(NULL)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -140,10 +140,11 @@ int main()
 | 
				
			|||||||
	void *ctx = talloc_named_const(NULL, 0, "smlc_subscr_test");
 | 
						void *ctx = talloc_named_const(NULL, 0, "smlc_subscr_test");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	osmo_init_logging2(ctx, &log_info);
 | 
						osmo_init_logging2(ctx, &log_info);
 | 
				
			||||||
	log_set_print_filename(osmo_stderr_target, 0);
 | 
						log_set_print_filename2(osmo_stderr_target, LOG_FILENAME_NONE);
 | 
				
			||||||
	log_set_print_timestamp(osmo_stderr_target, 0);
 | 
						log_set_print_timestamp(osmo_stderr_target, 0);
 | 
				
			||||||
	log_set_use_color(osmo_stderr_target, 0);
 | 
						log_set_use_color(osmo_stderr_target, 0);
 | 
				
			||||||
	log_set_print_category(osmo_stderr_target, 1);
 | 
						log_set_print_category(osmo_stderr_target, 1);
 | 
				
			||||||
 | 
						log_set_print_category_hex(osmo_stderr_target, 0);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	g_smlc = smlc_state_alloc(ctx);
 | 
						g_smlc = smlc_state_alloc(ctx);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -154,4 +155,3 @@ int main()
 | 
				
			|||||||
	printf("Done\n");
 | 
						printf("Done\n");
 | 
				
			||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user