osmo-hnbgw (1.7.0) unstable; urgency=medium

  [ Neels Janosch Hofmeyr ]
  * drop config.vty tests from make check
  * coverity CID#358071
  * coverity CID#358072
  * coverity CID#358070
  * coverity CID#358069
  * on RUA Connect failure, respond with RUA Disconnect
  * on RUA DT for unknown context, respond with RUA Disconnect

  [ Harald Welte ]
  * hnb_persistent: Use incrementing counter for rate_ctr + stat_item index
  * Revert "hnb_persistent: Use incrementing counter for rate_ctr + stat_item index"

  [ Oliver Smith ]
  * contrib/jenkins: libosmo-sccp -> libosmo-sigtran

  [ Pau Espin Pedrol ]
  * Log cn_disconnect.ind cause
  * Fix SCCP RLSD not sent upon rx RUA Disconnect due to error condition
  * ps_rab_ass_fsm: Fix uninitialized ptr access
  * Add PFCP stats item group
  * hnbgw: Avoid using struct osmo_pfcp_cp_peer fields directly
  * hnbgw: Fix wrong map object retrieved from hashtable
  * Use new libosmo-sigtran APIs to access osmo_ss7_instance
  * jenkins.sh: libosmo-netif no longer depends on libosmo-abis
  * jenkins.sh: No need to build libosmo-sigtran with doxygen
  * map_sccp: Fix crash during ev MAP_SCCP_EV_RAN_DISC in st MAP_SCCP_ST_WAIT_CC
  * peek_l3_ul_nas: Split parsing logic based on PS/CS ctx
  * peek_l3_ul_nas: Improve RAU req parsing checks
  * peek_l3_ul_nas: Improve GMM Attach Req parsing checks
  * peek_l3_ul_nas: Parse PTMSI MI from GMM RAU req

 -- Oliver Smith <osmith@sysmocom.de>  Wed, 12 Feb 2025 14:37:35 +0100

osmo-hnbgw (1.6.0) unstable; urgency=medium

  [ Pau Espin Pedrol ]
  * hnbgw_cn: Remove assert hit due to wrong assumption
  * Increase default X31 val from 5 to 15 seconds
  * context_map_sccp: Fix assert hit due to missing ev handling
  * tests/ranap_rab_ass: Test RAB-Ass.req with X.213 IPv4 address len=7
  * mgw_fsm: Assume IuUP HNB IP addr = Iuh during MGCP CRCX on RAN side
  * mgw_fsm: Modify RAB on HNB if IuUP local IP addr at MGW changes during MDCX
  * hnbap: Avoid calling duplicate getpeername() for each registered HNB

  [ Neels Janosch Hofmeyr ]
  * X31: fix vty doc
  * allow (second) CS RAB Assignment Request without RTP info
  * systemd,manual: set LimitNOFILE=65536
  * rua: validate correct RUA ctx state per RUA message type
  * rua: move from ERROR to DEBUG log: stray RUA Disconnect
  * pfcp: fix modification of wrong FAR ID
  * tweak vty doc: "UDP port"
  * add tests/pfcp_cfg.vty.with_pfcp
  * pfcp: fix missing vty_write of pfcp local-port
  * pfcp: implement sending Network Instance IEs
  * fix null deref on hnb_context_release
  * drop legacy hack: do not start MGW endp in loopback mode
  * fixup: compilation error: unused var in map_rua_init_action()
  * fix rate_ctr leak in hnb_persistent_free()
  * per-HNB GTP-U traffic counters via nft
  * add hnb_persistent hashtable: optimize lookup by cell id
  * fix stat_item leak in hnb_persistent_free()
  * use osmo_jhash for the hnb_persistent hashtable
  * rename to umts_cell_id_to_str()
  * umts_cell_id: add umts_cell_id_to_str_buf()
  * add umts_cell_id_test.c
  * 3-digit MNC: use osmo_plmn_id in struct umts_cell_id
  * add LOG_HNBP() for hnb_persistent
  * hnb_persistent: introduce disconnected timeout
  * prevent use-after-free after FSM instance termination
  * improve HNBAP error logging
  * nft-kpi: log errors of counter retrieval
  * nft-kpi: remove X34 drifting: adjust delay by elapsed time
  * drop list of HNBAP UE Context
  * dbg log: nft kpi: clarify nr of rate ctrs vs nr of hnbp
  * fix MGCP compat with osmo-mgw <= 1.12.2: CRCX in recvonly

  [ Andreas Eversberg ]
  * Use uniform log format for default config files

  [ Harald Welte ]
  * Display RANAP state during 'show cnlink'
  * Fix license headers: Should have been AGPLv3+, not GPLv2+
  * [cosmetic] re-order hnbgw.c to group code in major blocks
  * umts_cell_id_name: Use 3-digit MCC and 2/3-digit MNC based on VTY config
  * osmo_hnbgw_main: Install our usual SIGUSR1/SIGUSR2/SIGABRT handlers
  * Introduce umts_cell_id_from_str() as inverse of umts_cell_id_name()
  * Introduce concept of per-HNB persistent data structure
  * Set persistent->ctx pointer on HNB REGISTER REQ
  * New per-hnb rate_ctr and stat_item groups; track uptime
  * Various new per-hnb RANAP and RUA counters
  * stats: Introduce CNLINK counter macros
  * stats: Introduce CNPOOL counter macro
  * stats: Introduce basic counters for RANAP unit-data from CN links
  * cosmetic: Fix comment in mgw_fsm.c: One RAB per context_map, not hnb!
  * cosmetic: talk about cs_rab_ass_* when working in CS domain
  * cosmetic: Rename hnbgw_rx_ranap and friends to *_rx_ranap_udt_ul
  * rename hnbgw_peek_l3 to hnbgw_peek_l3_ul as it's uplink only
  * don't forward paging requests to HNB's not yet registered
  * vty: Print the uptime during 'show hnb' output
  * Introduce counter for per-hnb cumulative active CS RAB duration
  * stats: Add per-hnb paging:{cs,ps}:attempted counter
  * cosmetic: align downlink RANAP unitdata function names with uplink
  * mgw_fsm: Add some OSMO_ASSERT() to ensure only CS maps passed
  * RAB activation/modification/release statistics
  * context_map_{rua,sccp}: Re-order to always process KPIs
  * generalize hnbgw_tx_ue_register_rej_tmsi() to hnbgw_tx_ue_register_rej()
  * HNBAP: Use proper cause values during HNB-REGISTER-REQ processing
  * HNBAP: Send HNB-REGISTER-REJ on ASN.1 decoding error
  * HNBAP: Always respond to UE-REGISTER-REQUEST
  * HNBAP: Make sure to respond with correct "reject"
  * HNBAP: Transmit ErrorIndication in more situations
  * HNBAP: use GSM23003_IMSI_MAX_DIGITS instead of magic number
  * HNBAP: Support IMSI identity type in hnbgw_tx_ue_register_rej()
  * counters: Distinguish between normal and abnormal release cause
  * KPI: Add initial set of DTAP message type rate counters
  * kpi_ranap: Avoid null pointer de-ref during HNB shutdown

  [ Oliver Smith ]
  * gitignore: add *.la, hnbgw_vty_reference.xml
  * debian: fix having no manuals in osmo-hnbgw-doc
  * .deb/.rpm: various fixes related to non-root
  * contrib: remove rpm spec file
  * debian/postinst: add checks, be verbose
  * contrib/jenkins: set --enable-werror

  [ Max ]
  * .deb/.rpm: add osmocom user during package install

 -- Oliver Smith <osmith@sysmocom.de>  Thu, 25 Jul 2024 10:05:58 +0200

osmo-hnbgw (1.5.0) unstable; urgency=medium

  [ Neels Janosch Hofmeyr ]
  * UE state leak: when HNB re-registers, discard previous UE state
  * Deprecate 'sccp cr max-payload-len', remove SCCP CR limit code
  * cosmetic: drop stray backslash
  * drop obsolete fixme comment
  * various comment tweaks
  * log tweak
  * cosmetic: rename context_map_deactivate
  * fix deprecation: use ranap_cn_rx_co_decode2()
  * rua_to_scu(): drop dead code for connection-less
  * use RUA procedure code for rua_to_scu() arg
  * cosmetic: regroup members of hnbgw_context_map
  * add design charts for new context map FSMs
  * context map: introduce RUA and SCCP FSMs to fix leaks
  * log osmo_fsm timeouts
  * sccp_sap_up(): ignore PCSTATE.ind
  * fix regression: unbreak PFCP: PS RAB via UPF proxying
  * tweak LOGHNB()
  * debug log: log received RANAP message types on DCN, DHNB
  * map_sccp: on timeout during WAIT_CC, send N-DISCONNECT to SCCP-SCOC
  * release UE Contexts on HNB (Re-)Register
  * release UE Contexts on SCTP_RESTART
  * log: in new RUA,SCCP FSM IDs, indicate CS/PS
  * vty: 'show ue': show which HNB the UE is registered on
  * fix vty: show talloc-context all
  * place asn1 context under hnb_ctx for better visibility
  * fix asn1 leak in handle_cn_ranap()
  * fix asn1 leak in error path of hnbgw_tx_ue_register_acc()
  * fix asn1 leak in error path of hnbgw_tx_ue_register_acc_tmsi()
  * fix asn1 leaks in ps_rab_ass_resp_send_if_ready()
  * fix asn1 leak in hnbgw_rua_rx()
  * less code dup in mem free of hnbgw_rx_ue_register_req()
  * fix log msg typo 'Unsupportedccept'
  * actually run vty-tests: VTY transcript tests
  * actually run vty-tests: osmotestvty.py
  * rab_ass_fsm.c: fix asn1 memleak when replacing GTP address
  * ps_rab_ass_fsm.h: fix dup of FSM event enum
  * drop empty hnbgw_rua_init()
  * eliminate function hnb_contexts()
  * vty: fix doc strings for 'show {hnb,ue}'
  * actually run vty-tests: osmotestconfig.py
  * drop ctrl_test_runner.py
  * comment typo fix in ranap_rab_ass.c
  * simplify: one g_hnbgw as global state and root ctx
  * ranap_rab_ass_test.c: clarify talloc contexts
  * move main() to separate file
  * add non-installed libhnbgw.la for test linkage
  * vty: make legacy 'hnbgw'/'sccp cr max...' fatal
  * vty test: show missing write-back of 'rnc-id'
  * fix missing write-back of rnc-id
  * drop dead code: cnlink.T_RafC
  * remove obsolete context_map_check_released() call
  * unbloat: drop context_map_check_released()
  * vty_go_parent(): remove legacy cruft
  * immediately SCCP RLSD on HNB re-register
  * use new osmo_sccp_instance_next_conn_id()
  * add doc/examples/osmo-hnbgw/osmo-hnbgw-cs7.cfg
  * add separate cfg file only for VTY tests
  * add startup config tests
  * charts: add sccp.dot
  * cnpool: allow separate cs7 for IuPS and IuCS
  * coverity: fix type of local var
  * cnpool: split up context_map_find_or_create_by_rua_ctx_id()
  * cnpool prep: add SCCP_EV_USER_ABORT
  * cnpool: add multiple 'msc' and 'sgsn' cfg (use only the first)
  * cnpool: examples and config tests: use 'msc 0'/'sgsn 0' syntax
  * cnpool: make NRI mappings VTY configurable
  * tdefs; combine timer groups 'ps' and 'cmap' to 'hnbgw'
  * add hnbgw_decode_ranap_co()
  * fixup for 'cnpool: split up context_map_find_...'
  * startup config tests: show default 'msc 0', 'sgsn 0'
  * cnpool: extract Mobile Identity from RANAP payload
  * add rate_ctr infra; add rate_ctrs for cnpool
  * add CTRL transcript tests for cnpool rate ctrs
  * cnpool: select CN link from pool by NRI or round robin
  * doc/examples/osmo-hnbgw/osmo-hnbgw-cnpool.cfg
  * fix umts_cell_id_name(): show CID
  * make public: umts_cell_id_name()
  * tweak lots of logging
  * ctrl test: also test msc 1
  * cnpool: add context_map_cnlink_lost() handling
  * add ranap_domain_name()
  * detect in/active CN links by RANAP RESET
  * use cnlink state in cnpool decisions
  * cnpool: return Paging Resp to the exact CN link that Paged
  * cfg: add 'hnbgw' / 'plmn MCC MNC'
  * include Global RNC-ID in RESET
  * include Global RNC-ID in RESET-ACK
  * RUA: log tweak
  * coverity: hnbgw_cn: avoid NULL deref in LOGP

  [ Philipp Maier ]
  * mgw_fsm: fix typo
  * mgw_fsm: fix log line
  * mgw_fsm: use __func__ to mention function name in log line
  * mgw_fsm: refactor helper function handle_rab_release()
  * ranap_rab_ass: do not free never allocated FieldItems
  * ranap_rab_ass: be sure to initialize memory with 0

  [ Vadim Yanitskiy ]
  * tests: use check_PROGRAMS for tests, not noinst_PROGRAMS
  * tests: use -no-install libtool flag to avoid ./lt-* scripts
  * tests: make 'vty-test' target depend on osmo-hnbgw binary
  * tests: do not depend on undefined $(BUILT_SOURCES)
  * copyright: fix typo: sysmocom s/s.m.f.c./s.f.m.c./ GmbH

  [ Oliver Smith ]
  * hnbgw_mgw_setup: use mgcp_client_pool_empty()
  * debian: set compat level to 10
  * contrib/jenkins.sh: add PFCP variable
  * hnbgw: put copyright into define
  * systemd: depend on networking-online.target

  [ Pau Espin Pedrol ]
  * manuals: include osmo-gsm-manual's sigtran.adoc
  * tests: Update *.vty after libosmo-sccp VTY improvements
  * Use new mgcp_client_conf_alloc() API to alloc mgcp_client_conf
  * Tear down call if local IuUP MGW address changed during MDCX

 -- Pau Espin Pedrol <pespin@sysmocom.de>  Tue, 12 Sep 2023 17:18:43 +0200

osmo-hnbgw (1.4.0) unstable; urgency=medium

  [ Pau Espin Pedrol ]
  * hnbgw_cn.c: Guard against null ss7 ptr during init
  * cosmetic: Fix typo in log and whitespace
  * hnbgw: Log new SCTP HNB connections
  * hnb_context_release(): Make sure assigned conn is freed
  * Improve logging around hnb_context and sctp conn lifecycle
  * Change log level about conn becoming closed to NOTICE
  * hnbgw: Unregister HNB if SCTP link is restarted
  * hnbgw: Fix recent regression not closing conn upon rx of SCTP_SHUTDOWN_EVENT
  * hnbap: Accept duplicated HNB Register Request on same conn
  * hnbap: Improve logging around HNBAP HNB Register Request
  * Workaround bug where old hnb_context from same remote addr+port is kept
  * Fix handling of sctp SCTP_SHUTDOWN_EVENT notification
  * Close conn when receiving SCTP_ASSOC_CHANGE notification
  * hnb_read_cb: use local var to reduce get_ofd() calls
  * hnb_read_cb(): -EBADF must be returned if conn is freed to avoid use-after-free
  * Clear SCTP tx queue upon SCTP RESTART notification
  * Makefile.am: Drop duplicated LIBOSMOMGCPCLIENT_LIBS
  * Introduce support for libosmo-mgcp-client MGW pooling
  * doc: Include mgwpool.adoc from osmo-gsm-manuals
  * vty: Fix timers not printed when dumping running-config
  * hnbgw: Avoid allocating SCCP conn id >0x00fffffe
  * context_map: Lower loglevel to INFO when deallocating context IDs

  [ Neels Hofmeyr ]
  * mgw_fsm: move MGCP timeout to mgw_fsm_T_defs
  * fix test_ranap_rab_ass_resp_decode_encode
  * ranap_rab_ass_req_encode(): return msgb
  * add ps_rab_ass FSM to map GTP via UPF
  * reduce code dup in handle_cn_data_ind()
  * build: add --enable-pfcp, make PFCP dep optional
  * optimize: decode PS msgs only when PFCP is enabled
  * ps_rab_fsm: check use cb success
  * add example osmo-hnbgw-pfcp.cfg
  * manual: add missing bit on the MGCP port
  * manual: update overview chart with PFCP
  * manual: update IuCS/IuPS protocol stack chart
  * manual: explain the PFCP port
  * example cfg: tweak logging
  * debian,RPM: package with PFCP support

  [ Vadim Yanitskiy ]
  * tests/ranap_rab_ass: fix potential NULL pointer dereferences
  * configure.ac: do not require unused dlopen

  [ Oliver Smith ]
  * rpm spec: add osmo-hnbgw-pfcp.cfg

  [ Daniel Willmann ]
  * Install show talloc-context VTY commands
  * hnbgw_hnbap: Fix memory leaks in HNBAP handling

  [ Harald Welte ]
  * packate the new osmo-hnbgw-pfcp.cfg example config file
  * cosmetic: Fix typos
  * Abort if processing SCTP connection without HNB context
  * hnbgw_rx_hnb_deregister: Don't call hnb_context_release()
  * Don't process RUA messages if HNB is not registered
  * Don't permit anything but HNB (de)registration until HNB is registered

  [ Neels Janosch Hofmeyr ]
  * fix regression: in RUA, do PFCP only when enabled
  * do not depend on libosmo-gtlv
  * drop bogus error log 'no MGW fsm'
  * fix segfault on MGCP timeout
  * fix msgb leak for RANAP RAB Ass. Req.
  * fix possible leak of ue_context on UE REGISTER error
  * fix SCCP conn leak on non-graceful HNB shutdown
  * coverity: hnbgw_rua.c: remove redundant check

  [ Max ]
  * Set working directory in systemd service file
  * ctrl: take both address and port from vty config

  [ arehbein ]
  * osmo-hnbgw: Transition to use of 'telnet_init_default'

 -- Pau Espin Pedrol <pespin@sysmocom.de>  Tue, 07 Feb 2023 18:05:46 +0100

osmo-hnbgw (1.3.0) unstable; urgency=medium

  [ Philipp Maier ]
  * hnbgw_cn.c: fix sourcecode formatting
  * hbgw_hnbap: use osmo_plmn_from_bcd instead of gsm48_mcc_mnc_from_bcd
  * ranap_rab_ass: add decoder and rewrite functions for RAB-AssignmentRequest/Response
  * ranap_rab_ass: ensure specific rab_id
  * ranap_rab_ass: add function to check if RAB is in FailureList
  * ranap_rab_ass: add function to check if RAB is in ReleaseList
  * ranap_rab_ass_test: cosmetic: correct test function names
  * mgw_fsm: add MGW support to osmo-hnbgw
  * overview.adoc: update network diagram
  * running.adoc: explain MGW configuration
  * osmo-hnbgw.cfg: use local port 2729 as default for MGCP client
  * mgw_fsm: release call when FSM is not created
  * ranap_rab_ass: check for more than one RAB assignment req

  [ Neels Hofmeyr ]
  * use osmo_select_main_ctx(), tweak log in handle_cn_conn_conf()
  * allow calling rua_to_scu() without data
  * tweak comments in rua_to_scu()
  * add option to send SCCP CR without payload
  * fix segfault in error handling for mgw_fi == NULL

  [ Pau Espin Pedrol ]
  * mgw_fsm: Mark structs as static const
  * mgw_fsm: Improve logging
  * cosmetic: mgw_fsm: Fix typo in log
  * mgw_fsm: Change macro to not use local variables implicitly
  * mgw_fsm: Fix error path accessing uninitialized fsm ptr
  * mgw_fsm: Simplify cleanup paths

  [ Harald Welte ]
  * update URLs (git -> https; gitea)

 -- Pau Espin Pedrol <pespin@sysmocom.de>  Wed, 29 Jun 2022 12:42:35 +0200

osmo-hnbgw (1.2.1) unstable; urgency=medium

  * Do not turn some compiler warnings into errors by default

 -- Pau Espin Pedrol <pespin@sysmocom.de>  Tue, 11 Jan 2022 18:55:50 +0100

osmo-hnbgw (1.2.0) unstable; urgency=medium

  * Initial structure + import code from osmo-iuh.git
  * Populate debian/changelog to avoid build failures

 -- Pau Espin Pedrol <pespin@sysmocom.de>  Wed, 05 Jan 2022 12:17:16 +0100

osmo-hnbgw (0.0.0) unstable; urgency=medium

  * Initial debian package

 -- Pau Espin Pedrol <pespin@sysmocom.de>  Wed, 05 Jan 2022 11:58:28 +0200
