Adjust the build system, packaging etc. to split osmo-gbproxy into its own git repository. Remove tests and configs that aren't related to osmo-gbproxy. Related: OS#4992changes/81/22581/1
parent
3c75624e1e
commit
29532c2a06
@ -0,0 +1,82 @@ |
||||
# |
||||
# spec file for package osmo-sgsn |
||||
# |
||||
# 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/4116 |
||||
%define _lto_cflags %{nil} |
||||
|
||||
Name: osmo-gbproxy |
||||
Version: @VERSION@ |
||||
Release: 0 |
||||
Summary: Osmocom GPRS Gb Interface Proxy |
||||
License: AGPL-3.0-or-later AND GPL-2.0-or-later |
||||
Group: Productivity/Telephony/Servers |
||||
URL: https://osmocom.org/projects/osmo-gbproxy |
||||
Source: %{name}-%{version}.tar.xz |
||||
BuildRequires: autoconf |
||||
BuildRequires: automake |
||||
BuildRequires: libtool |
||||
BuildRequires: pkgconfig |
||||
%if 0%{?suse_version} |
||||
BuildRequires: systemd-rpm-macros |
||||
%endif |
||||
BuildRequires: pkgconfig(libcrypto) >= 0.9.5 |
||||
BuildRequires: pkgconfig(libosmocore) >= 1.2.0 |
||||
BuildRequires: pkgconfig(libosmoctrl) >= 1.2.0 |
||||
BuildRequires: pkgconfig(libosmogb) >= 1.2.0 |
||||
BuildRequires: pkgconfig(libosmogsm) >= 1.2.0 |
||||
BuildRequires: pkgconfig(libosmovty) >= 1.2.0 |
||||
%{?systemd_requires} |
||||
|
||||
%description |
||||
The purpose of the Gb proxy is to aggregate the Gb links of multiple |
||||
BSS's and present them in one Gb link to the SGSN. |
||||
|
||||
%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 |
||||
%doc AUTHORS README |
||||
%dir %{_docdir}/%{name}/examples |
||||
%dir %{_docdir}/%{name}/examples/osmo-sgsn |
||||
%{_docdir}/%{name}/examples/osmo-sgsn/osmo-gbproxy.cfg |
||||
%{_docdir}/%{name}/examples/osmo-sgsn/osmo-gbproxy-legacy.cfg |
||||
%{_docdir}/%{name}/examples/osmo-sgsn/osmo-gbproxy-pool.cfg |
||||
%{_bindir}/osmo-gbproxy |
||||
%dir %{_sysconfdir}/osmocom |
||||
%config(noreplace) %{_sysconfdir}/osmocom/osmo-gbproxy.cfg |
||||
%{_unitdir}/%{name}.service |
||||
|
||||
%changelog |
@ -1,140 +0,0 @@ |
||||
# |
||||
# spec file for package osmo-sgsn |
||||
# |
||||
# 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/4116 |
||||
%define _lto_cflags %{nil} |
||||
|
||||
%define with_iu 1 |
||||
Name: osmo-sgsn |
||||
Version: @VERSION@ |
||||
Release: 0 |
||||
Summary: Osmocom's SGSN for 2G and 3G packet-switched mobile networks |
||||
License: AGPL-3.0-or-later AND GPL-2.0-or-later |
||||
Group: Productivity/Telephony/Servers |
||||
URL: https://osmocom.org/projects/osmosgsn |
||||
Source: %{name}-%{version}.tar.xz |
||||
BuildRequires: autoconf |
||||
BuildRequires: automake |
||||
BuildRequires: libtool |
||||
BuildRequires: pkgconfig |
||||
%if 0%{?suse_version} |
||||
BuildRequires: systemd-rpm-macros |
||||
%endif |
||||
BuildRequires: pkgconfig(libcares) |
||||
BuildRequires: pkgconfig(libcrypto) >= 0.9.5 |
||||
BuildRequires: pkgconfig(libgtp) >= 1.4.0 |
||||
BuildRequires: pkgconfig(libosmo-gsup-client) >= 1.0.0 |
||||
BuildRequires: pkgconfig(libosmo-netif) >= 0.4.0 |
||||
BuildRequires: pkgconfig(libosmoabis) >= 0.6.0 |
||||
BuildRequires: pkgconfig(libosmocore) >= 1.2.0 |
||||
BuildRequires: pkgconfig(libosmoctrl) >= 1.2.0 |
||||
BuildRequires: pkgconfig(libosmogb) >= 1.2.0 |
||||
BuildRequires: pkgconfig(libosmogsm) >= 1.2.0 |
||||
BuildRequires: pkgconfig(libosmovty) >= 1.2.0 |
||||
%{?systemd_requires} |
||||
%if %{with_iu} |
||||
BuildRequires: pkgconfig(libasn1c) |
||||
BuildRequires: pkgconfig(libosmo-ranap) >= 0.4.0 |
||||
BuildRequires: pkgconfig(libosmo-sigtran) >= 1.0.0 |
||||
%endif |
||||
|
||||
%description |
||||
OsmoSGSN is Osmocom's Serving GPRS Support Node for 2G and 3G |
||||
packet-switched mobile networks. |
||||
|
||||
%package -n osmo-gtphub |
||||
Summary: Osmocom GTP Hub: Proxy for GTP traffic between multiple SGSNs and GGSNs |
||||
Group: Productivity/Telephony/Servers |
||||
|
||||
%description -n osmo-gtphub |
||||
Osmocom GTP Hub: Proxy for GTP traffic between multiple SGSNs and GGSNs. |
||||
|
||||
%package -n osmo-gbproxy |
||||
Summary: Osmocom GPRS Gb Interface Proxy |
||||
Group: Productivity/Telephony/Servers |
||||
|
||||
%description -n osmo-gbproxy |
||||
The purpose of the Gb proxy is to aggregate the Gb links of multiple |
||||
BSS's and present them in one Gb link to the SGSN. |
||||
|
||||
%prep |
||||
%setup -q |
||||
|
||||
%build |
||||
echo "%{version}" >.tarball-version |
||||
autoreconf -fi |
||||
%configure \ |
||||
%if %{with_iu} |
||||
--enable-iu \ |
||||
%endif |
||||
--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 |
||||
%preun -n osmo-gtphub %service_del_preun osmo-gtphub.service |
||||
%postun -n osmo-gtphub %service_del_postun osmo-gtphub.service |
||||
%pre -n osmo-gtphub %service_add_pre osmo-gtphub.service |
||||
%post -n osmo-gtphub %service_add_post osmo-gtphub.service |
||||
%preun -n osmo-gbproxy %service_del_preun osmo-gbproxy.service |
||||
%postun -n osmo-gbproxy %service_del_postun osmo-gbproxy.service |
||||
%pre -n osmo-gbproxy %service_add_pre osmo-gbproxy.service |
||||
%post -n osmo-gbproxy %service_add_post osmo-gbproxy.service |
||||
%endif |
||||
|
||||
%check |
||||
make %{?_smp_mflags} check || (find . -name testsuite.log -exec cat {} +) |
||||
|
||||
%files |
||||
%doc AUTHORS README |
||||
%dir %{_docdir}/%{name}/examples |
||||
%dir %{_docdir}/%{name}/examples/osmo-sgsn |
||||
%exclude %{_docdir}/%{name}/examples/osmo-gtphub |
||||
%exclude %{_docdir}/%{name}/examples/osmo-gbproxy |
||||
%{_docdir}/%{name}/examples/osmo-sgsn/osmo-sgsn-accept-all.cfg |
||||
%{_docdir}/%{name}/examples/osmo-sgsn/osmo-sgsn.cfg |
||||
%{_docdir}/%{name}/examples/osmo-sgsn/osmo-sgsn_custom-sccp.cfg |
||||
%{_bindir}/osmo-sgsn |
||||
%dir %{_sysconfdir}/osmocom |
||||
%config(noreplace) %{_sysconfdir}/osmocom/osmo-sgsn.cfg |
||||
%{_unitdir}/%{name}.service |
||||
|
||||
%files -n osmo-gtphub |
||||
%dir %{_docdir}/%{name}/examples |
||||
%dir %{_docdir}/%{name}/examples/osmo-gtphub |
||||
%{_docdir}/%{name}/examples/osmo-gtphub/osmo-gtphub-1iface.cfg |
||||
%{_docdir}/%{name}/examples/osmo-gtphub/osmo-gtphub.cfg |
||||
%{_bindir}/osmo-gtphub |
||||
%dir %{_sysconfdir}/osmocom |
||||
%config(noreplace) %{_sysconfdir}/osmocom/osmo-gtphub.cfg |
||||
%{_unitdir}/osmo-gtphub.service |
||||
|
||||
%files -n osmo-gbproxy |
||||
%dir %{_docdir}/%{name}/examples |
||||
%dir %{_docdir}/%{name}/examples/osmo-gbproxy |
||||
%{_docdir}/%{name}/examples/osmo-gbproxy/osmo-gbproxy.cfg |
||||
%{_bindir}/osmo-gbproxy |
||||
%dir %{_sysconfdir}/osmocom |
||||
%config(noreplace) %{_sysconfdir}/osmocom/osmo-gbproxy.cfg |
||||
%{_unitdir}/osmo-gbproxy.service |
||||
|
||||
%changelog |
@ -1,13 +1,11 @@ |
||||
EXTRA_DIST = \
|
||||
osmo-gbproxy.service \
|
||||
osmo-gtphub.service \
|
||||
osmo-sgsn.service
|
||||
$(NULL)
|
||||
|
||||
if HAVE_SYSTEMD |
||||
SYSTEMD_SERVICES = \
|
||||
osmo-gbproxy.service \
|
||||
osmo-gtphub.service \
|
||||
osmo-sgsn.service
|
||||
$(NULL)
|
||||
|
||||
systemdsystemunit_DATA = $(SYSTEMD_SERVICES)
|
||||
endif |
||||
|
@ -1,12 +0,0 @@ |
||||
[Unit] |
||||
Description=Osmocom GTP Hub |
||||
|
||||
[Service] |
||||
Type=simple |
||||
ExecStart=/usr/bin/osmo-gtphub -c /etc/osmocom/osmo-gtphub.cfg |
||||
Restart=always |
||||
RestartSec=2 |
||||
RestartPreventExitStatus=1 |
||||
|
||||
[Install] |
||||
WantedBy=multi-user.target |
@ -1,14 +0,0 @@ |
||||
[Unit] |
||||
Description=Osmocom SGSN (Serving GPRS Support Node) |
||||
Wants=osmo-hlr.service |
||||
After=osmo-hlr.service |
||||
After=osmo-hnbgw.service |
||||
|
||||
[Service] |
||||
Type=simple |
||||
Restart=always |
||||
ExecStart=/usr/bin/osmo-sgsn -c /etc/osmocom/osmo-sgsn.cfg |
||||
RestartSec=2 |
||||
|
||||
[Install] |
||||
WantedBy=multi-user.target |
@ -1,449 +1,213 @@ |
||||
osmo-sgsn (1.6.0) unstable; urgency=medium |
||||
osmo-gbproxy (1.6.0) unstable; urgency=medium |
||||
|
||||
[ Pau Espin Pedrol ] |
||||
* gprs_gmm: Introduce macros to access msgb's associated IU UE ctx |
||||
* gprs_llc.h: Improve documentation of some structs |
||||
* gprs_gmm.c: Improve doc on nullable parameters |
||||
* gprs_gmm.c: Drop unneeded brackets |
||||
* Introduce define TLLI_UNASSIGNED |
||||
* gprs_sgsn.c: Warn upon llme free unexpected scenarios |
||||
* gprs_gmm: Clarify comment during TLLI assignment |
||||
* gprs_sgsn.c: Remove recently introduced assert |
||||
* gprs_gmm: Introduce assert to guard against unexpected condition |
||||
* gprs_gmm.c: Use correct function to set MM_IDLE state during cleanup |
||||
* gprs_sgsn.h: Flag MM_CTX_T_GERAN_Iu as not supported |
||||
* gprs_gmm.c: Flag mmctx_set_(p)mm_state() functions static |
||||
* sgsn: use sccp_simple_client API to setup ss7 id 0 instead of 1 |
||||
* gprs_gmm.c: Fix typo in log message |
||||
* gprs_gmm.c: Call mmctx_set_(p)mm_state only on related ran_type |
||||
* Introduce and use log macros when no mm ctx available |
||||
* gprs_gmm: Avoid spaces in fsm events and enum strings |
||||
* tests: Verify that timers can be set over VTY |
||||
* Replace own timer infra with libosmocore osmo_tdef |
||||
* tests: Introduce vty-transcript-test tests |
||||
* gprs_gmm.c: Use osmo_rai_name() in log line |
||||
* examples: Add osmo-sgsn_custom-sccp.cfg |
||||
* vty: Introduce cs7-instance-iu |
||||
* gprs_gmm.c: Print value_string of reject cause |
||||
* gprs_gmm.c: Add spec document to function documentation |
||||
* gtp: make echo_interval unsigned |
||||
* gtp: cb_delete_context(): Clarify why pdp->lib is set to NULL |
||||
* Introduce log helper LOGGGSN and log category DGTP |
||||
* sgsn: gtp: Drop related pdp contexts on echo timeout against GGSN |
||||
* Move lots of Iu/ranap specific code into its own file |
||||
* Move llc->MM/SM Gb specific glue code to its own file |
||||
* Split enum gprs_pmm_state into Iu and Gb counterparts |
||||
* Merge common allocation steps for Gb and Iu ctx |
||||
* gprs_gmm.c: Replace inet_ntoa with inet_ntop |
||||
* sgsn_cdr.c: Fix ip addr string buffer size |
||||
* sgsn_vty: Fix mmctx rate_ctr output indentation |
||||
* sgsn_vty: Print correct Iu mmctx id in 'show mm-context' |
||||
* Introduce FSM mm_state_gb_fsm |
||||
* Introduce FSM mm_state_iu_fsm |
||||
* vty: Print MM state and RAN type in show mm-context |
||||
* src/gprs/Makefile.am: Move build of shared .c files to an internal lib |
||||
* Move out gbproxy to its own subdir |
||||
* Move out gtphub to its own subdir |
||||
* Move out sgsn to its own subdir |
||||
* gmm: Move code handling GMM Attach Complete to its own function |
||||
* gmm: Move code handling GMM Routing Area Update Complete to its own function |
||||
* gmm: Move code handling GMM PTMSI Realloc Complete to its own function |
||||
* enum gprs_gmm_state: Fix spec reference |
||||
* Implement GMM State using osmocom FSM |
||||
* Split out GPRS SM layer into its own file |
||||
* sgsn: Reject PdpActReq if no GTP pdp ctx exists |
||||
* Introduce TODO-RELEASE file |
||||
* sgsn_libgtp.c: Drop use of deprecated libgtp APIs gtp_retrans*() |
||||
* gmm: Fix assertion hit during RA UPD REQ before completting gmm attach |
||||
* Improve logging in gprs_llc.c code |
||||
* gprs_llc.c: Use enum instead of hardcoded value |
||||
* gprs_gmm.c: Send XID reset with received TLLI |
||||
|
||||
[ Alexander Couzens ] |
||||
* gprs/gprs_gmm: implement T3314. Timeout to reset MM state READY->STANDBY |
||||
* gprs_gmm: only update gb/iu cell information when Iu/Gb present |
||||
* gprs_gmm: clarify comment of Iu follow-on request |
||||
* gprs_gmm: gsm48_rx_gmm_att_req(): refactor duplicated code |
||||
* sgsn_pdp_ctx_terminate: check llme before accessing |
||||
* gprs_ranap: send CommonId after receiving Security Mode Complete |
||||
* mm_gb_fsm: unassign the llme when entering MM_IDLE |
||||
* gprs_ranap: refactor REQUIRE_MM define |
||||
* sgsn: when receiving data PDU notify the Gb GMM fsm |
||||
* Avoid compiling unneeded files when building without Iu |
||||
* gprs_ranap: release Iu UE Context when exiting PMM Connected |
||||
* Iu: implement a user inactivity timer |
||||
* gprs_ranap: on Iu release, stop the attach fsm if running |
||||
* gprs_mm_state_gb_fsm: ensure T3350 is not running when entering IDLE |
||||
* gprs_ranap: add missing rc = 0 |
||||
* gprs_sgsn: always allocate Gb/Iu mm fsm |
||||
* sgsn: MM Gb Fsm: fix event handling for implicit detach |
||||
* ranap: add non-spec X1001 |
||||
* gprs_gmm: release Iu connection on RAU failures |
||||
* sgsn_mm_ctx_alloc(): check for unallocated fsms |
||||
* sgsn_libgtp: refactor ps paging into gprs_gb |
||||
* sgsn: Gb: implementing PS Paging when MS is MM_STANDBY |
||||
|
||||
[ Vadim Yanitskiy ] |
||||
* gprs_mm_state_iu_fsm.c: fix: assign timer_cb to mm_state_iu_fsm |
||||
[ Neels Hofmeyr ] |
||||
* manual: explain IuPS, add SCCP/M3UA section from common chapters |
||||
|
||||
[ Max ] |
||||
* Use libosmocore constant for IMSI length in ACL entry |
||||
[ Eric ] |
||||
* tests: dlopen does not imply availability of dlsym.. |
||||
* configure.ac: fix libtool issue with clang and sanitizer |
||||
|
||||
[ Harald Welte ] |
||||
* LLC: Don't use hard-coded N201-U / N201-I values in XID |
||||
* Initial OsmoGbPROXY user manual |
||||
* check for osmo_fsm_register() error return values |
||||
* check for osmo_ss7_init() error return value |
||||
* manual: Fix copy+paste error |
||||
* exit(2) on unsupported positional arguments on command line |
||||
* gtphub_test: Fix compilation with gcc-10 |
||||
|
||||
[ Oliver Smith ] |
||||
* gitignore: fix paths to binaries |
||||
* doc: add OsmoGbProxy VTY reference |
||||
* regen_doc.sh: support gbproxy, run without docker |
||||
* osmoappdesc.py, tests: switch to python 3 |
||||
* contrib: import RPM spec |
||||
* contrib: integrate RPM spec |
||||
* Makefile.am: EXTRA_DIST: debian, contrib/*.spec.in |
||||
|
||||
[ Neels Hofmeyr ] |
||||
* gbproxy_test.c: fix mobile identity test data |
||||
* use new osmo_mobile_identity API everywhere |
||||
|
||||
-- Pau Espin Pedrol <pespin@sysmocom.de> Fri, 03 Jan 2020 19:17:56 +0100 |
||||
[ Harald Welte ] |
||||
* *.spec.in: Use %config(noreplace) to retain current config file |
||||
|
||||
osmo-sgsn (1.5.0) unstable; urgency=medium |
||||
[ Alexander Couzens ] |
||||
* gtphub: rename sgsn's oww osmo_sockaddr into sgsn_sockaddr |
||||
|
||||
[ Max ] |
||||
* Improve 'show subscriber cache' vty command |
||||
* GMM: permit VLR_ANSWERED event in attach FSM |
||||
* Fix IMSI padding in imsi-acl |
||||
[ Vadim Yanitskiy ] |
||||
* debian/control: change maintainer to the Osmocom team / mailing list |
||||
|
||||
[ Harald Welte ] |
||||
* gbproxy_test: Fix test expectations of gprs_ns_rcvmsg() |
||||
* LLC XID: Fix string representation of N201_U |
||||
* LLC: Don't blindly assume all LLC frames have data payload |
||||
* LLC: Avoid NOTICE message on LLC NULL |
||||
* gprs_llc: Correctly refuse any ABM command (SABM, DISC) with DM |
||||
* LLC: Store the XID inside the LLC Entity, not LLC Mgmg Entity |
||||
* gb_proxy.h: Add missing comments; improve comments |
||||
* gb_proxy: cosmetic: Use 'bool' in data structures where applicable |
||||
|
||||
[ efistokl ] |
||||
* gsm0408_rcv_gmm: send Iu-ReleaseCommand upon receiving Attach Complete. |
||||
* gprs_gmm: send Service Reject when no PDP ctxs are available. |
||||
[ Pau Espin Pedrol ] |
||||
* configure.ac: Fix trailing whitespace |
||||
* doc: Update VTY reference xml file |
||||
* Support setting rt-prio and cpu-affinity mask through VTY |
||||
|
||||
[ Daniel Willmann ] |
||||
* gbproxy-usermanual: Explain BSSGP/BVC handling |
||||
|
||||
[ Alexander Couzens ] |
||||
* gprs_gmm: reintroduce calling gsm48_gmm_authorize when not handling GMM Attach Requests |
||||
* gbproxy: parse dtap GSM48_MT_GSM_DEACT_PDP_REQ|ACK |
||||
* gtphub_test: fix compilation error on gcc 10.2.0 |
||||
|
||||
[ Pau Espin Pedrol ] |
||||
* gprs_sndcp_comp_free: Replace ifelse with switch and better handling of error |
||||
* sgsn: vty: Improve log warning content with spec section |
||||
* Document max retransmit times for T3395 |
||||
* sgsn: Fix echo timer not started upon first pdp ctx created |
||||
* sgsn_libgtp: Use new per-GSN libgtp API instead of deprecated API |
||||
* sgsn: Have authentication required on by default |
||||
* Remove undefined param passed to {logging,osmo_stats}_vty_add_cmds |
||||
* Require newer versions of dependencies |
||||
* contrib/jenkins: Enable parallel make in make distcheck |
||||
|
||||
[ Keith ] |
||||
* Echo zero byte XID-Field of Type L3_PAR |
||||
* VTY: Add gtp state-dir command |
||||
|
||||
[ Oliver Smith ] |
||||
* debian: create -doc subpackage with pdf manuals |
||||
* contrib/jenkins.sh: run "make maintainer-clean" |
||||
* osmo-gtphub.cfg: fix conflict with osmo-sgsn.cfg |
||||
* osmo-gbproxy.cfg: fix conflict with osmo-sgsn.cfg |
||||
[ Alexander Couzens ] |
||||
* Port gbproxy to NS2 |
||||
|
||||
[ Vadim Yanitskiy ] |
||||
* doc/manuals/vty: regenerate sgsn_vty_reference.xml |
||||
* osmo-sgsn: add VTY parameter to toggle authentication |
||||
* sgsn_mm_ctx_find_ggsn_ctx(): fix: always set gsm_cause |
||||
[ Daniel Willmann ] |
||||
* gbproxy: Whitespace fixes |
||||
* gbproxy: Add todo for BVC RESET logic |
||||
* gbproxy: Get the peer if paging by BVCI on SIG_BVC |
||||
* Let libosmocore handle VTY parent node tracking |
||||
* osmo-gbproxy: Free msgb in ns2 prim callback |
||||
* configure.ac: Require python3 for ext_tests |
||||
* osmo-gbproxy: Implement nsvc-state ctrl command |
||||
|
||||
[ Eric Wild ] |
||||
* replace magic tmsi constant with define |
||||
* turn -Werror=null-dereference into a warning |
||||
[ Harald Welte ] |
||||
* gbproxy: Properly implement paging to LAC/RAC |
||||
* gbproxy: Implement paging to entire BSS area |
||||
|
||||
[ Daniel Willmann ] |
||||
* manuals: Add script to regenerate vty/counter documentation |
||||
* manuals: Update vty/counter documentation |
||||
* Add/fix help string for version option |
||||
* osmo-sgsn: Fix outdated information in usermanual |
||||
* configuration.adoc: Small fixes |
||||
* configuration.adoc: Add a section about encryption |
||||
[ Pau Espin Pedrol ] |
||||
* gbproxy: generate coredump and exit upon SIGABRT received |
||||
|
||||
[ Ruben Undheim ] |
||||
* Spelling fixes |
||||
[ Harald Welte ] |
||||
* gbproxy: Pass TLLI as LSP towards NS to facilitate load sharing |
||||
* gb_proxy_peer: Add some FIXMEs regarding invalid assumptions |
||||
|
||||
-- Pau Espin Pedrol <pespin@sysmocom.de> Thu, 08 Aug 2019 16:46:31 +0200 |
||||
[ Daniel Willmann ] |
||||
* gbproxy: Remove test testing NSVCI change |
||||
* gbproxy: Add NSE peer that can have multiple gbproxy_peers |
||||
* gbproxy: Ensure BVC0 is reset before handling PtP BVCs |
||||
* gbproxy: Only send paging to each matching NSE once |
||||
* gbproxy: Separate function to move gbproxy_peer to different nse |
||||
|
||||
osmo-sgsn (1.4.0) unstable; urgency=medium |
||||
[ Harald Welte ] |
||||
* gb_proxy: More precise + readable log messages |
||||
|
||||
[ Alexander Couzens ] |
||||
* gprs_subscriber: gsup_auth_error: reject MS in all cases |
||||
* gprs_gmm: make functions relating to GMM Attach Request public |
||||
* gprs_gmm: make extract_subscr_msisdn extract_subscr_hlr public |
||||
* gprs_gmm: Cancel Location: use detach type IMSI |
||||
* vty: add cmd "reset sgsn state" |
||||
* tests: remove gmm unit tests |
||||
* gprs_gmm: introduce a GMM Attach Request FSM |
||||
* debian: add missing build dependencies |
||||
* sgsn: use gtp_clear_queues() when reset sgsn state |
||||
* vty: restart sgsn state: improve output message |
||||
* sgsn_ggsn_ctx_drop_pdp: protect against nullpointer when MM is gone |
||||
* gprs_sgsn.h: fix wrong type of re-attempts |
||||
* GTP: refactor the echo timer |
||||
* gprs_gmm: dont answer unknown IMSI/TMSI on Service Requests NET_FAIL |
||||
* gprs_gmm: Fix missing Security Command for 3G when attaching |
||||
* sgsn_libgtp: fix a potential memleak when the GGSN is not reachable |
||||
* gprs_llc: remove the FCS from the msgb by trim'ing the msgb |
||||
* OsmoSGSN: add rate counter documentation |
||||
[ Daniel Willmann ] |
||||
* gbproxy: Add logging macros for NSE and BVC |
||||
* gbproxy: Use LOG macros for NSE/BVC |
||||
* gbproxy: Change generic LOG messages so BVCI/NSEI fmt is consistent |
||||
* gbproxy: Add todos encountered while going through the code |
||||
|
||||
[ Harald Welte ] |
||||
* gb_proxy: Broadcast SGSN-INVOKE-TRACE and OVERLOAD |
||||
* gbproxy: Move BSS-side BVC-RESET processing to its own function |
||||
* gb_proxy: Slightly restructure processing of BSS-originated BVC-RESET |
||||
* gbproxy: Cosmetics: use longer lines |
||||
|
||||
[ Daniel Willmann ] |
||||
* gb_proxy: tallocate memory for gbproxy cfg so it can be a talloc ctx |
||||
* gb_proxy: Add ctrl interface and nsvc-state, gbproxy-state commands |
||||
* git-version-gen: Don't check for .git directory |
||||
|
||||
[ Stefan Sperling ] |
||||
* add a test for OS#3178 (invalid unitdata message) |
||||
* finish gbproxy_parse_bssgp_unitdata test |
||||
* fix bogus assertion in encode_comp_field() |
||||
* fix bogus error check in gprs_sndcp_comp_create() |
||||
* use enums consistently instead of falling back to int |
||||
* update gbproxy test expected output |
||||
* consistently check the result of osmo_shift_v_fixed() |
||||
* remove pointless declaration of struct gsm_network |
||||
* make gsup ipa name configurable in osmo-sgsn.cfg |
||||
* gbproxy: Add BVC log filters |
||||
* gbproxy: Add newline to log message |
||||
* gbproxy: Allow gbproxy_nse_free(NULL) |
||||
* gbproxy: Delete gbproxy_nse in delete-gbproxy-peer VTY command |
||||
|
||||
[ Pau Espin Pedrol ] |
||||
* jenkins.sh: Use --enable-werror only when iu support is disabled |
||||
* jenkins.sh: Remove non-existent configure options |
||||
* Drop all references of unused SMPP |
||||
* Drop all references of unused MGCP |
||||
* Drop unused common_vty.c |
||||
* sgsn_libgtp.c: Log pointer of deleted context |
||||
* Maintain per ggsn pdp ctx list |
||||
* osmo-sgsn: ping GGSN periodically and check for restart counter |
||||
* Disarm T3395 when dettaching mmctx from pdpctx |
||||
* examples: Enable by default echo req towards active GGSNs |
||||
* vty: Add cmd to disable echo loop explictly |
||||
* Add optional TearDownInd IE in PDP DEACT REQ towards PCU |
||||
* sgsn: Don't attempt to delete GTP pdp ctx if GGSN was restarted |
||||
* Forward GGSN originated DEACT PDP CTX REQ |
||||
* sgsn: Fix T3395 firing forever |
||||
* sgsn: subscriber: Avoid calling memcpy with NULL src |
||||
* sgsn: cdr: Fix uninitialized string access if ggsn is detached |
||||
* sgsn: gtp: Use new API to send PDP DEL CTX REQ without freeing ctx locally |
||||
* sgsn: Fix crash using new libgtp cb_recovery2 API |
||||
* gbproxy: Replace '.' in counter names with ':' |
||||
* Drop gprs_msgb_copy with libosmocore replacement |
||||
* Drop gprs_msgb_resize_area with libosmocore replacement |
||||
* Use osmo_clock_gettime from libosmocore |
||||
* gbproxy: Add VTY parameter: link stored-msgs-max-length |
||||
* gbproxy: Add new VTY-managed timer: link-list clean-stale-timer |
||||
* gbproxy: Replace '.' in counter names with ':' |
||||
* Add osmo-gtphub systemd service file |
||||
* debian: Fix typo in rules preventing build with IU support |
||||
* Install systemd services with autotools |
||||
* Install sample cfg file to /etc/osmocom |
||||
* Update wrong references to bsc in sgsn code |
||||
* Allocate sgsn_instance with talloc |
||||
* gbproxy: flag gbproxy_assign_imsi as static |
||||
* gbproxy: Fix abort during APN patch |
||||
* gbproxy: Remove unneeded parse_ctx param |
||||
* gbproxy: flush_stored_messages: Move comment to func description |
||||
* gbproxy: flush_stored_messages: Log and route using stored_msg info |
||||
* gbproxy: flush_stored_messages: Get rid of msg param |
||||
* Allow easily disabling GFDL references |
||||
* OsmoSGSN: configuration: Move pdp ctx specific CDR fields to its own table |
||||
* OsmoSGSN: configuration: Add missing pdp-periodic event |
||||
* OsmoSGSN: configuration: Document CDR CTRL interface |
||||
* OsmoSGSN: overview: Fix typo and reference OpenGGSN->OsmoGGSN |
||||
[ Harald Welte ] |
||||
* gbproxy: Send BVC-STATUS if BSS sends us BVC-RESET without mandatory IEs |
||||
* gb_proxy: Use TLVP_PRES_LEN instead of TLVP_PRESENT |
||||
* gb_proxy: Rename gbproxy_peer to gbproxy_bvc |
||||
* gbproxy: Rename gbproxy_cfg.nses to gbproxy_cfg.bss_nses |
||||
* gbproxy: convert bss_nses from llist_head to hashtable |
||||
* gbproxy: convert nse->bvcs from llist_head to hashtable |
||||
* gbproxy: Remove patching, TLLI-tracking and SGSN2 support |
||||
* gb_proxy: cosmetic: Use function rather than open-coding is_sgsn |
||||
* gbproxy: Delete gbproxy_test |
||||
* gb_proxy: Introduce more validation / constraint checks |
||||
* gbproxy: use gbprox_relay2peer() whenever possible |
||||
* gb_proxy: Use osmo_tlv_prot_parse() to validate mandatory IEs |
||||
* gbproxy: Log FSM timeouts |
||||
* migrate to DLBSSGP as log sub-system for BSSGP |
||||
* gbproxy major rewrite for SGSN pool support |
||||
* gbproxy: Use "(nsei << 16) | bvci" as rate_ctr_group index |
||||
* gbproxy: Introduce new DOBJ log category; log object allocation/release |
||||
* gbproxy: Don't create an extra msgb copy for SGSN DL SIG |
||||
* gbproxy: Implement handling of BVC Flow Control |
||||
|
||||
[ Daniel Willmann ] |
||||
* gbproxy: Fix bvci check in gbprox_rx_ptp_from_* |
||||
|
||||
[ Harald Welte ] |
||||
* migrate to oap_client in libosmogsm |
||||
* remove libcommon |
||||
* gbproxy-legacy: Ensure well-formed config file |
||||
* Remove local libgsupclient; Use libosmo-gsup-client from osmo-hlr |
||||
* initial checkin of manuals to public repo |
||||
* Add link to Asciidoc source code of manual |
||||
* OsmoSGSN: Fix formatting/cross reference in CDR section |
||||
* Update GSUP chapter regarding UMTS AKA and other recent changes |
||||
* GSUP: Add ladder diagrams for protocol transactions / procedures |
||||
* share chapters/gsup.adoc from OsmoSGSN to OsmoMSC + OsmoHLR |
||||
* vty-ref: Update URI of docbook 5.0 schema |
||||
* gbproxy: Copy RA-ID from BSS side BVC to CELL and SGSN-side BVC |
||||
* gbproxy: (Re)allocate SGSN-side PTP BVC even if CELL already exists |
||||
* gbproxy: Fix segfault when receiving PAGING for unknown destination |
||||
* gbproxy: Add FSM related VTY commands |
||||
* gbproxy: Implement scaling of BVC flow control in SGSN pool |
||||
* gbproxy: Improve VTY state introspection |
||||
* gbproxy: rename vty command "show gbproxy ..." to "show gbproxy bvc ..." |
||||
|
||||
[ Neels Hofmeyr ] |
||||
* use __FILE__, not __BASE_FILE__ |
||||
* vty: fix doc str for 'reset sgsn state' |
||||
* vty: add SCCP related vty commands |
||||
* fix build: remove unused variable |
||||
* Importing history from osmo-gsm-manuals.git |
||||
* add 'make check' target |
||||
* fix 'make clean': shell glob, ignore failure |
||||
* refactor Makefile build rules, don't use the FORCE |
||||
* OsmoSGSN: update VTY reference |
||||
* sgsn: update vty reference |
||||
[ Daniel Willmann ] |
||||
* osmo-gbproxy: Initialize all hash_maps |
||||
* gbproxy: Fix confusing log message in gbprox_relay2nse |
||||
|
||||
[ Oliver Smith ] |
||||
* gtphub: Add --version cmdline option |
||||
* build manuals moved here from osmo-gsm-manuals.git |
||||
* Fix DISTCHECK_CONFIGURE_FLAGS override |
||||
* contrib/jenkins.sh: build and publish manuals |
||||
* contrib: fix makedistcheck with disabled systemd |
||||
|
||||
[ Max ] |
||||
* Cleanup non-existent files from debian/copyright |
||||
* Use safer functions for IMSI ACL |
||||
* gbproxy: fix formatting in gbproxy-state command |
||||
* gbproxy: add number-of-peers ctrl command |
||||
* Revert "gbproxy: fix formatting in gbproxy-state command" |
||||
* Add OsmoSGSN control interface description |
||||
* Remove misleading comment |
||||
* Constify sgsn_acl_lookup() parameter |
||||
* Drop unused osmo-sgsn.pc |
||||
* Use explicit length check |
||||
* Use explicit parameter for sgsn_auth_init() |
||||
|
||||
[ Jonathan Brielmaier ] |
||||
* fix various typos across all manuals |
||||
|
||||
[ ikostov ] |
||||
* SGSN: add Auth. policy, NS Statistics and BSSGP state examples, tweaks |
||||
* GSUP, OAP: fix AUTS length to 14, not 16 |
||||
|
||||
[ Philipp Maier ] |
||||
* osmo-sgsn: Update VTY command reference |
||||
* osmo-sgsn: improve auth-policy explaination |
||||
* osmo-sgsn: Explain TCP/IP header compression |
||||
* osmo-sgsn: fix arrow tips in flow diagrams |
||||
|
||||
[ Holger Hans Peter Freyther ] |
||||
* sgsn: Fix numbering of QoS and add basic description for APN |
||||
* sgsn: Add charging characteristics to GSUP |
||||
|
||||
-- Harald Welte <laforge@gnumonks.org> Wed, 23 Jan 2019 18:32:41 +0100 |
||||
|
||||
osmo-sgsn (1.3.0) unstable; urgency=medium |
||||
[ Harald Welte ] |
||||
* gbproxy: Add "show gbproxy cell ..." VTY command |
||||
|
||||
[ Neels Hofmeyr ] |
||||
* drop osmo_sgsn.cfg from src/gprs dir |
||||
* change default config filename to osmo-sgsn.cfg, not osmo_sgsn.cfg |
||||
* vty: skip installing cmds now always installed by default |
||||
* add --enable-sanitize config option |
||||
* use default point-code as listed on Point_Codes wiki page |
||||
* gprs_gmm: segfault: gracefully handle failure to alloc context |
||||
* gsm48_rx_gmm_att_req: fix error handling: don't clean up NULL llme |
||||
* gprs_llc: tx dl ud: make mismatching LLE not crash osmo-sgsn |
||||
* fix build: missing LIBGTP_CFLAGS in sgsn_test |
||||
* sgsn_test: guard against struct gprs_ra_id changing |
||||
* vty: absorb command explanations from osmo-gsm-manuals |
||||
* configure: add --enable-werror |
||||
* implement support for 3-digit MNC with leading zeros |
||||
* osmo-gbproxy: use 'osmo-gbproxy.cfg' as default config name |
||||
* compiler warnings: use enum ranap_nsap_addr_enc, constify local var |
||||
* use osmo_init_logging2(), fix regression test memleaks |
||||
* auth+ciph: log is_r99 and auth types |
||||
* log two RA Update Request failure causes |
||||
* GERAN: allow GSM SRES on UMTS AKA challenge |
||||
[ Daniel Willmann ] |
||||
* gbproxy: Add SGSN NRI configuration |
||||
* gbproxy: Add SGSN pooling support |
||||
* gbproxy: Add comments to sgsn functions |
||||
|
||||
[ Harald Welte ] |
||||
* gbproxy: Fix build on Deiban 8 |
||||
|
||||
[ Alexander Couzens ] |
||||
* .gitignore: remove unneeded ignores of bsc/msc/nitb files |
||||
* tests/ctrl_test_runner.py: remove BSC/NAT TestRunner |
||||
* debian: remove doublicated project name in example files |
||||
* .gitignore: remove non-existent /src/utils exludes |
||||
* configure.ac: remove pcap check |
||||
* configure.ac: remove unused libcdk check |
||||
* .service: remove OpenBSC from service desription |
||||
* mandatory depend on libc-ares and libgtp |
||||
* GMM: dont reply to GMM_DETACH_REQ with POWER OFF when MS is unknown |
||||
* sgsn: Use the new NS2 api |
||||
* gbproxy: use ns2 vty2 |
||||
|
||||
[ Harald Welte ] |
||||
* Replace '.' in counter names with ':' |
||||
* Add talloc context introspection via VTY |
||||
[ Daniel Willmann ] |
||||
* gbproxy: Add config option to name an SGSN |
||||
* gbproxy: Add VTY command to override the node selection function |
||||
|
||||
[ Pau Espin Pedrol ] |
||||
* Replace '.' in counter names with ':' |
||||
* tests: Fix selection of python version |
||||
* sgsn_cdr: Split log formatting into a snprintf function |
||||
* Add vty cmd 'cdr trap' to send CDR through CTRL iface |
||||
* tests: sgsn_test: Define wrap APIs with correct parameters |
||||
* cosmetic: tests: sgsn_test: Use proper formatting and remove uneeded semicolons |
||||
* gprs_gmm: Remove unused variable |
||||
* cosmetic: gprs_gmm: Remove trailing whitespace |
||||
* gprs_gmm: Convert warning message to pragma message |
||||
* configure.ac: Enable Wall in CFLAGS |
||||
* .gitignore: Add m4 files |
||||
* sgsn_libgtp.c: Fix typos and whitespace |
||||
|
||||
[ Max ] |
||||
* Fix display of GTP addresses |
||||
* Show GTP version for PDP context in vty |
||||
* Remove unneeded .py scripts |
||||
* Replace '.' in counter names with ':' |
||||
* Remove dead code |
||||
* Enable sanitize for CI tests |
||||
* cosmetic: use macro for gtphub plane iteration |
||||
* Use connection id when allocating rate counters |
||||
* Migrate from OpenSSL to osmo_get_rand_id() |
||||
* Remove obsolete ./configure option |
||||
* Fix RAI construction |
||||
* gtphub: make rate_ctr unique |
||||
* Remove unused bsc_version.c |
||||
* Use gsm48_encode_ra() for RAI encoding |
||||
* gtphub: check for gsn_addr_from_sockaddr() errors |
||||
* gtphub: check for gsn_addr_from_sockaddr() error |
||||
|
||||
-- Pau Espin Pedrol <pespin@sysmocom.de> Thu, 03 May 2018 19:01:44 +0200 |
||||
|
||||
osmo-sgsn (1.2.0) unstable; urgency=medium |
||||
[ Vadim Yanitskiy ] |
||||
* gb_proxy_peer: sgsn can never be NULL in gbproxy_sgsn_by_nri() |
||||
* gb_proxy_peer: fix NULL pointer dereference in gbproxy_sgsn_alloc() |
||||
|
||||
[ Neels Hofmeyr ] |
||||
* jenkins: fix build: remove unused dependencies |
||||
* debian: fix osmo-sgsn.install, tweak VCS link and descriptions |
||||
* drop files unrelated to osmo-sgsn |
||||
* rewrite README |
||||
* configure.ac: set name to osmo-sgsn, fix ML addr |
||||
* move openbsc.pc to osmo-sgsn.pc |
||||
* move include/openbsc to include/osmocom/sgsn |
||||
* jenkins.sh: fix echo string to say osmo-sgsn, not msc |
||||
* jenkins: use osmo-clean-workspace.sh before and after build |
||||
[ Daniel Willmann ] |
||||
* Fix gbproxy_sgsn_by_tlli wraparound |
||||
|
||||
[ Alexander Couzens ] |
||||
* debian: fix paths of examples |
||||
* debian/rules: show testsuite.log when tests are failing |
||||
|
||||
[ Max ] |
||||
* Remove rest_octets.h |
||||
* gbproxy: ensure peer allocation result |
||||
* jenkins: use osmo-ggsn for tests |
||||
* Cleanup configure checks |
||||
* Use extended logging for PDP contexts |
||||
* deb: fix copyright file issues |
||||
* Move P-TMSI alloc/update into separate function |
||||
* Check for correct P-TMSI allocation |
||||
* Use new FSF address in license header |
||||
* SGSN: uncomment BSSGP vty tests |
||||
* SGSN: print additional GTP-related info |
||||
* SGSN: check that GSN is created in proper mode |
||||
* Fix APN printing |
||||
* Fix build after recent rate_ctr patches |
||||
* gbproxy: don't link unnecessary |
||||
* Fix libosmo-sigtran dependency |
||||
* jenkins: check for IU properly |
||||
* Log GTP-U endpoints update |
||||
* Log address on GTP creation |
||||
* configure.ac: define a c standard instead of using the compilers default |
||||
|
||||
[ Pau Espin Pedrol ] |
||||
* Remove unneeded dep libdbi |
||||
[ Daniel Willmann ] |
||||
* gbproxy: Implement TLLI cache and use it for SUSPEND/RESUME |
||||
* gbproxy: Increase TLLI cache timeout to 10s |
||||
|
||||
[ Oliver Smith ] |
||||
* contrib/jenkins: don't build osmo-gsm-manuals |
||||
|
||||
[ Philipp Maier ] |
||||
* log: fix default loglevels |
||||
* non-iu-build: guard vty libosmo-sigtran function calls. |
||||
* configure: fix libosmo-sigtran dependency |
||||
[ Daniel Willmann ] |
||||
* gbproxy: Implement IMSI cache |
||||
* gbproxy: Use IMSI cache to handle PAGING_PS_REJECT |
||||
* gbproxy: Use C-style comments |
||||
* gbproxy: Move helper function to a more logical place |
||||
* gbproxy: Remove unused variable assignment |
||||
* gbproxy: Fix VTY cmd name |
||||
* gbproxy: Define and use help string for gbproxy |
||||
* gbproxy: Add VTY commands to query the TLLI/IMSI cache |
||||
|
||||
[ Harald Welte ] |
||||
* Debian: Add systemd service files for osmo-sgsn and osmo-gbproxy |
||||
* Debian: fix dh_strip rules for creating one -dbg per program |
||||
* gb_proxy: Don't use orphan log subsystem DPCU |
||||
|
||||
-- Harald Welte <laforge@gnumonks.org> Sat, 28 Oct 2017 19:07:48 +0200 |
||||
[ Daniel Willmann ] |
||||
* gbproxy: Use IMSI cache for PTP paging and implement DUMMY_PAGING_PS |
||||
* gbproxy: Print the correct message type for dummy paging/paging reject |
||||
* gbproxy: Improve log messages in gbproxy_select_sgsn |
||||
* gbproxy: Fix radio status routing by TMSI |
||||
|
||||
osmo-sgsn (0.1.0) unstable; urgency=low |
||||
[ Alexander Couzens ] |
||||
* follow libosmocore/gprs_ns2 API changes of GPRS enums |
||||
|
||||
* Initial release. |
||||
[ Harald Welte ] |
||||
* gbproxy: Avoid depending on any of the SGSN code |
||||
|
||||
[ Daniel Willmann ] |
||||
* manual/gbproxy: Update overview chapter |
||||
* Rename OsmoGbPROXY -> *Proxy |
||||
* manuals/gbproxy: Update configuration chapter |
||||
* manuals/gbproxy: Add osmo-bsc MSC pooling chapter from Neels as a base |
||||
* manuals/gbproxy: MSC -> SGSN for pooling chapter |
||||
* manuals/gbproxy: Move pooling to separate chapter |
||||
|
||||
[ Alexander Couzens ] |
||||
* gbproxy: follow gprs_ns2 API vty changes |
||||
* sgsn: migrate to the new gprs_ns2_vty configuration |
||||
* follow libosmocore/gprs_ns2 API changes (gprs_ns2_dynamic_create_nse) |
||||
|
||||
[ Oliver Smith ] |
||||
* === Split osmo-gbproxy from osmo-sgsn === |
||||
|
||||
-- Alexander Couzens <lynxis@fe80.eu> Tue, 08 Aug 2017 01:13:05 +0000 |
||||
-- Oliver Smith <osmith@sysmocom.de> Fri, 29 Jan 2021 12:57:28 +0100 |
||||
|
@ -0,0 +1,2 @@ |
||||
# FIXME: debian package doesn't generate manuals yet, see OS#4992 |
||||
# usr/share/doc/osmo-gbproxy-doc/*.pdf |
@ -1,4 +1,4 @@ |
||||
etc/osmocom/osmo-gbproxy.cfg |
||||
lib/systemd/system/osmo-gbproxy.service |
||||
usr/bin/osmo-gbproxy |
||||
usr/share/doc/osmo-sgsn/examples/osmo-gbproxy/osmo-gbproxy.cfg usr/share/doc/osmo-gbproxy/examples |
||||
etc/osmocom/osmo-gbproxy.cfg |
||||
|
@ -1,2 +0,0 @@ |
||||
CONFIG_FILE="/etc/osmocom/osmo-gtphub.cfg" |
||||
|
@ -1,150 +0,0 @@ |
||||
#!/bin/sh |
||||
### BEGIN INIT INFO |
||||
# Provides: osmo-gtphub |
||||
# Required-Start: $network $local_fs |
||||
# Required-Stop: |
||||
# Default-Start: 2 3 4 5 |
||||
# Default-Stop: 0 1 6 |
||||
# Short-Description: Osmocom GTP hub |
||||
# Description: Osmocom GTP hub |
||||
### END INIT INFO |
||||
|
||||
# Author: Neels Hofmeyr <nhofmeyr@sysmocom.de> |
||||
|
||||
# PATH should only include /usr/* if it runs after the mountnfs.sh script |
||||
PATH=/sbin:/usr/sbin:/bin:/usr/bin |
||||
NAME=osmo-gtphub # Introduce the short server's name here |
||||
DESC="Osmocom GTP hub" # Introduce a short description here |
||||
DAEMON=/usr/bin/osmo-gtphub # Introduce the server's location here |
||||
SCRIPTNAME=/etc/init.d/osmo-gtphub |
||||
|
||||
# Exit if the package is not installed |
||||
[ -x $DAEMON ] || exit 0 |
||||
|
||||
# Read configuration variable file if it is present |
||||
[ -r /etc/default/osmo-gtphub ] && . /etc/default/osmo-gtphub |
||||
|
||||
# Load the VERBOSE setting and other rcS variables |
||||
. /lib/init/vars.sh |
||||
|
||||
# Define LSB log_* functions. |
||||
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present. |
||||
. /lib/lsb/init-functions |
||||
|
||||
DAEMON_ARGS="$DAEMON_ARGS -D -c $CONFIG_FILE" |
||||
|
||||
# |
||||
# Function that starts the daemon/service |
||||
# |
||||
do_start() |
||||
{ |
||||
# Return |
||||
# 0 if daemon has been started |
||||
# 1 if daemon was already running |
||||
# 2 if daemon could not be started |
||||
start-stop-daemon --start --quiet --exec $DAEMON --test > /dev/null \ |
||||
|| return 1 |
||||
start-stop-daemon --start --quiet --exec $DAEMON -- \ |
||||
$DAEMON_ARGS \ |
||||
|| return 2 |
||||
# Add code here, if necessary, that waits for the process to be ready |
||||
# to handle requests from services started subsequently which depend |
||||
# on this one. As a last resort, sleep for some time. |
||||
} |
||||
|
||||
# |
||||
# Function that stops the daemon/service |
||||
# |
||||
do_stop() |
||||
{ |
||||
# Return |
||||
# 0 if daemon has been stopped |
||||
# 1 if daemon was already stopped |
||||
# 2 if daemon could not be stopped |
||||
# other if a failure occurred |
||||
start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --name $NAME |
||||
RETVAL="$?" |
||||
[ "$RETVAL" = 2 ] && return 2 |
||||
# Wait for children to finish too if this is a daemon that forks |
||||
# and if the daemon is only ever run from this initscript. |
||||
# If the above conditions are not satisfied then add some other code |
||||
# that waits for the process to drop all resources that could be |
||||
# needed by services started subsequently. A last resort is to |
||||
# sleep for some time. |
||||
start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON |
||||
[ "$?" = 2 ] && return 2 |
||||
return "$RETVAL" |
||||
} |
||||
|
||||
# |
||||
# Function that sends a SIGHUP to the daemon/service |
||||
# |
||||
do_reload() { |
||||
# |
||||
# If the daemon can reload its configuration without |
||||
# restarting (for example, when it is sent a SIGHUP), |
||||
# then implement that here. |
||||
# |
||||
start-stop-daemon --stop --signal 1 --quiet $PIDFILE --name $NAME |
||||
return 0 |
||||
} |
||||
|
||||
case "$1" in |
||||
start) |
||||
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC " "$NAME" |
||||
do_start |
||||
case "$?" in |
||||
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; |
||||
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; |
||||
esac |
||||
;; |
||||
stop) |
||||
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME" |
||||
do_stop |
||||
case "$?" in |
||||
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; |
||||
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; |
||||
esac |
||||
;; |
||||
status) |
||||
status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? |
||||
;; |
||||
#reload|force-reload) |
||||
# |
||||
# If do_reload() is not implemented then leave this commented out |
||||
# and leave 'force-reload' as an alias for 'restart'. |
||||
# |
||||
#log_daemon_msg "Reloading $DESC" "$NAME" |
||||
#do_reload |
||||
#log_end_msg $? |
||||
#;; |
||||
restart|force-reload) |
||||
# |
||||
# If the "reload" option is implemented then remove the |
||||
# 'force-reload' alias |
||||
# |
||||
log_daemon_msg "Restarting $DESC" "$NAME" |
||||
do_stop |
||||
case "$?" in |
||||
0|1) |
||||
do_start |
||||
case "$?" in |
||||
0) log_end_msg 0 ;; |
||||
1) log_end_msg 1 ;; # Old process is still running |
||||
*) log_end_msg 1 ;; # Failed to start |
||||
esac |
||||
;; |
||||
*) |
||||
# Failed to stop |
||||
log_end_msg 1 |
||||
;; |
||||
esac |
||||
;; |
||||
*) |
||||
#echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2 |
||||
echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2 |
||||
exit 3 |
||||
;; |
||||
esac |
||||
|
||||
: |
@ -1,5 +0,0 @@ |
||||
etc/osmocom/osmo-gtphub.cfg |
||||
lib/systemd/system/osmo-gtphub.service |
||||
usr/bin/osmo-gtphub |
||||
usr/share/doc/osmo-sgsn/examples/osmo-gtphub/osmo-gtphub-1iface.cfg usr/share/doc/osmo-gtphub/examples |
||||
usr/share/doc/osmo-sgsn/examples/osmo-gtphub/osmo-gtphub.cfg usr/share/doc/osmo-gtphub/examples |
@ -1 +0,0 @@ |
||||
usr/share/doc/osmo-sgsn-doc/*.pdf |
@ -1,5 +0,0 @@ |
||||
/etc/osmocom/osmo-sgsn.cfg |
||||
lib/systemd/system/osmo-sgsn.service |
||||
usr/bin/osmo-sgsn |
||||
usr/share/doc/osmo-sgsn/examples/osmo-sgsn/osmo-sgsn.cfg usr/share/doc/osmo-sgsn/examples |
||||
usr/share/doc/osmo-sgsn/examples/osmo-sgsn/osmo-sgsn-accept-all.cfg usr/share/doc/osmo-sgsn/examples |
@ -1,90 +0,0 @@ |
||||
Here is a simple setup to test GTPHub operations. The IP addresses picked will |
||||
work well only on a system that creates local addresses (127.0.0.123) on the |
||||
fly (like linux) -- you may pick of course different IP addresses. |
||||
|
||||
Overview of the example setup: |
||||
|
||||
sgsnemu gtphub ggsn |
||||
127.0.0.1 <--> 127.0.0.3 127.0.0.4 <--> 127.0.0.2 |
||||
|
||||
Prerequisites: openggsn. |
||||
|
||||
Have a local directory where you store config files and from which you launch |
||||
the GSNs and the hub (they will store restart counter files in that dir). |
||||
In it, have these config files: |
||||
|
||||
ggsn.conf: |
||||
|
||||
# GGSN local address |
||||
listen 127.0.0.2 |
||||
|
||||
# End User Addresses are picked from this range |
||||
net 10.23.42.0/24 |
||||
|
||||
pcodns1 8.8.8.8 |
||||
|
||||
logfile /tmp/foo |
||||
|
||||
gtphub.conf: |
||||
|
||||
gtphub |
||||
bind-to-sgsns 127.0.0.3 |
||||
bind-to-ggsns 127.0.0.4 |
||||
ggsn-proxy 127.0.0.2 |
||||
end |
||||
|
||||
|
||||
( |
||||
You may omit the ggsn-proxy if GRX ares is working, or if you add the GRX |
||||
address and GGSN IP address to /etc/hosts something like: |
||||
|
||||
127.0.0.2 internet.mnc070.mcc901.gprs |
||||
|
||||
) |
||||
|
||||
|
||||
Once the config files are in place, start the programs, in separate terminals. |
||||
GGSN and SGSN need to be started with root priviliges to be able to create tun |
||||
interfaces. GTPHub may run as unprivileged user. |
||||
|
||||
The LD_LIBRARY_PATH below may be needed if OpenGGSN installed to /usr/local. |
||||
|
||||
|
||||
1. GGSN: |
||||
|
||||
sudo -s |
||||
cd <your-test-dir> |
||||
LD_LIBRARY_PATH=/usr/local/lib /usr/local/bin/ggsn -f -c ./ggsn.conf |
||||
|
||||
2. GTPHub: |
||||
|
||||
cd <your-test-dir> |
||||
path/to/openbsc/openbsc/src/gtphub/osmo-gtphub -c gtphub.conf #-e 1 #for DEBUG level |
||||
|
||||
3. SGSN tests: |
||||
|
||||
sudo -s |
||||
cd <your-test-dir> |
||||
/usr/local/bin/sgsnemu --createif -l 127.0.0.1 -r 127.0.0.3 --imsi 420001214365100 --contexts=3 |
||||
|
||||
Add more SGSNs using different IMSIs and local ports (if the same IMSI is used, |
||||
the GGSN will reuse TEIs and tunnels will be discarded automatically): |
||||
|
||||
/usr/local/bin/sgsnemu --createif -l 127.0.0.11 -r 127.0.0.3 --imsi 420001214365300 --contexts=3 |
||||
|
||||
This shows the basic setup of GTPHub. Testing internet traffic via sgsnemu |
||||
still needs some effort to announce a mobile subscriber or the like (I have |
||||
used a real BTS, osmo-sgsn and a testing SIM in a web phone, instead). |
||||
|
||||
The core capability of GTPHub is to manage more than two GSNs, e.g. an SGSN |
||||
contacting various GGSNs over the single GTPHub link. You would configure the |
||||
SGSN to use one fixed GGSN (sending to gtphub) and gtphub will resolve the |
||||
GGSNs once it has received the messages. So the SGSN may be behind NAT (add |
||||
"sgsn-use-sender" to gtphub.conf) and communicate to various GGSNs over a |
||||
single link to gtphub. |
||||
|
||||
I hope this helps to get you going. |
||||
Any suggestions/patches are welcome! |
||||
|
||||
~Neels |
||||
|
@ -1,25 +0,0 @@ |
||||
! |
||||
! Osmocom gtphub configuration |
||||
! |
||||
! This file is used for VTY tests, referenced by openbsc/osmoappdesc.py |
||||
! For the test, try to use most config commands. |
||||
! |
||||
|
||||
line vty |
||||
no login |
||||
|
||||
gtphub |
||||
! Local addresses to listen on and send from, both on one interface. |
||||
! The side towards SGSN uses nonstandard ports. |
||||
bind-to-sgsns ctrl 127.0.0.1 12123 user 127.0.0.1 12153 |
||||
! The GGSN side with standard ports. |
||||
bind-to-ggsns 127.0.0.1 |
||||
|
||||
! Proxy: unconditionally direct all traffic to... |
||||
sgsn-proxy 127.0.0.4 |
||||
|
||||
! Proxy with nonstandard ports or separate IPs: |
||||
ggsn-proxy ctrl 127.0.0.3 2123 user 127.0.0.5 2152 |
||||
|
||||
! Add a name server for GGSN resolution |
||||
grx-dns-add 192.168.0.1 |
@ -1,25 +0,0 @@ |
||||
! |
||||
! Osmocom gtphub configuration |
||||
! |
||||
|
||||
line vty |
||||
no login |
||||
|
||||
gtphub |
||||
! Local addresses to listen on and send from, each on standard ports |
||||
! 2123 and 2152. Setting these addresses is mandatory. |
||||
bind-to-sgsns 127.0.0.10 |
||||
bind-to-ggsns 127.0.0.2 |
||||
|
||||
! Local nonstandard ports or separate IPs: |
||||
!bind-to-sgsns ctrl 127.0.0.1 2342 user 127.0.0.1 4223 |
||||
|
||||
! Proxy: unconditionally direct all traffic to... |
||||
!ggsn-proxy 127.0.0.3 |
||||
!sgsn-proxy 127.0.0.4 |
||||
|
||||
! Proxy with nonstandard ports or separate IPs: |
||||
!ggsn-proxy ctrl 127.0.0.3 2123 user 127.0.0.5 2152 |
||||
|
||||
! Add a name server for GGSN resolution |
||||
!grx-dns-add 192.168.0.1 |
@ -1,29 +0,0 @@ |
||||
! |
||||
! Osmocom SGSN configuration |
||||
! |
||||
! |
||||
line vty |
||||
no login |
||||
! |
||||
sgsn |
||||
gtp local-ip 127.0.0.1 |
||||
ggsn 0 remote-ip 127.0.0.2 |
||||
ggsn 0 gtp-version 1 |
||||
ggsn 0 echo-interval 60 |
||||
authentication optional |
||||
auth-policy accept-all |
||||
! |
||||
ns |
||||
timer tns-block 3 |
||||
timer tns-block-retries 3 |
||||
timer tns-reset 3 |
||||
timer tns-reset-retries 3 |
||||
timer tns-test 30 |
||||
timer tns-alive 3 |
||||
timer tns-alive-retries 10 |
||||
bind udp local |
||||
listen 127.0.0.1 23000 |
||||
accept-ipaccess |
||||
! |
||||
bssgp |
||||
! |
@ -1,31 +0,0 @@ |
||||
! |
||||
! Osmocom SGSN configuration |
||||
! |
||||
! |
||||
line vty |
||||
no login |
||||
! |
||||
sgsn |
||||
gtp local-ip 127.0.0.1 |
||||
ggsn 0 remote-ip 127.0.0.2 |
||||
ggsn 0 gtp-version 1 |
||||
ggsn 0 echo-interval 60 |
||||
authentication required |
||||
auth-policy remote |
||||
gsup remote-ip 127.0.0.1 |
||||
gsup remote-port 4222 |
||||
! |
||||
ns |
||||
timer tns-block 3 |
||||
timer tns-block-retries 3 |
||||
timer tns-reset 3 |
||||
timer tns-reset-retries 3 |
||||
timer tns-test 30 |
||||
timer tns-alive 3 |
||||
timer tns-alive-retries 10 |
||||
bind udp local |
||||
listen 127.0.0.1 23000 |
||||
accept-ipaccess |
||||
! |
||||
bssgp |
||||
! |
@ -1,39 +0,0 @@ |
||||
! |
||||
! Osmocom SGSN configuration |
||||
! |
||||
! |
||||
line vty |
||||
no login |
||||
! |
||||
cs7 instance 0 |
||||
point-code 0.23.4 |
||||
asp asp-clnt-OsmoSGSN-A 2905 0 m3ua |
||||
remote-ip 172.18.8.200 ! where to reach the STP |
||||
as as-clnt-OsmoSGSN-A m3ua |
||||
asp asp-clnt-OsmoSGSN-A |
||||
routing-key 3 0.23.4 |
||||
sgsn |
||||
gtp local-ip 127.0.0.1 |
||||
ggsn 0 remote-ip 127.0.0.2 |
||||
ggsn 0 gtp-version 1 |
||||
ggsn 0 echo-interval 60 |
||||
authentication required |
||||
auth-policy remote |
||||
gsup remote-ip 127.0.0.1 |
||||
gsup remote-port 4222 |
||||
cs7-instance-iu 0 |
||||
! |
||||
ns |
||||
timer tns-block 3 |
||||
timer tns-block-retries 3 |
||||
timer tns-reset 3 |
||||
timer tns-reset-retries 3 |
||||
timer tns-test 30 |
||||
timer tns-alive 3 |
||||
timer tns-alive-retries 10 |
||||
bind udp local |
||||
listen 127.0.0.1 23000 |
||||
accept-ipaccess |
||||
! |
||||
bssgp |
||||
! |
@ -0,0 +1,3 @@ |
||||
SUBDIRS = \
|
||||
osmocom \
|
||||
$(NULL)
|
@ -0,0 +1,3 @@ |
||||
SUBDIRS = \
|
||||
sgsn \
|
||||
$(NULL)
|