osmo-msc (1.12.1) unstable; urgency=medium [ Harald Welte ] * configure.ac: Remove ibosmo-sccp dependency [ Alexander Couzens ] * vlr.h: remove unused ran_conn out of the header * vlr.c: drop unused header limits.h * vlr_auth_fsm.h/vlr_sgs_fsm.h: forward declare struct vlr_subscr * libvlr/vlr: remove gsm_subscriber.h [ Oliver Smith ] * contrib/jenkins: libosmo-sccp -> libosmo-sigtran -- Oliver Smith Mon, 16 Sep 2024 12:22:47 +0200 osmo-msc (1.12.0) unstable; urgency=medium [ Manawyrm ] * libmsc: add 3k1_AUDIO and FAX_G3 bearer cap * csd_bs: force rate adaptation mode for CSD calls to V.110 [ Andreas Eversberg ] * ASCI: Reject TERMINATION, if MS is not the originator * Use uniform log format for default config files * Add LLC and HLC information to MNCC interface definiton * Add LLC and HLC information forwarding to MNCC interface * ASCI: Remove debug line, used during development process [ Philipp Maier ] * vlr_sgs: fix VTY setting for SGs counter. * manuals: add section about the SGs interface. [ Neels Hofmeyr ] * fix codec mapping for GSM-HR * call_leg: silence some false errors * cc: remove code dup for / fix reading codecs from MNCC * add sdp_audio_codec_to_speech_codec_list() * implement re-assignment to match codecs * msc_vlr_test_call: drop misleading log * msc_vlr_test_call: codecs: properly test new codec matching * add comment in codec_mapping.c * test_call: codecs: allow specific PT numbers [1/2] * test_call: codecs: allow specific PT numbers [2/2] * test_call: codecs: test specific PT from MO to MT * sdp: allow more space for fmtp * tweak example osmo-msc.cfg: 001 01 * fix misnomer in msc_a.c: codec_cn -> codec_assigned * cosmetic: move check for CSD further above * cosmetic: tweak sdp_audio_codecs_by_payload_type() * tweak apidoc for sdp_audio_codecs_remove() * msc_vlr_test_call.c: fix misleading comments * report caller's file,line in trans_cc_filter_run() * cosmetic: rename to sdp_audio_codecs_foreach() * pick up all *.vty in EXTRA_DIST * invalidate vsub->msc_conn_ref when msc_a is discarded * fix VLR evil twin on LU with unknown TMSI * never page for TMSI with 'no assign-tmsi' * fixup for re-est: do not succeed on acceptance fail * do not invoke two Assignments (fixup for re-assignment) [ Vadim Yanitskiy ] * silent_call: check return value of trans_alloc() against NULL * VTY: always print MNCC handler type (internal/external) * SMS-over-GSUP: set Source Name IE for *all* messages * build: include README.md into the release tarball * libvlr: auth_fsm_wait_ai(): cosmetic: drop redundant break * libvlr: fix wrong cause value passed to auth_fsm_term() * libvlr: fix auth_fsm_term(): use proper value-string for cause * libmsc: fix -Wenum-conversion in subscr_conn_toss() * libsmpputil: fix -Wtautological-constant-out-of-range-compare * msc_a_up_call_assignment_complete(): handle all CSD modes * SMS-over-GSUP: set log context in gsm411_gsup_rx() * libmsc: add timer X36 for delaying LU connections * libmsc: reset the LU delay timer (X36) on MO/MT SMS * gsm411_send_rp_data(): add FIXME for MSC_CTR_SMS_DELIVERED * README.md: cosmetic: fix a typo * smpp: fix typo in comment for SMPP_{SYS_ID,PASSWD}_LEN * smpp: fix password[] length in struct esme * utils/smpp_mirror: use OSMO_STRLCPY_ARRAY, fix -Wstringop-overflow * debian/copyright: remove include/openbsc/slhc.h (no such file) [ Mychaela N. Falconia ] * GSUP: set default ipa-name at application level [ Pau Espin Pedrol ] * cosmetic: vlc: Fix whitespace formatting in struct sgsn_subscriber_pdp_data * vlr: Use new libosmogsm struct osmo_gsup_pdp_info fields [ Harald Welte ] * Fix license headers: Should have been AGPLv3+, not GPLv2+ * Add funding link to github mirror * README.md: More hyperlinks and add more interfaces / features * README.md: Add links to forum + issue tracker [ 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 Wed, 24 Jul 2024 17:23:01 +0200 osmo-msc (1.11.1) unstable; urgency=medium [ Neels Hofmeyr ] * fix codecs in internal call bridge * make two functions static [ Mychaela N. Falconia ] * CC: don't start guard timer on mid-call MNCC messages * gsup_client_mux: set destination_name in error reply function * SMS over GSUP: correctly route GSUP responses to MT SMS * SMS over GSUP: set source_name in GSUP reply messages [ Andreas Eversberg ] * ASCI: Remove duplicated CLEAR COMMAND from VGCS/VBS channel handling -- Oliver Smith Thu, 28 Sep 2023 13:53:07 +0200 osmo-msc (1.11.0) unstable; urgency=medium [ arehbein ] * Transition to use of 'telnet_init_default' [ Neels Hofmeyr ] * sdp_msg.c: fix missing rate in sdp_audio_codecs_add() * comment: clarify L3 Info processing * IuCS: remove IuUP LOOPBACK hack * make: doc/sequence_charts: use wildcards for EXTRA_DIST and CLEANFILES * tweak MNCC logging, add RTP info * msc_log_to_ladder.py: various tweaks * charts: Rename voice_call_full.msc to voice_call_external_mncc.msc * update doc/sequence_charts/voice_call_external_mncc.msc * add voice_call_internal_mncc.msc * add codec_mapping.h,c * MNCC: use codec_mapping, drop mgcp_codec_to_mncc_payload_msg_type() * [codecs filter] add codec_filter.h,c * [codecs filter] add trans.cc.codecs * [codecs filter] store BSS codec list from Compl L3 * [codecs filter] MO call: apply BSS codec list * [codecs filter] MT call: apply BSS codec list * [codecs filter] MT call: apply remote call leg codecs * [codecs filter] MT call: store MS Bearer Cap from CC Call Conf * msc_vlr_test_call: include RAN RTP addr in ass compl * [codecs filter] apply BSS codecs from Assignment Complete * add ran_infra.force_mgw_codecs_to_ran * rtp_stream: allow multiple codecs / use codec filter from Assignment * in ran_msg, return gsm0808_speech_codec (intra-MSC) * in ran_msg, return gsm0808_speech_codec (inter-MSC) * [codecs filter] use filter result in MT DTAP CC Setup * [codecs filter] use filter result in Assignment * [codecs filter] send + receive SDP via MNCC * msc_vlr_tests: confirm crcx by RAN/CN side separately * [codecs filter] use codecs filter on crcx ok * do CN CRCX first * mncc_recvmsg(): log caller file,line * [codecs filter] msc_vlr_test_call: test codecs resolution * codecs: compose HO Req Ch Type from cc.codecs * HO Req: include IE Codec List (MSC Preferred) * fix msc_vlr_test_call SDP mncc_rtp * coverity: sdp_msg_test.c: check rc of sdp_msg_from_sdp_str() * 3G: decapsulate IuUP to AMR at the MGW; allow 3G<-AMR->2G * TODO-RELEASE: add note on osmo-sip-connector and SDP [ Vadim Yanitskiy ] * src/Makefile.am: remove unneeded AM_LDFLAGS with LIBS * tests: use -no-install libtool flag to avoid ./lt-* scripts * tests: $(BUILT_SOURCES) is not defined, depend on osmo-msc * copyright: fix typo: sysmocom s/s.m.f.c./s.f.m.c./ GmbH * fixup: contrib/jenkins: create workspace.tar.xz on error * tests/{ctrl,vty}_test_runner.py: raise an exception if proc's rc != 0 * msc_vty: support spaces in short/long network name * ran_a_mgcp_codec_from_sc(): cosmetic: remove unneeded breaks * ran_a_mgcp_codec_from_sc(): map GSM0808_SCT_CSD to CODEC_CLEARMODE * ran_a_channel_type_to_speech_codec_list(): set PI/PT for CSD * codec_mapping: codec_map[]: add missing speech codec for CLEARMODE * csd_bs_list_to_bearer_cap(): properly initialize bcap fields * csd_bs_list_to_bearer_cap(): add default branch for safety [ Pau Espin Pedrol ] * mncc_sock: Call osmo_fd_unregister() before closing and changing bfd->fd * rtp_stream: Update id after modifying fields upon Tx of MGCP msg * rtp_stream: Fix remote_osmux_cid_sent_to_mgw never set to true * UserManual: Include sigtran*.adoc from osmo-gsm-manuals.git * Write explicit role & sctp-role fields in ASP configurations * Use new mgcp_client_conf_alloc() API to alloc mgcp_client_conf * Tx Loc UPD ACC: Use PLMN provided by subscr * trans_lcls_compose(): Set PLMN fron cell currently in use [ Oliver Smith ] * msc_mgw_setup: use mgcp_client_pool_empty() * msc_main: close SMS db on startup error * debian: set compat level to 10 * contrib/jenkins: create workspace.tar.xz on error * systemd: depend on networking-online.target * codec_mapping: add clearmode * ran_a_channel_type_to_speech_codec_list: add CSD * codec_filter_set_ms_from_bc: prepare for CSD * Cosmetic: gsm48_cc_tx_setup: tweak comment * Cosmetic: gsm48_cc_tx_setup: remove TODO comment * codec_filter_init: prepare for CSD * codec_filter_set_ran: prepare for CSD * codec_filter_set_bss: prepare for CSD * codec_filter_run: prepare for CSD * transaction: move cc.codecs.remote -> cc.remote * transaction: move cc.codecs.result -> cc.local * msc: add trans_cc_set_remote_from_bc * gsm48_cc_tx_setup: set trans->bearer_cap.transfer early * Add initial CSD support with external MNCC * smpp_handle_bind_tx: initialize tlv * sdp_msg_test: fix dereference after null check * smpp_msc: submit_to_sms: check ud_len > sms_msg_len * msc_ho_send_handover_request: fix check_after_deref * csd_bs_list_to_gsm0808_channel_type: fix rc check * gsm48_cc_tx_alerting: check rc of sdp_msg_from_sdp_str * mncc_test: fix talloc_named_const * gsm48_cc_tx_setup: use MNCC bcaps for CSD * test: add csd_test * csd_bs_list_remove: fix removal logic * mncc_builtin: permit data bearer types * csd_bs_to_gsm0808: add T 300 / proper ch_rate_type * Cosmetic: fix typo * csd_bs_list_to_gsm0808_ct: assert -> ret -EINVAL * msc_ho_send_handover_request: support CSD * msc_a_up_call_assignment_complete: check CSD codec * gsm48_cc_tx_call_proc_…: verify bcap.transfer [ Andreas Eversberg ] * ASCI: Add log categories for GCC/BCC (call control) * ASCI: Add log category for VGCS/VBS call and channel FSM * ASCI: Use a unique call-id for RTP streams * ASCI: rtp_stream_commit(): Also update MGW on conn mode change * ASCI: Allow usage of rtp_stream with other FSM * ASCI: Add transaction type to trans_find_by_callref() * ASCI: Add two new transaction types for VGCS and VBS * ASCI: Allow transaction without subscriber associated * ASCI: Add simple implementation of Group Call Register * ASCI: Add functions to transcode VGCS/VBS messages on A-interface * ASCI: Add callref to assignment command * ASCI: Add call control for VGCS/VBS * ASCI: Add decoder for VGCS/VBS messages to msc_a.c * ASCI: Add function to receive VGCS/VBS messages from BSS * ASCI: Add option to switch on or off ASCI support * ASCI: Check return code of osmo_mobile_identity_decode() * ASCI: Remove check for trans->msc_a to be set in _assign_complete() * ASCI: Add VTY to configure GCR (Group Call Register) * ASCI: Add reception of UPLINK RELEASE on dedicated channel * ASCI: Clear VGCS call and channel on BSSMAP reset message * ASCI: Receive messages from MSC-A role related to VGCS/VBS * ASCI: Null pointer bug fix in trans_create_bcc_gcc * ASCI: Fix wrong check for Null pointer in vgcs_cell_fsm_null() * ASCI: Check if codec mapping exists for given codec * ASCI: Fix Null pointer dereference bug in gsm44068_bcc_gcc_trans_free() * ASCI: Point to correct state machine when calling ran_encode_and_send() * ASCI: Add debugging and error logging to VGCS/VBS call control * ASCI: Add missing transaction ID to SET PARAMETER message [ Keith Whyte ] * SMPP: Fix Memory leaks -- Pau Espin Pedrol Tue, 12 Sep 2023 16:46:11 +0200 osmo-msc (1.10.0) unstable; urgency=medium [ Keith Whyte ] * Don't let this osmo-msc operate on a libdbi database * Turn off secure_delete in sqlite * Update MNCC field validation mask. * Change CC_CAUSE returned on unanswered MT Call * LCLS: Fix Global Call Reference generation [ Neels Hofmeyr ] * fix typo in msgb name for CC SETUP * missing whitespace in gsm_04_08_cc.c * err log: fix reverse statement in msc_a call handling * cosmetic: log actual MNCC msg in tch_rtp_connect() * sdp_msg: s/_name_/_to_str_/g * in sdp logging: add payload type number like 'AMR#111' * sdp_msg: add sdp_audio_codecs_cmp(), add compare flags * sdp_msg: s/sdp_audio_codec_/sdp_audio_codecs_ * msc_a,vlr: rename ciphering_required to is_ciphering_to_be_attempted * msc_a,vlr: add is_ciphering_required (accurately named) * vlr_lu_fsm: clarify naming of static functions * vlr: auth_fsm: clarify success/failure result * vlr: auth_fsm: rename AUTH_RES to AUTH_SUCCESS * vlr_auth_fsm: add result no_auth_info_event * vlr: implement fallback to no-auth * sdp_msg: when NULL, do not crash but return empty SDP str * log CC timeouts * add sdp_audio_codec_is_set * add some comments to sdp_msg.c,h * sdp_msg.c: parse send/recv mode * fix sdp_msg_to_sdp_str(), never add fmtp for unset codec * rtp_stream_commit: check missing MGW ep only when ready for RTP * rtp_stream: set_remote_addr: do nothing when unchanged [ Max ] * SMPP: clarify (re)start logic * Ignore .deb build byproducts * ESME: use osmo_sock_get_name() for logging * tests: use common stubs for SMS queue test * Introduce libsmpputil * Add ESME-specific logging * Set working directory in systemd service file * Make esme struct shared * Use libsmpputil functions in smpp_mirror tool * cosmetic: use proper name for SMPP handlers * SMPP: remove duplicate g_smsc definition * smpp_mirror: fix compiler warning * SMPP: use default port from libsmpp34 * SMPP: fix possible NULL pointer dereference * SMPP: make smpp_smsc_stop() static * ctrl: take both address and port from vty config * SMPP: use proper type for boolean variables [ Vadim Yanitskiy ] * contrib/jenkins.sh: do not override parallel make for libsmpp34 * mncc: move MNCC_F_ALL from mncc.c to mncc.h * mncc: cosmetic: fix coding style in mncc_prim_check_sign() * libmsc: check return value of gsm0808_create_ass2() * msc_main: fix wrong comment: HLR is a separate project * fix msc_vty_go_parent(): add missing case for MGW_NODE [ Pau Espin Pedrol ] * tests/test_nodes.vty: Avoid listing commands provided by lib * Introduce support for libosmo-mgcp-client MGW pooling * vty: Make use of new mgcp_client_pool_config_write() API * Use new mgcp-client VTY commands under mgw node * call_leg: Fix EV_MGW_ENDPOINT_GONE not processed in RELEASE state * doc: Include mgwpool.adoc from osmo-gsm-manuals [ Oliver Smith ] * contrib/jenkins.sh: use enable-werror with IU too -- Pau Espin Pedrol Tue, 07 Feb 2023 17:28:16 +0100 osmo-msc (1.9.0) unstable; urgency=medium [ Alexander Couzens ] * utran: use new UTRAN encryption enum * libmsc/gsm_04_08: refactor require ciphering into an own function * ran_msg_iu: do not pass UEA0 to ranap_new_msg_sec_mod_cmd2() [ Vadim Yanitskiy ] * VTY: clarify deprecation message for cfg_net_per_loc_upd_cmd * libmsc: fix memory leak (struct gsm_sms) in gsm340_rx_tpdu() * libmsc: fix another memleak (struct gsm_sms) in gsm340_rx_tpdu() * libvlr: vlr_set_ciph_mode(): avoid redundant check * libvlr: fix is_ciph_required(): always send SecModeCmd for UTRAN * libmsc: ran_iu_make_security_mode_command(): improve readability * libmsc: ran_iu_make_security_mode_command(): clarify UIA mask * libmsc: fix memory leak (struct msgb) in msc_i_ran_enc() * tests: use 'check_PROGRAMS' instead of 'noinst_PROGRAMS' [ Oliver Smith ] * treewide: remove FSF address * tests/msc_vlr/Makefile.am: drop -ldbi [ Pau Espin Pedrol ] * Announce IuFP audio codec for UTRAN conns in CRCX towards MGW * Avoid setting audio codec if not available during assignment_complete (MDCX) * ran_msg_iu.c: Set proper codec in Assignment Complete * Drop unneeded ax_check_compile_flag.m4 * call_leg: local_bridge: Avoid null pointer access if CN-side not ready [ Neels Hofmeyr ] * fix crash on CM Serv Rej: fix use count mismatch [ Harald Welte ] * call rate_ctr_init() to make rate counters work properly * switch sqlite3 to single-threaded mode * sms_queue: Annotate each function with some comment * vlr: Split vlr_subscr_rx_imsi_detach() * vlr: Add rate counters and stat items * sms_queue: Introduce rate_ctr / stat_item * smpp: Fix use-after-free bug when ESME disconnects but has write pending * smpp: don't enqueue write messages if ESME is disconnected * sms_queue: refactor sms_pending add/remove code * sms_queue: merge sms_pending_add into sms_pending_from * tests: Remove sms.db{-wal,-shm} files, not just sms.db * switch from libdbi to lbsqlite3 * db: Switch from 'synchronous = FULL' to 'synchronous = NORMAL' * sms: Encapsulate SMS queue related config parameters * sms: Give smsc its own VTY config node * sms_queue: Use local variable rather than 9x pointer de-ref in function * sms_queue: Make deletion of messages from DB VTY-configurable * smpp: Parse and use SMPP-provided validity period * sms: Make default SMS validity period configurable via VTY * sms: Introduce VTY-configurable minimum SMS validity period * update git URLs (git -> https; gitea) * Convert + Expand README file * fix RPM build failures due to README -> README.md rename -- Pau Espin Pedrol Wed, 29 Jun 2022 11:32:11 +0200 osmo-msc (1.8.0) unstable; urgency=medium [ Pau Espin Pedrol ] * configure.ac: Depend on newer libosmo-ranap * Fill Last Used E-UTRAN PLMN Id when in CSFB * Use new osmo stat items/ctr APIs * sgs: Use available API to set vlr subscr LastUsedEutranPLMNId * vlr_sgs: Drop recorded LastEutranPlmnId when UE no longer associated * sgs_iface.c: Improve logging when paging over SGs * msc_a.c: Allow MSC_A_EV_CN_CLOSE in state MSC_A_ST_RELEASING * cosmetic: fix typos in comments * vlr_sgs.h: Set proper logic order of items in enum sgs_ue_fsm_state * vlr_auth_fsm.c: Simplify function auth_fsm_wait_ai_resync * vlr_sgs.c: Fix missing use_count decrease in vlr_sgs_imsi_detach * vlr_sgs: Balance use_count incremented in vlr_sgs_loc_update * cosmetic: Fix typo in comment [ Oliver Smith ] * contrib/osmo-msc.spec.in: depend on dbd-sqlite3 * contrib/osmo-msc.spec.in: require libosmo-ranap >= 0.7.0 * Revert "Turn some compiler warnings into errors" [ Vadim Yanitskiy ] * SMS-over-GSUP: notify sender if no transaction found * msc_tx_common_id(): fix potential NULL pointer dereference * libmsc: fix NULL pointer dereference in trans_lcls_compose() * libmsc: struct smsc: drop 'const' qualifier from bind_addr * smpp_smsc: use osmo_talloc_replace_string() in smpp_smsc_conf() * mncc: rework passing GCR over the MNCC interface * manuals: remove deprecated -C / --no-dbcounter options * Do not mention deprecated -M / --mncc-sock-path options * Do not mention deprecated -l / --database options [ Neels Hofmeyr ] * osmo-msc main: use osmo_select_shutdown() * ran_msg_a.c: use gsm0808_create_cipher2() * support A5/4 in Cipher Mode Command * support A5/4 in inter-BSC handover * improve logging on encryption, for Ciphering and HO * add sequence_charts/call_reestablishment.msc * add vlr_subscr_find_by_mi * implement CM Re-Establish for voice calls [ Eric Wild ] * vty: allow A5/4 encryption in config [ Philipp Maier ] * running.adoc: add section about MGCP configuration * msc_vlr_test: remove DLMGCP log messages from unit test output [ Harald Welte ] * smpp: Fix help string in vty for "alert-notifications" * smpp_mirror: Factor-out reset of SMPP read state * smpp_mirror: Don't allocate msgb's for unrealistic amounts of memory * Fix enabling of UMTS UEA encryption * Make UTRAN encryption algorithms configurable [ Keith Whyte ] * Add support for LCLS to the MSC [ Alexander Couzens ] * Validate the choosen UTRAN encryption algorithm -- Pau Espin Pedrol Tue, 16 Nov 2021 17:44:54 +0100 osmo-msc (1.7.0) unstable; urgency=medium [ Keith Whyte ] * Use GSM411_RP_* and not GSM48_CC_* * Trivial: code simplification, return early * vty: allow configuring db path from cfg file * Don't Store an SMS in the database when the ESME is not Bound [ Pablo Neira Ayuso ] * libmsc: SMS, Avoid premature RP-ACK to MS [ Vadim Yanitskiy ] * manuals/vty: update the VTY reference to reflect recent changes * libvlr: remove unused 'periodic_lu_timer' from struct vlr_subscr * osmo-msc: fix: properly initialize default values for MGW timers * msc/signal.h: remove unused (since the NiTB split up) signals * VTY: mark 'subscriber create imsi' command as deprecated * VTY: add osmo_tdef introspection and configuration commands * libvlr: use generic osmo_tdef API for T3250, T3260, and T3270 * libmsc: move subscriber expiration timer T3212 to libvlr * vlr: remove unused parameter 'log_level' of auth_fsm_start() * vlr_sgs_fsm: add missing break, do not call to_null() twice * msc/sccp_ran.h: fix: do not pass -1 to osmo_rat_type_name() * VTY: cosmetic: make struct cmd_node for GSMNET_NODE static * libmsc/gsm_04_08: make use of msc_a in gsm48_rx_rr_app_info() * libmsc/gsm_04_08: use DRR in gsm48_rx_rr_pag_resp(), not DMM * libmsc/gsm_04_11.h: remove unused sms_deliver definition * osmo-msc: use stderr to print error messages, not stdout * libmsc/sdp: cosmetic: fix less-than-zero comparison of an unsigned value * SMS-over-GSUP: clarify error message about unexpected MO/MT SMS * SMS-over-GSUP: move net->sms_over_gsup check to gsm411_gsup_rx() * SMS-over-GSUP: respond with error if net->sms_over_gsup is false * SMS-over-GSUP: notify sender about unhandled GSUP messages * SMS-over-GSUP: notify sender about malformed GSUP messages * SMS-over-GSUP: notify sender in case of RPL delivery failure * gsm_04_14: fix off-by-one error in create_gsm0414_msg() * vty: fix vsub reference counting: call vlr_subscr_put() * debian/control: change maintainer to the Osmocom team / mailing list * mncc_builtin: cosmetic: fix coding style in int_mncc_recv() * mncc_builtin: log type of unhandled message in int_mncc_recv() * main: add --vty-ref-mode, use vty_dump_xml_ref_mode() * submit_to_sms(): fix the use of deprecated gsm_septets2octets() * ran_a_decode_cipher_mode_reject(): use gsm0808_get_cause() * fix _gsm48_cc_trans_free(): send MNCC REL.ind on Clear Request [ Neels Hofmeyr ] * fix segfault: unsolicited Paging Response * manual: add missing mention of MGCP in "Multiple instances" * manual: Multiple Instances: tweak MNCC, add missing SGs doc * manual: link to new common cs7-config.adoc, remove some dup of that * vlr_subscr_rx_id_resp(): dont assert on received MI type * msc_vlr_test_gsm_ciph.c: fix IMEISV MI: even number of digits, clear odd bit * use new osmo_mobile_identity API everywhere * add rudimentary NRI support for MSC pooling * add osmo-msc --vty-ref-xml: dump VTY ref XML to stdout * add comments to clarify some complete l3 details * vty 'show connection': show msc_a->via_cell instead of vsub->cgi * propagate Compl L3 Info Cell ID to the VLR subscriber record * make vty-transcrip-test: use $VTY_TEST var like osmo-bsc * refactor: move RESET Osmux TLV parsing to ran_msg_a.c * sgs_tx_loc_upd_resp_cb(): fix error handling for MI encoding * is_reset_msg: use proper enum for rc value * manuals: generate vty reference xml at build time * Clear Command: set cause value to "Call Control" * fix crash for unknown MI during Paging Response * fix MGCP timeout timer * drop duplicate ran_peer_find() vs ran_peer_find_by_addr() * fix comment in ran_peer.h * msc_vlr_tests: make independent of libosmocore talloc * gsm_network: drop unused neighbor_list member [ Eric ] * configure.ac: fix libtool issue with clang and sanitizer [ Philipp Maier ] * doc: do not use random ip-address for MGW * msc_vty: remove emergency-call command from network * msc_a: add callref as call id to ASSIGNMENT REQ. * msc_ho: fix CALL IDENTIFIER in HANDOVER REQUEST * mncc_call: fix memory overrun * gsm_04_08: check return code of osmo_mobile_identity_decode_from_l3() [ Harald Welte ] * vlr_auth_fsm: Fix compilation with gcc-10 * contrib/osmo-msc.spec.in: Enable SMPP in RPM builds * remove empty + unused ran_up_l2.c * osmo-msc.spec.in: Use %config(noreplace) to retain current config file * Send "BSSMAP CommonID" to tell BSC about the IMSI * Use osmo_fd_setup() whenever applicable * debian/control: Recommend installation of osmo-mgw * Use osmo_fd_*_{disable,enable} * README update. Explain more what it is than just the history [ Pau Espin Pedrol ] * Use OSMO_FD_* instead of deprecated BSC_FD_* * ran_msg_iu.c: Avoid redefining osmo-iuh global variables * configure.ac: Drop trailing whitespace * Support setting rt-prio and cpu-affinity mask through VTY * Change default SCTP conn NULL->127.0.0.1 to localhost->localhost * Support sending IPv6 Transport Address in Assignment Command * Support handling IPv6 Transport Address in Assignment Complete * tests: Fix VTY results after switch to newer libosmo-mgcp-client * Support handling IPv6 Transport Address in Handover Request (Ack) * mncc: Support IPv6 addresses (new version mncc 7) * contrib/jenkins: Enable parallel make in make distcheck * main: generate coredump and exit upon SIGABRT received * .gitignore: Ignore new autofoo tmp files * tests: Explicitly drop category from log * tests: Replace deprecated API log_set_print_filename [ Oliver Smith ] * contrib: import RPM spec * contrib: integrate RPM spec * Makefile.am: EXTRA_DIST: debian, contrib/*.spec.in * contrib/jenkins: don't build osmo-gsm-manuals * configure.ac: set -std=gnu11 [ Alexander Couzens ] * Convert paging response timer into an osmocom own X4 timer -- Pau Espin Pedrol Tue, 23 Feb 2021 20:22:34 +0100 osmo-msc (1.6.1) unstable; urgency=medium [ Vadim Yanitskiy ] * libmsc/gsm_04_08.c: fix: verify MI before calling vlr_subscr_rx_id_resp() [ Neels Hofmeyr ] * vlr_gsup_rx: fix uninitialized rc * vlr.c: fix condition to check MSISDN presence -- Pau Espin Pedrol Thu, 09 Jan 2020 12:29:08 +0100 osmo-msc (1.6.0) unstable; urgency=medium [ Philipp Maier ] * cosmetic: make function mncc_tx_to_gsm_cc static * sgs_iface: do not use SGsAP-MO-CSFB-INDICATION for CSFB return * msc_a: switch RAN type back to SGs when a CSFB-Call is cleared * sgs_iface: Accept messages with unknown TLV elements * paging: Send SGsAP-SERVICE-ABORT-REQUEST on paging timeout [ Neels Hofmeyr ] * add 'encryption uea 1 2' cfg / fix ttcn3 iu tests * mncc: send payload type matching chosen codec * memleak on cc setup errors * cc trans: make sure bearer cap is empty * fix segfault: don't send CC REL on NULL msc_a * vlr_lu_fsm: ignore ID_IMEISV during VLR_ULA_S_WAIT_HLR_UPD * tweak CC cause for incoming call to unattached nr * log, cosmetic: add "RR" to "Ciphering Mode Complete" * msc_vlr_tests: GSUP: don't care about extra IEs * gsm48_tch_rtp_create(): check against NULL mgcp_info * msc_a.c, CC trans: change a comment to a debug log * cosmetic: fix call_leg_ensure_ci() decl. arg name to match impl. * vlr: don't log about "gratuitous ID RESPONSE" * ran_dec logging: log message sizes on errors * msc_a fsm: ignore state chg to same state * fix error on BSSMAP Cipher Mode Complete L3 msg IE * catch GSUP auth result without auth_fsm * LOG_TRANS for CC: always log CC state * log which DTAP messages are sent to RAN * log: drop duplicate MNCC log * also log MNCC_SETUP_REQ * BSSMAP log tweak * log: RANAP encode: use RANAP message names instead of BSSAP * log: ran_msg_a: tweak a message name * send MNCC REL only if MNCC has actually started * fsm: use deferred deallocation * rtp_stream: sanely cancel MGW endpoint FSM notify * use osmo_sockaddr_str_is_nonzero() * CC: add error handling for CRCX responses * add msc_log_to_ladder.py * charts: add full MO and MT voice call diagram * cc trans: remove unused tch_rtp_create * fix msc_vlr_test_call.c * BSSMAP: decode Codec List (BSS Supported) * fail on invalid RTP address from MGW * msc_a CC: add some basic sanity tests * fix incoming call while Paging * add sdp_msg API: SDP parsing/composition * MNCC v6: add optional SDP to the socket protocol * msc_vlr_tests: better err logging for dtap msgs * msc_vlr_test_call.c: add MNCC logging * msc_vlr_tests: log descriptions in color with -v * msc_vlr_test_call: rename lu_utran_tmsi * gsup: indicate CN-Domain in SendAuthInfo Requests * sms db: when storing an SMS, retrieve the ID * sms log tweak [ Vadim Yanitskiy ] * libvlr/vlr.c: cosmetic: move message_type assignment * counters: clarify documentation for MSC_CTR_SMS_* entries * counters: clarify documentation for MSC_CTR_LOC_UPDATE_* entries * counters: clarify documentation for MSC_CTR_CALL_* entries * counters: polish documentation of cm_service_request / paging_resp * libmsc: fix potential NULL-pointer dereferences detected by GCC's LTO * libmsc/gsm_04_11_gsup.c: do not init a buffer in gsm411_gsup_mo_fwd_sm_req() * libmsc/gsm_04_11_gsup.c: fix SM-RP-OA encoding for MO SMS over GSUP [ Alexander Couzens ] * smpp_openbsc.c: check acl before deref it * vlr: gmm_cause_to_fsm_and_mm_cause() drop fsm_cause_p argument * make vlr_gmm_cause_to_mm_cause public * vlr_auth_fsm: on SAI use the GSUP provided GMM cause code [ Keith Whyte ] * Implement a global switch on the network to disable call waiting. [ Pau Espin Pedrol ] * vty: fix access to wrong argv in paging response-timer [ Oliver Smith ] * tests: only check IU configs if IU is enabled * osmoappdesc.py, tests: switch to python 3 [ Martin Hauke ] * Fix some typos [ Harald Welte ] * check for osmo_ss7_init() error return value * manual: Fix copy+paste error * Check for osmo_fsm_register() error return value * msc: exit(2) on unsupported positional arguments on command line -- Pau Espin Pedrol Fri, 03 Jan 2020 18:51:37 +0100 osmo-msc (1.5.0) unstable; urgency=medium [ Max ] * Handle LCLS-NOTIFICATION message from BSS * Various logging fixes * VLR tests: use msgb_eq_data_print() for comparison * transaction: drop meaningless ti_flag of trans_assign_trans_id() * transaction: clarify magic 0xff transaction ID [ Vadim Yanitskiy ] * transaction.c: cosmetic: use 'default' branch in trans_free() * libmsc/ran_conn.c: cosmetic: use tabs instead of N * 8 spaces * transaction: change arguments of trans_find_by_sm_rp_mr() * libmsc/gsm_04_11.c: also assign SM-RP-MR to MO transactions * libmsc/gsm_04_11.c: introduce and use gsm411_assign_sm_rp_mr() * libmsc/gsm_04_80.c: use gsm0480_create_release_complete() * libmsc/gsm_04_80.c: add msc_send_ussd_release_complete_cause() * libmsc/osmo_msc.c: move connection ref-counting code to 'ran_conn.c' * transaction: fix description of trans_assign_trans_id() * transaction.h: use #pragma once as include guard * libmsc/gsm_09_11.c: implement guard timer for NCSS sessions * libmsc/ran_conn.c: add missing 'break' to OSMO_RAT_EUTRAN_SGS * libmsc/sgs_iface.c: fix SGS_STATE_NS11 counter reference * libmsc/sgs_vty.c: always write server address and VLR name * libmsc/msc_vty.c: drop dead comparison against null * libmsc/sgs_iface.c: fix copy-paste error * libmsc/sgs_iface.c: register sgs_vlr_reset_fsm on DSO load * libmsc/sgs_vty.c: don't print SGs socket error twice * libmsc: fix: properly initialize the SGs server * libmsc/sms_queue.c: fix memleak in smsq_take_next_sms() * tests/sms_queue: track the use of NULL talloc memory contexts * msc/gsm_data.h: drop unused SMS_HDR_SIZE macro * configure.ac: drop rudimentary check for -fvisibility=hidden * configure.ac: drop useless SQLite3 dependency * libmsc/db.c: print info about database name and libdbi version * libmsc/gsm_04_11.c: clarify implicit CP-ACK handling * libmsc/ran_peer.c: fix msgb memleak in ran_peer_rx_reset() * libmsc/gsm_04_11.c: properly handle TP-User-Data-Length * libmsc/gsm_04_11.c: fix double init of both SMR and SMC FSMs * libmsc/gsm_04_11.c: cosmetic: restructure gsm411_mm_send() * libmsc/gsm_04_08.c: fix: print proper length value * libmsc/gsm_04_08.c: refactor CM Service Request parsing * libmsc/gsm_04_08.c: clarify IMEI rejection in gsm48_rx_mm_serv_req() * libmsc/gsm_04_11_gsup.c: cosmetic: drop useless variable * tests/.../Makefile.am avoid redundant linkage with librt * libmsc/sgs_server.c: do not override rc in case of SCTP_SHUTDOWN_EVENT * libmsc/msc_ho.c: fix unreacheable check of MSC-T role allocation * libmsc/msc_a.c: fix possible NULL-pointer dereferences * sms_queue_test: assert return value of osmo_use_count_get_put() * libmsc/gsm_04_11.c: fix NULL-pointer dereference in gsm340_rx_tpdu() * libmsc/ran_msg_a.c: avoid ternary operator in struct initialization * libmsc/ran_msg_a.c: refactor ran_a_decode_lcls_notification() * libmsc/ran_msg_a.c: prevent chosen_encryption->key buffer overrun * libmsc/mncc_call.c: fix uninitialized access of stack memory * libmsc/ran_peer.c: fix msgb memleaks in ran_peer_down_paging() * libmsc/ran_peer.c: avoid unreasonable use of goto in ran_peer_down_paging() * libmsc/msc_vty.c: fix: use msub_for_vsub() in subscr_dump_full_vty() * libmsc/msc_vty.c: fix documentation of 'show subscriber id' * libmsc/msc_vty.c: use llist_count() in subscr_dump_full_vty() * libmsc/rtp_stream.c: prevent NULL-pointer dereference * libmsc/gsm_04_11.c: properly handle MMTS indication * transaction: accept trans_type enum in trans_log_subsys() * Use GSM23003_MSISDN_MAX_DIGITS from libosmogsm * libmsc/msc_vty.c: refactor 'show subscr / conn / trans' commands * libmsc/msc_vty.c: do not abuse strlen() to check char buffers * tests: share stubs.h from msc_vlr_test as stubs.c * Introduce initial unit test for db_sms_* API * libmsc/db.c: fix storing SMS with empty TP-User-Data * debian/control: add missing libdbd-sqlite3 to Build-Depends * libmsc/db.c: fix potential integer overflow * libmsc/db.c: introduce and use parse_sm_ud_from_result() * libmsc/db.c: warn user about SMS text truncation * libmsc/db.c: get rid of hard-coded SMS expiry threshold * libmsc/mncc_builtin.c: drop dummy switch in int_mncc_recv() * libmsc/gsm_0(4|9)_11_gsup.c: print error message if subscr is not known * gsup_client_mux_tx_error_reply(): fix: do not override IMSI * gsup_client_mux_tx_error_reply(): fix: do not omit session IEs * gsup_client_mux_tx_error_reply(): fix: do not omit message class IE * gsup_client_mux_tx_error_reply(): fix: do not omit SM-RP-MR IE * libmsc/gsm_09_11.c: fix: return trans from establish_nc_ss_trans() * libmsc/gsm_09_11.c: send GSUP PROS_SS ERROR message when needed * libmsc/gsm_04_08.c: clean up unused leftover includes * libmsc/msc_a.c: fix: remove dummy allstate_action of msc_a_fsm * libmsc/paging.c: avoid double zero-initialization * libmsc/paging.c: cosmetic: actually use default branch of switch * libmsc/paging.c: cosmetic: remove leading space in log line * libmsc/gsm_09_11.c: do not abuse LOG_TRANS() and early trans allocation * libmsc/gsm_09_11.c: log network-originated session establishment error * libmsc/gsm_09_11.c: drop rudimentary vsub->cgi.lai.lac check * libmsc/gsm_09_11.c: drop meaningless check for concurrent paging * libmsc/msc_net_init.c: pass pointer to gsm_network directly * libmsc/gsm_09_11.c: inform HLR/EUSE if Paging has failed * libmsc/gsm_09_11.c: properly handle OSMO_GSUP_MSGT_PROC_SS_ERROR * libmsc/gsm_09_11.c: avoid double zero-initialization of gsup_msg * libmsc/gsm_09_11.c: fix broken reference counting for vsub * libmsc/gsm_09_11.c: do not abuse LOG_TRANS() in gsm0911_rcv_nc_ss() * libmsc/gsm_09_11.c: do not suppress rc of gsup_client_mux_tx() * tests/msc_vlr: fix: do not pass RAT type to expect_bssap_clear() * libvlr/vlr.c: do not expire subscribers if periodic LU is disabled * gsm_04_11_gsup.c: fix broken reference counting for vsub * libmsc/gsm_04_11.c: do not abuse LOG_TRANS() in gsm411_alloc_mt_trans() * libmsc/ran_msg_iu.c: fix: properly handle SAPI IE of RANAP_DirectTransfer * Fix: add missing semicolons to OSMO_ASSERT statements * libmsc/msc_vty.c: print subscriber expiration time [ Harald Welte ] * Add SGs Interface * debian: depend on libsctp-dev * configure.ac: Check for libsctp * a_iface: Centralize/wrap BSSAP / N-DATA transmission * a_iface: use 'const' qualifier for ran_conn whenever possible * a_iface: Fix hexdumping of N-DATA.req * a_iface: OSMO_ASSERT() if we ever want to send BSSAP with invalid length * smpp_smsc: Call destroy_tlv() when using build_tlv() * smpp: Make libsmpp34 use talloc for its allocations * msub_check_for_release(): Initialize msc_role_a_c * SMPP: Don't accept password or system-id exceeding spec length * Iu: Send SMS over SAPI-3 [ Philipp Maier ] * a_iface: Include CSFB Indication into BSSMAP CLEAR COMMAND * silent_call: use osmo_strlcpy() instead of strncpy() * msc_vty: add missing header file * vlr_sgs: fix SGs IMSI detech from non EPS services * vlr_sgs: start lu expiration timer on sgs eps detach * sgs_iface: fix nullpointer dereference * vlr_sgs_fsm: make sure vsub is marked used when LA is present * sgs_iface: detect and react to VLR/HLR failure [ Oliver Smith ] * debian: depend on libdbd-sqlite3 * vlr_lu_fsm.c: assert for invalid events * vty: make retrieve-imeisv-early configurable * vlr: fix IMEI length * vlr: when setting IMEISV, also set IMEI * vlr: optionally send IMEI early to HLR * debian: create -doc subpackage with pdf manuals * contrib/jenkins.sh: run "make maintainer-clean" * vlr_lu_fsm.c: don't send LU reject twice [ Keith ] * Don't deliver alert notifications to ESME not yet bound. * Write configuration correctly from vty (alert notifications) [ Neels Hofmeyr ] * use only accepted ran_conns for new transactions * gsm_04_11_gsup.c: drop unused conn lookup * SMS queue: properly log failed attempts number * vty: add cmd subscriber ID sms delete-all * vlr_subscr_name(): use OSMO_STRBUF * enable osmo_fsm_term_safely(), apply logging changes * sms queue: avoid repeated Paging for a failed SMS * vlr_subscr: use osmo_use_count * add LOG_TRANS, proper context for all transactions * gsm_04_08_cc: improve logging for CC trans * smpp: fix vlr_subscr use count bugs * vlr subscr get/put: also check against NULL * fix various missing line endings in logging * gsm_04_11: use gsm48_decode_bcd_number2(), evaluate rc * large refactoring: support inter-BSC and inter-MSC Handover * GSUP: include terminating nul in inter-MSC source/destination name * rename bscconfig.h to config.h, cleanup * fix regression: fix internal MNCC operation * vty/cfg: add missing write-back of inter-BSC and inter-MSC HO config * comment: apply function renames to message cycle explanation * ran_a_make_handover_request(): allow no encryption * make msc_a_vsub() and others NULL-safe * no HO call forwarding if no RTP stream * LOG_TRANS: store subsys in trans, unify USSD logging back to DMM * call_leg: remove unused event MSC_EV_CALL_LEG_RTP_RELEASED * call_leg: document the parent_event_* items * add DSS logging category * silence error messages about HANDOVER_END not permitted * build osmo-msc: add "missing" LIBASN1C_LIBS * minor comments in msc_vty.c * manual: adjust and fix auth and ciph docs * do not force encryption on UTRAN * add msc_vlr tests for UMTS without ciphering * doc/sequence_charts/mncc_fsm.msc: add SIP messages, tweak * doc/sequence_charts: fix naming of mncc_fsm to mncc_call * vlr_lu_fsm: fix missing event for IMEISV [ Sylvain Munaut ] * libmsc: Allow different channel types to be requested as silent calls * libvlr: Allow 2G auth tuples to be re-used without going through AUTH * make LOG_TRANS() NULL-safe again [ Pau Espin Pedrol ] * debian/control: Fix typo * sms_queue: Print dest msisdn instead of unknown subscriber * ran_peer: Move rx_reset_ack logic into its own func * vty: Add option to enable osmux towards BSCs * bssap: Detect BSC Osmux support on RESET (ACK) recv * a_iface: Announce Osmux support on RESET (ACK) send * Request Osmux CID and forward it in Assign Req and Assign Compl * db: Fix call to mempcy with NULL src ptr * db_sms_test: Do not print exact memcmp result * db_sms_test: Remove libdbi expected driver load errors * sms_queue.c: Improve misleading log line * doc: Add Osmux documentation to User Manual * Remove undefined param passed to logging_vty_add_cmds * Fix dependency version requirements [ Omar Ramadan ] * Allow MME name preformatted as FQDN in SGsAP [ Alexander Couzens ] * remove msc specific db counters * replace osmo_counter with stat_items [ Eric Wild ] * libvlr: fix sgsn tmsi creation, replace constant with define * turn -Werror=null-dereference into a warning [ Daniel Willmann ] * manuals: Add script to update vty/counter documentation from docker * manuals: Update counter/vty documentation * manuals: Include overview chapter about counters [ Thorsten Alteholz ] * fix spelling detected by lintian [ Keith Whyte ] * Set coding in mncc_set_cause() -- Pau Espin Pedrol Thu, 08 Aug 2019 16:01:38 +0200 osmo-msc (1.3.1) unstable; urgency=medium [ Neels Hofmeyr ] * fix build: apply msgb_wrap_with_TL() rename -- Harald Welte Tue, 22 Jan 2019 16:02:11 +0100 osmo-msc (1.3.0) unstable; urgency=medium [ Philipp Maier ] * vlr_access_req_fsm: use correct cause codes * a_reset: cleanup + remove dead code * mgcp: do not start connections in loopback mode * mgcp: hack to keep IuUP working * mgcp: use codec information returned with ASSIGNMENT COMPL. * doc: update mgw settings in example config file * mncc: fix byte ordering of IP-Address in mncc * msc_mgcp: move mncc struct initalization to where its actually needed * gsm_04_08_cc: Add global guard timer for MNCC * cosmetic: remove forgotten debug printf * vlr: drop unused is_ps parameter in vlr_subscr_req_lu() * osmo_msc: remove unused parameter from msc_dtap() * gsm_subscriber: make function msc_paging_request() static * msc_vty: display subscriber flags * msc_vty: display current RAN type * msc_vty: also show IMEI and IMEISV * gsm_04_08: Fix nullpointer deref [ Stefan Sperling ] * remove redundant unconditional PKG_CHECK_MODULES for libsmpp * implement periodic Location Update expiry in the VLR * VLR: reject overlong IMSIs in ID RESP messages * fix a use-after-free in msc_mgcp.c:_handle_error() * detach cancelled subscribers from VLR * make gsup ipa name configurable in osmo-msc.cfg * provide software version information to gsup peer * require 'ipa-name' option to be set via config file * use vty->type instead of local variable [ Vadim Yanitskiy ] * libmsc/ussd.c: FIX: properly indicate errors * libmsc: properly name the MSC_CONN_USE token for SS * libmsc/ussd.c: use connection ref-counting and transactions * Use proper naming for GSM TS 09.11 implementation * libmsc/gsm_04_08.c: expose gsm48_tx_simple() * libmsc/gsm_09_11.c: properly indicate transaction errors * libmsc/gsm_04_80.c: make the API abstract from ss_request struct * .gitignore: ignore src/libgsupclient/gsup_test_client * configure.ac: drop unused dependencies * msc_vlr_tests: don't abuse USSD-request to conclude connections * libvlr/vlr.c: forward unhandled GSUP messages towards MSC * libmsc/gsm_09_11.c: forward SS/USSD messages to HLR over GSUP * libmsc/gsm_09_11.c: implement network-initiated sessions * libmsc/gsm_09_11.c: properly handle MS-initiated release * libmsc/gsm_09_11.c: introduce rate counters for NC_SS sessions * libmsc/gsm_09_11.c: introduce counter for active sessions * msc/signal.h: use #pragma once include guard * msc/rrlp.h: use #pragma once include guard * libmsc/rrlp.c: add missing include * libmsc/gsm_09_11.c: clean up the local GSM 04.80 API * RRLP: properly name the init function * RRLP: fix: actually init the RRLP signal handlers * RRLP: migrate and share mode definitions from msc_vty.c * RRLP: print log when sending a position request * osmo-msc: free the VTY talloc context on exit * osmo-msc: track the use of talloc NULL memory contexts * libmsc/db.c: cosmetic: mark missing breaks in switch as intended * msc/gsm_04_11.h: drop unused sms_next_rp_msg_ref() * msc/gsm_04_11.h: use forward-declaration for _gsm411_sms_trans_free() * msc_vlr_tests.c: drop duplicating DMM category definition * libmsc/gsm_04_11.c: don't pass msgb to gsm411_rx_rp_{ack|error} * libmsc/gsm_04_11.c: refactor RP-DATA header validation * libmsc/transaction.c: cosmetic: fix typo * libmsc/gsm_09_11.c: drop redundant assertion of stored msgb * libmsc/gsm_04_11.c: refactor MT SMS message handling * libmsc/gsm_04_11.c: fix: always use SAPI 3 for MT SMS * libmsc/VTY: introduce kill-switch for routing SMS over GSUP * libmsc/gsm_04_11.c: forward MO SMS messages over GSUP * libmsc/gsm_04_11.c: accept MT SMS messages over GSUP [ Pau Espin Pedrol ] * msc_main: Fix typo in description of version param * jenkins.sh: Use --enable-werror only when iu support is disabled * osmo-msc: Improve shutdown due to signal and print talloc report on exit * msc: Set talloc ctx for osmo_signal structures * Install systemd services with autotools * Install sample cfg file to /etc/osmocom * msc: vty: Fix integer printf formatting [ Daniel Willmann ] * git-version-gen: Don't check for .git directory * OsmoBSC/HLR/MSC: Fix default config file name [ Harald Welte ] * libmsc: move L3 call-control to separate C file (gsm_04_08_cc.c) * migrate to oap_client in libosmogsm * Remove local libgsupclient; Use libosmo-gsup-client from osmo-hlr * gsm0407_is_duplicate(): Handle error ret of gsm0407_pdisc_ctr_bin() * share chapters/gsup.adoc from OsmoSGSN to OsmoMSC + OsmoHLR * vty-ref: Update URI of docbook 5.0 schema * add SGs / CSFB related dot + msc files [ Neels Hofmeyr ] * vlr_access_req_fsm.c: use osmo_strlcpy and avoid compiler error * Iu MGCP: no need to loopback on the cn side * cosmetic: typos in log and comment * use __FILE__, not __BASE_FILE__ * cosmetic: mute "COMPLETE_LAYER_3 not permitted" * store classmark in vlr_subscr, not conn * msc_vlr_tests: cosmetically tweak perm algo printing * A5/n Ciph: request Classmark Update if missing * fix Classmark Update without VLR subscriber * vty: add SCCP related vty commands * GSUP client: send CN domain IE on LU request * lu_fsm: result cb: use proper cause type (warning/coverity) * Importing history from osmo-gsm-manuals * add OsmoMSC manual * add OsmoHLR manual, OsmoHLR VTY reference * refactor Makefile build rules, don't use the FORCE * OsmoMSC: update VTY reference * msc: update vty reference * drop unused gsm_subscr_conn->mncc_rtp_bridge * drop unused gsm_network->handover.active * drop unused openbscdefines.h * drop unused SUBSCR_CONN_E_INVALID * drop unused gsm0408_allow_everyone() declaration * drop unused tests/db/* * cosmetic: subscr_conn_fsm_auth_ciph() should be static * adjust copyright in subscr_conn.c * populate gsm_subscriber_connection->encr during Ciph * rename gsm_encr to geran_encr, it is only applicable on GERAN * drop msc_compl_l3() return value * rename gsm_subscriber_connection to ran_conn * rename some RAN conn related stuff to ran_conn_* * move subscr_conn.c to ran_conn.c * move ran_conn declarations to new ran_conn.h * combine several small .h in msc_common.h * cosmetic: drop some unused opaque struct defs * move gsm_auth_tuple to vlr.h as vlr_auth_tuple * GSM_EXTENSION_LENGTH -> VLR_MSISDN_LENGTH * drop cruft from gsm_subscriber.h * move gsm_cbfn to gsm_subscriber.h, the only user * python tests: use py shebang instead of $(PYTHON) * make: prepare for adding transcript tests * add test_nodes.vty transcript test * cosmetic: msc_main.c: default args definition style * msc_main: mncc: move mncc socket decision to after read_cfg * vty: mncc cfg: separate the 'mncc' from 'mncc-guard-timeout' * add VTY commands: mncc internal / external (== -M) * ASS-COMPL: do not fire Sec Mode Compl event * move ASS-COMPL MGCP handling out of a_iface_bssap.c * drop gsm48 RR ciph mode compl from permitted initial messages * LU: do not always invoke sub_pres_vlr_fsm_start() * Revert "move ASS-COMPL MGCP handling out of a_iface_bssap.c" * log: by default start with all categories on LOGL_NOTICE * tweak comment to indicate sub_pres_vlr fsm as dead code * vlr_lu_fsm: drop unused out_state INIT -> WAIT_IMEI * comment: vlr: put the 'balancing' comment closer to the put() * vty: show subscriber: put() before printing the use count * fix msc_mgcp_fsm_evt_names: two missing events * mgcp log tweak: say RAN, not BTS, like surrounding logging * fix test_nodes.vty after libosmo-mgcp-client vty changes * cosmetics in msc_mgcp_call_release() * release RTP stream only for matching CC transaction * fix vlr ops.subscr_assoc re-association * remove code dup: add msc_mgcp_try_call_assignment() * move trans->assignment_done to cc.assignment_started * fix: incoming call during ongoing call * abort assignment on Assignment Failure * vlr: auth_fsm: make sure vsub->auth_fsm = NULL when it terminates * vty cfg: move 'ipa-name' from 'msc' to 'hlr' section * use osmo_rat_type from libosmocore * use mgcp-client configured endpoint domain name * use osmo_lu_type_name() from libosmocore * add LOG_RAN_CONN() to use the conn->fi->id for context * rx CM Service Req: reject double use sooner * refactor log ctx for vlr_subscr and ran_conn * mm_rx_id_resp(): use osmo_mi_name() * tweak fsm_msc_mgcp FSM and FI name * err log: fully log MS supported A5 algos on mismatch * msc_vlr_tests: tweak logging in verbose mode [ Keith ] * libmsc/mncc_sock.c: Add lchan_type_offset in queue_hello() * Make alert notifications vty configurable per ESME * Cosmetic: Fix spelling in smpp vty [ Max ] * Properly parse cause in cipher mode reject * Add counters for BSSMAP cipher mode messages * vty: add command to show all known BSC * msc_vlr_tests: tweak conn_exists() * Fix build with latest libosmocore * Use BSSAP-specific TLV parser from libosmocore * Use libosmocore to function to parse cipher mode reject cause * cosmetic: drop duplicated #include * cosmetic: drop unused variable * CC: log more details about unhandled message/state * VLR tests: add logging macro with explicit value description * VLR tests: avoid leaking LAC access details * Use proper type for tch_rtp_connect() parameter * VLR: drop unused struct members * Remove redundancy in LAC processing * MNCC: use log wrapper for call processing * Constify transaction helpers parameters * Use explicit protocol discriminator for NC SS/USSD session * Fix trans_has_conn() doxygen description * Enable SMS-related log in VLR tests * MNCC: use explicit struct type in gsm_call * SMS: remove code duplication in transaction init * vty: make 'sh connect/transact' readable again [ Keith Whyte ] * libmsc: Don't send SMS STATUS REPORT locally if the ESME accepted it. [ Alexander Couzens ] * OsmoMSC: add rate counter documentation [ Oliver Smith ] * 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 * Cosmetic: msc_vty: remove redundant "0 =", "1 =" * msc_vty.c: make check-imei-rqd configurable * vlr_core.h: remove duplicate declarations * VLR: vlr_subscr_{,msisdn_or_}name: const vsub arg * VLR: send CHECK-IMEI to EIR/HLR [ Ivan Kluchnikov ] * libmsc/transaction: introduce trans_find_by_sm_rp_mr() [ gsmevent admin ] * gsm_04_08_cc.c: drop non-sensible error message -- Harald Welte Mon, 21 Jan 2019 00:16:26 +0100 osmo-msc (1.2.0) unstable; urgency=medium [ Neels Hofmeyr ] * msc_vlr_tests: fix rebuild: rebuild when src/ libs were rebuilt * cosmetic: vlr: rename auth_tuple_max_use_count to _reuse_ * tests: add msc_vlr_test_authen_reuse * vty: make auth tuple reuse configurable * vty: drop deprecated 'logging level sms...' * defaults: assign TMSI by default * vty: skip installing cmds now always installed by default * examples: apply mgcp_client vty rename from 'mgcpgw' to 'mgw' * vlr: auth_fsm_start: check return value of fsm alloc * add --enable-sanitize config option * rate_ctr: don't use . as separator * sub_pres_vlr_fsm_start: fix heap use after free * vlr_gsupc_read_cb: fix use after free of GSUP msgb * subscr_conn: don't close after conn timeout * vlr_subscr_conn_timeout(): don't fire events to discarded fi * cosmetic: msc_vlr_tests: add comment to show expected tallocs * sms_queue_test: sanitize: clean up talloc contexts when done * cosmetic: log: CC state transition: log trans id and subscr * cosmetic: log: CC trans_alloc: log trans_id and subscr, not memory addrs * cosmetic: debug log: mncc: detached subscr: show subscriber * msc_vlr_tests: fix test nr arg: clear errno before strtol() * msc_vlr_tests: set a valid lac for fake conns * use only 0.23.1 as point code for both A and Iu * subscr_conn: introduce usage tokens for ref error tracking * cosmetic: log error when using a conn that's in release * add msc_vlr_test_call to reproduce a sanitizer error * fix use after free: missing conn_get on CC paging response * sms db: don't attempt to query pending SMS for unset MSISDN * sms db: properly quote MSISDN in various SQL queries * sms.db: silence libdbi warnings on out-of-range index * fix vty write: add missing 'authentication optional/required' output * compiler warning: drop double 'const' in a_iface_tx_cipher_mode() * debug log: a_iface_tx_cipher_mode(): log cipher and key * cosmetic: msc_vlr_tests: log SMS details when invoked with -v * vlr: debug log: log Ciphering Mode details * fix BSSMAP Cipher Mode Cmd: properly set permitted algorithms * cosmetic: move translation of vlr_ciph into msc_vlr_set_ciph_mode() * cosmetic prep: publish vlr_use_umts_aka() decision * cosmetic prep: tell vlr_ops.set_ciph_mode() whether UMTS AKA is used * drop unused T* timers (BSC land, not MSC) * cosmetic: msc_paging_request: drop obsolete comment * fix GSM-Milenage in presence of 2G keys * compiler warning: extend #if 0 to include unused array * a_iface_bssap: compiler warning: cast const away from TLV val for l2h * smpp_smsc: fix truncated string copy into bind_r.system_id * log: a_iface.c: revisit logging, use LOGPCONN * cosmetic: rename sccp_rx_udt and sccp_rx_dt to a_* * fix paging: add timeout to discard unsuccessful paging * fix: properly cancel all Paging on IMSI Detach * a_iface_tx_assignment: fix log lvl for "Sending Assignment..." * fix build: missing LIBOSMORANAP flags in libmsc * drop unused libmsc/meas_feed.h * cosmetic: gsm_network_init(): imply default 001-01 PLMN * implement support for 3-digit MNC with leading zeros * vlr: fix post-auth LU failure handling * vlr_lu_fsm: guard against using the wrong fi * msc_vlr_tests: revert IMSI parameter and test nr output * msc_vlr_test_gsm_ciph: drop unused function * msc_vlr_tests: make all test functions static * msc_vlr_tests: improve cipher mode coverage * fix: clear vlr_subscr->msc_conn_ref when the conn is discarded * vty: drop unused commands * vty: add 'msisdn' as alias for 'extension' * vty: add 'subscriber ... paging' cmd * msc_main: do not say 'osmo-nitb' in the usage * silent call: clarify rc and error messages logged on vty * msc_vlr_tests: clearly separate Ciph Mode from Security Mode checking * msc_vlr_test_gsm_ciph: add test for GSM AKA in UMTS environment * vlr: fix GSM AKA in a UMTS AKA capable environment * vlr auth: gracefully reject malformed auth response * gsm48_rx_mm_auth_resp(): pass is_r99 from classmark, not response size * cosmetic: gsm48_rx_mm_auth_resp(): log 'UMTS AUTH', not 'R99 AUTH' * msc_vlr_test_umts_authen: test response with too short RES * msc_vlr_test_umts_authen: test response with too long RES * msc_vlr_test_umts_authen: test response with only SRES half of RES * cosmetic: vlr_auth_fsm: clarify decision on UMTS AKA or GSM AKA * cosmetic: vlr_auth_fsm: log RAN and size along with SRES/RES * msc_vlr_tests: add test_a5_3_not_supported * configure: add --enable-werror * vlr_ciph_result: fix use after free of imeisv * trans_free: safeguard against a still running CC timer on free * cosmetic: vlr_auth: log decision to send UMTS or GSM AKA challenge * cosmetic: msc_vlr_tests: enable CC logging in debug * cosmetic: rename conn_fsm "bump" event to "release_when_unused" * msc_vlr_tests: add CC Release test and test to catch OS#2779 * cosmetic: gsm_04_08.c: drop unused struct gsm_lai * trans_free: tear down conn when last transaction is done * dissolve libcommon,libcommon-cs: clean up vty definitions * cosmetic: msc_vty.c: use static gsmnet instead of gsmnet_from_vty() * dissolve libcommon: drop unused bsc_version.c * dissolve libcommon: drop debug.c * dissolve libcommon: move talloc ctx into msc_main.c, drop talloc_ctx.c * dissolve libcommon: drop gsm_subscriber_base.c, move vlr_subscr_* to vlr.c * dissolve libcommon: drop gsm_data.c, move code to libmsc * rename libcommon to libgsupclient * dissolve libcommon-cs: mv a_reset.c to libmsc * dissolve libcommon-cs: move gsm_network_init() to libmsc * dissolve libcommon-cs: move gsm48_* code to libmsc, drop sms_next_rp_msg_ref() * remove empty libcommon-cs * gsup_test_client: gsupc_read_cb: fix uninitialized value 'io' * use osmo_init_logging2() with proper talloc ctx * drop some dead definitions (gsm_data.h, gsup_client.c) * test_reject_concurrency: missing assert * cosmetic: rx_bssmap: read message type once into local var * cosmetic: rename gsm_subscriber_connection->conn_fsm to ->fi * cosmetic: rename subscr_conn_from to complete_layer3_type * subscr_conn: store complete_layer3_type in conn, not FSM event arg * unify allocation of gsm_subscriber_connection * trans_free: drop bad assertion * msc_vlr_test_call: reproduce OS#3062 * CC: intentionally release T308 on BSSMAP Clear Request from BSC * refactor subscr_conn and subscr_conn_fsm de-/alloc * properly receive BSSMAP Clear Complete and Iu Release Complete * fix BSC Clear Request * cosmetic: embed compl_l3_type in FSM id * refactor VLR FSM result handling * msc conn ref counts: log human readable list of conn owners * cosmetic: use enum ranap_nsap_addr_enc instead of int [ Harald Welte ] * sms_route_mt_sms: Don't return uninitialized variable * MNCC: Add input validation * Log difference between SETUP and EMERGENCY_SETUP * Emergency Call: Set MNCC_F_EMERGENCY flag * Refuse Emergency Calls by IMEI with proper CM SERVICE REJECT Cause (Closes: #2866) * Reject any CM SERVICE we don't support * Remove traces of meas_feed * Fix msc_vlr test results (.err) for new libosmocore GSM48_PDISC names * Properly reject CM Re-Establishment Request * msc_cipher_mode_compl: Handle CIPH MOD COMPL without L3 message * remove unused paging.h and osmo_bsc_grace.h * debug: Remove code for filters that don't exist in OsmoMSC * remove traces of bsc_subscriber * jenkins.sh: Don't depend on osmo-ggsn * Massive removal of unused code/structs/headers * remove unused ipaccess.h * remove dead code in auth.h / auth.c * remove dead header files bsc_msc.h, bsc_msc_data.h and bsc_rll.h * signal.h: Remove unused/dead signal definitions * remove dead ctrl.h header file * debug: Remove dead log categories * Shift ciphering algorithm selection from VLR to MSC * Permit a set of multiple different A5 ciphers * MSC: Intersect configured A5 algorithms with MS-supported ones * Change GSUP re-connect interval to 1s * Implement checks for duplicate uplink UL L3 message (Closes: #2908) * VTY: Add 'show connections' and 'show transactions' commands * a_reset: Add additional "a_reset_alloc" argument * Don't answer to BSC-originated RESET with another RESET * cosmetic: Use msgb_hexdump*() rather than manual osmo_hexdump() on msg * a_iface: Reduce log levels * a_iface_bssap.c: Use LOGPCONN() whenever possible * a_sccp_rx_dt(): Don't print hexdump of message multiple times * cosmetic: a_iface: Harmonize log statements * cosmetic: No need for 'break' after 'return' * a_iface: centralize lookup of subscriber_conn * cosmetic: a_iface: More logging harmonization * a_iface: Add copyright statement (after recent contributions) * Introduce new BSSAP logging category/subsystem * a_iface: Fix heap-use-after-free by cleaning up msgb ownership * Add VTY command to configure destination MSISDN for emergency calls * a_iface: Fix heap-use-after-free in a_clear_all() * MGCP: Response code 250 is *not* an error for DLCX * a_iface: s/Abis/L3/ for speech version/preference fields * a_iface: Consistent and understandable function names * MT Calls: Copy bearer capabilities from NNCC primitive to trans * MNCC: Copy bearer_cap from MNCC to gsm_trans * gsm_data: remove unused gsm_subscriber_connection members * remove bsc_api.h and all users - they're all dead code * dead code removal * remove unused dyn_ts_allow_tch_f VTY option * osmo-msc: Add talloc context introspection via VTY * remove unused VTY command "location updating reject cause" * remove unused "authorized-regexp" VTY command * remove unused "auth policy" VTY command * remove dead code (gsm_parse_reg) * BSSAP: Return error code if COMPL L3 with no or too short L3 payload * a_iface_bssap: Treat inbound RESET as implicit RESET ACK * a_iface: If L3/DTAP returns error in COMPL L3, close SCCP connection * DTAP: Ensure proper DLCI is used in MSC-originated DTAP * Permit any Sender MSISDN when sending SMS from VTY * smpp: Unset esme->acl on socket close * sms_queue: fix use-after-free on 'pending' [ Alexander Couzens ] * debian/rules: remove doublicated project name in example files * libmsc/vty: don't access old bsc rate counters [ Philipp Maier ] * reset: remove name variable from reset context * cosmetic: move log message to else branch * cosmetic: add missing spaces * cosmetic: remove duplicate logging * mncc: re-add lchan members to structs * mncc: remove deprecated commandline option. * a_iface: correct data type for a.conn_id in gsm_subscriber_connection * mgcp: use osmo-mgw to switch rtp streams * increase RAN timeout in MGCP FSM * a_reset: Add FSM event names * msc_mgcp: Add FSM event names * a_iface: fix BSSMAP reset handling * msc_mgcp: fix mgw timeout handling * mgcp: be sure that pending mgcp transactions are canceled before free * msc_mgcp: use more conceise error msg on truncation * mcgp: let the MGW allocate the MGCP endpoint * cosmetic: remove disabled (debug) code gsm_04_08.c * msc_mgcp: to not access higher layers after release * cosmetic: remove unused variable * msc_mgcp.c: log endpoint name instead of pointer * msc_mgcp: do not send wildcarded DLCX messages [ Max ] * Use osmo-ggsn instead of openggsn in jenkins tests * Add basic CTRL test * Remove obsolete ./configure option * Remove unneeded .py scripts * Enable sanitize for CI tests * Migrate from OpenSSL to osmo_get_rand_id() * VLR: remove unused parameter * VLR: log subscriber update * Add control command to expire subscriber * VLR: constify GSUP-related function parameters * cosmetic: log prim operation as text * Remove unused code * Wrap osmo_strlcpy() calls * Fix whitespace issues * Constify msc_subscr_conn_is_accepted() parameter * Move IMSI into test parameters * VLR tests: mark static test functions as such * Expand VLR tests * VLR tests: don't fail via assert * VLR tests: remove weird code * VLR tests: always print test parameters * VLR tests: move network init into function * GSUP: check osmo_gsup_encode() result * VLR: fix potential NULL dereference [ Alexander Huemer ] * Add missing CFLAGS * Remove utils imported from openbsc, fix building remaining util smpp_mirror [ Pau Espin Pedrol ] * libmsc: db.c: Replace dbi APIs marked as deprecated * libmsc: msc_vty: Fix compilation warning * libmsc: bssap: Fix typo in log message * libmsc: bssap: Refactor rx paths to to avoid parse_tlv code duplication * libmsc: bssap: Catch TLV parse failures * libmsc: bssap: Remove fixme and properly update msgb tail * msc_mgcp.c: Fix several wrong ptr printf fmt * contrib: osmo-msc.service: Depend on osmo-mgw.service * smpp_smsc_conf: Fix heap-use-after-free * Remove unused GSM_PAGING_OOM * setup_trig_pag_evt: Remove uneeded default case in switch statement * setup_trig_pag_evt: Always log correct paging failure case * setup_trig_pag_evt: Fix heap-use-after-free [ the 34c3 gsm team ] * smpp_smsc.c: don't talloc_strdup NULL pointers [ Vadim Yanitskiy ] * msc/gsm_04_80.h: clean up useless declarations * msc/gsm_04_80.h: cosmetic: whitespace fix * msc/gsm_04_80.h: use '#pragma once' instead of includes * src/libmsc/ussd.c: drop useless forward declaration * ussd.h: cosmetic: remove useless comment * ussd.h: cosmetic: use '#pragma once' include guard * libmsc/gsm_04_80.c: drop unused 'in_msg' argument * libmsc/ussd.c: cosmetic: correct log level and message * libmsc/ussd: don't overwrite rc if decoding failed * tests/msc_vlr: fix expected SS message names [ Stefan Sperling ] * Improve an error message in db_init(). * Delete SMS from the database once they were sent successfully * Store/retrieve SMS validity time in the SMS datebase * Fix value of stored SMS validity time. * Add a VTY command which deletes all expired SMS. * Accept SMS for any receiver * Delete expired SMS automatically. * Make sending an SMS to an unknown subscriber B work over SMPP. * enable osmo_fsm vty commands in osmo-msc vty * Track libosmocore API change in osmo-msc. * restore sending of optional MM info messages * use libosmocom to parse cell identifier in bssmap_rx_l3_compl() [ Daniel Willmann ] * iucs: Add a function to return the connection ID for the IU SCCP conn * libmsc: Add a function to return a unique ID of the subscriber conn * libmsc: Pretend MNCC requested release in handle_error() -- Pau Espin Pedrol Thu, 03 May 2018 18:52:03 +0200 osmo-msc (1.1.2) unstable; urgency=medium * Depend on both libosmo-sigtran-dev and libosmo-sccp-dev * Debian: require minimum versions of packages we depend on -- Harald Welte Sun, 29 Oct 2017 09:01:30 +0100 osmo-msc (1.1.1) unstable; urgency=medium * Debian: Depend on libosmo-sigtran-dev, not libsomo-sccp-dev! -- Harald Welte Sat, 28 Oct 2017 21:57:22 +0200 osmo-msc (1.1.0) unstable; urgency=medium [ Alexander Couzens ] * Initial release. * debian/rules: show testsuite.log when tests are failing [ Neels Hofmeyr ] * build: check for -lgsm * am: msc_vlr_tests: use AM_LDFLAGS instead of COMMON vars * jenkins: fix build: osmo-mgw from master, not pre_release * jenkins: drop unused build matrix vars, always --enable-smpp * configure.ac: fix to "AC_INIT[osmo-msc]" * rewrite README * rename openbsc.pc to osmo-msc.pc * debian: fix web and VCS links, tweak osmo-msc.install * drop files unrelated to osmo-msc * rename include/openbsc to include/osmocom/msc * doc/examples: add detailed cs7 config examples * use separated libosmo-mgcp-client, apply rename to mgcp_client_* * ctrl: subscriber-list-active: list only attached subscribers * debian: fix dependency to mgcp library * main: remove cmdline args no longer available for osmo-msc * vty: fix: missing default cmds at hlr node * ctrl: remove unimplemented cmds subscriber-{modify,delete} * fix build: remove obsolete header legacy_mgcp/mgcp.h * fix debian: fix erratic doc/examples install path * fix memory leak: vlr: vlr_gsupc_read_cb() must msgb_free() * fix vty tests: long timeout due to unreachable STP address * cosmetic: vlr: declare a struct in .h; drop unused header * add ';' after OSMO_ASSERT() [ Philipp Maier ] * a_iface: fix memory leaks * a_iface: fix typo [ Max ] * Remove rest_octets.h * Remove SI-related code * Remove BTS-specific attributes * Remove unused osmo_bsc_rf.h header * Remove pkg-config file [ Harald Welte ] * Update .gitignore for post-nitb-split * remove further files and autotest/autoconf bits irrelevant to osmo-msc * Rename osmo_fsm to avoid illegal space in name + more meaningful name * Debian: remove obsolete Dependencies * configure.ac: Depend on latest tagged/released libosmo-* versions * Debian: Build with enabled SMPP support * osmo-msc: Don't link against libasn1c * Debian: Include systemd.service in package * Debian: include all (not just one) example config files -- Harald Welte Sat, 28 Oct 2017 14:45:58 +0200 osmo-msc (0.1.0) UNRELEASED; urgency=low * Initial release. -- Alexander Couzens Tue, 08 Aug 2017 01:13:01 +0000