osmo-sgsn (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 [ Max ] * Use libosmocore constant for IMSI length in ACL entry [ 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 [ 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 -- Pau Espin Pedrol Fri, 03 Jan 2020 19:17:56 +0100 osmo-sgsn (1.5.0) unstable; urgency=medium [ Max ] * Improve 'show subscriber cache' vty command * GMM: permit VLR_ANSWERED event in attach FSM * Fix IMSI padding in imsi-acl [ 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. [ 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 [ 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 [ Keith ] * Echo zero byte XID-Field of Type L3_PAR [ 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 [ 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 [ Eric Wild ] * replace magic tmsi constant with define * turn -Werror=null-dereference into a warning [ 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 [ Ruben Undheim ] * Spelling fixes -- Pau Espin Pedrol Thu, 08 Aug 2019 16:46:31 +0200 osmo-sgsn (1.4.0) unstable; urgency=medium [ 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 ] * 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 [ 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 ] * 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 [ 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 [ 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 Wed, 23 Jan 2019 18:32:41 +0100 osmo-sgsn (1.3.0) unstable; urgency=medium [ 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 [ 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 [ Harald Welte ] * Replace '.' in counter names with ':' * Add talloc context introspection via VTY [ 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 Thu, 03 May 2018 19:01:44 +0200 osmo-sgsn (1.2.0) unstable; urgency=medium [ 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 [ 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 [ Pau Espin Pedrol ] * Remove unneeded dep libdbi [ Philipp Maier ] * log: fix default loglevels * non-iu-build: guard vty libosmo-sigtran function calls. * configure: fix libosmo-sigtran dependency [ Harald Welte ] * Debian: Add systemd service files for osmo-sgsn and osmo-gbproxy * Debian: fix dh_strip rules for creating one -dbg per program -- Harald Welte Sat, 28 Oct 2017 19:07:48 +0200 osmo-sgsn (0.1.0) unstable; urgency=low * Initial release. -- Alexander Couzens Tue, 08 Aug 2017 01:13:05 +0000