osmo-bsc (1.8.0) unstable; urgency=medium

  [ Harald Welte ]
  * remove obsolete dependency on libosmo-sccp
  * manual: Include QoS chapter and add osmo-bsc specific example

  [ Javi ]
  * Add vty command for Ericsson RBS2000 sync
  * Add command to enable RX diversity to RBS2000

  [ Oliver Smith ]
  * stats: T3122 related: num_values 16 -> 60
  * src/utils/meas_vis.c: fix bs_power -> bs_power_db
  * handover_test: fix ts_str may be uninitialized
  * bsc_ctrl_commands: fix uninitialized value (mode)
  * Revert "Turn some compiler warnings into errors"

  [ Neels Hofmeyr ]
  * refactor handover penalty timers
  * drop neighbor_ident_test.c
  * fix/refactor neighbor config
  * debug log, lchan_fsm: explain leaving wait_rll_rtp_establish state
  * fixup for neighbor config for coverity
  * drop unused func decl rsl_lchan_mark_broken()
  * drop unused gsm_bts_trx->description
  * deprecation: use osmo_bts_features_*()
  * fix wrong ARFCNs in local-cell neighbor config
  * update neighbor ARFCNs on startup and config changes
  * manual: Location Services: clarify BSC side address
  * abis_nm_ipaccess_rsl_connect(): use msgb to compose attr
  * Lb: stop RESET FSM when sccp_user is unbound
  * Lb: RESET FSM: never send sccp_user == NULL
  * Lb: add missing X12 timer configurability
  * Lb: make sure we never have missing timer configurability
  * gsm_lchan_name_compute with ctx
  * log: drop duplicate logging in ts_setup_lchans()
  * comment: tweak pchan_subslots() description
  * lchan_release(): do not release UNUSED lchan
  * lchan_fsm: mode modify: fix missing timeouts and error transitions
  * fix test_gsm48_multirate_config: dump the complete AMR lv buffer
  * test_gsm48_multirate_config: rather keep 4x amr_mode
  * assignment_fsm: fix failure log message for lchan unavailable
  * select_codecs(): do not confuse bool 'true' with integer value 1
  * gsm48_send_rr_ass_cmd(): rename dest_lchan to current_lchan
  * gsm48_send_rr_ass_cmd(): rename lchan to new_lchan
  * log: show src file,line of lchan_set_last_error
  * add missing arg braces in LOG_LCHAN macro
  * gscon MGCP: properly skip redundant MDCX towards MSC
  * cosmetic: rename FOR_* to ACTIVATE_FOR_*
  * cosmetic: rename lchan_activate_mode to lchan_activate_for
  * lchan and assignment FSMs: make Channel Mode Modify more sane
  * assignment_fsm: tweak error log msg for mixed modes
  * handover_test: ack release only when lchan is still waiting
  * hodec2: remove code dup of rxlev averaging
  * handover_test: add bspower to meas-rep cmd
  * add test_bs_power.ho_vty to show BS Power HO oscillation
  * assignment_fsm: send BSSMAP response only after Assignment Request
  * cosmetic scoping in reuse_existing_lchan()
  * potential segfault: vty chan act: do not set AMR bits for EFR
  * make sure channel mode and s15_s0 are updated only after an ACK
  * remove special case from assignment_count_result()
  * eliminate lchan->rsl_cmode
  * move lchan->csd_mode into channel_mode_and_rate
  * AMR config cleanup step 1: split lchan_mr_config()
  * AMR config cleanup step 2: filter modes also for VTY
  * AMR config cleanup step 3: generate AMR LV on msg composition
  * handover dot charts: fix wrong transitions regarding MGW
  * handover_test: fix naming/wording: 'handover-req' should be 'handover-cmd'
  * assignment_fsm: tweak state transitions (prep for reassignment)
  * assignment_fsm: allow assignment to a specific lchan
  * vty: actually trigger Assignment for 'assignment', not HO
  * hodec 2: do intra-cell congestion resolution by Assignment
  * RSL link: explicitly select rsl_link based on lchan
  * add chan_mode_to_chan_type()
  * gsm48_lchan2chan_desc(): expose TSC as param
  * allow explixit TSC Set and TSC on chan activ / modif / assignment
  * VTY: dump TSC Set and TSC for each timeslot
  * add fields to reflect nr of lchans in ts struct
  * replace ts_*_for_each_lchan() with ts_for_n_lchans()
  * ensure chan_mode comparisons in non-VAMOS mode
  * lchan_fsm: introduce lchan.modify.ch_mode_rate to allow tweaking
  * Drop duplicated arfcn_range_encode.c available in libosmocore
  * fixup for Mode Modify TSC
  * fix rc handling in channel_mode_from_lchan()
  * drop unused func decl gsm_lchan_as_pchan2chan_nr()
  * handover: apply meas report BS Power to RXLEV, fix ho oscillation
  * change bs_power to bs_power_db
  * meas rep logging: replace a dozen DEBUGPC() with one DEBUGP()
  * meas rep logging: use log_check_level() to skip a logging loop
  * fixup: pass tsc = -1 for previous default training sequence code
  * hodec2: add handover_test cases for upgrade of TCH/H -> TCH/F
  * cosmetic prep: hodec2: move is_upgrade_to_tchf() further up
  * hodec2: fix is_upgrade_to_tchf() for requirement A
  * allow mode modify when RTP stream is active
  * implement Channel Mode Modify to VAMOS mode
  * vty: add lchan modify '(vamos|non-vamos)' command
  * add lchan->vamos.is_secondary flag
  * vty-test: osmo-bsc.vty: test doc of lchan activate cmd
  * lchan_fsm: introduce lchan.activate.ch_mode_rate to allow tweaking
  * add missing AMR config for RTP activation after mode modify
  * implement CHANnel ACTIVate to VAMOS mode
  * RR Assignment for VAMOS: send TSC Set
  * add VAMOS secondary lchans to timeslot struct
  * update the lchan name to always reflect VAMOS shadowness
  * rsl_lchan_lookup(): turn cbits if-cascade into a switch()
  * rsl_lchan_lookup(): add comment explaining ts_is_capable_of_pchan()
  * RSL chan_nr: replace OSMO_ASSERT with error handling
  * RSL: rx and tx VAMOS Channel Number cbits for VAMOS lchans
  * VTY: 'show lchan': show that lchan is in VAMOS mode
  * VTY: add 'vamos-subslot' to activate a secondary lchan
  * VTY: add lchan re-assignment command
  * log: assignment_fsm: drop newline from assignment_fail
  * log: assignment_fsm: tweak err msg for incompatible chan
  * clarify bts_chan_load
  * get_any_lchan(): reduce minor code dup
  * cosmetic loop simplification in gsm48_multirate_config()
  * RSL: set default TEI according to TRX number
  * lchan_fsm: lchan_fail() strings should not have a terminating newline
  * gsm_data.h: add comments about immutable activ/modif/assign request info
  * hodec2: implement upgrade TCH/H -> TCH/F (without AFS bias)
  * fixup for vamos: fix wrong cbits in rsl_lchan_lookup()
  * vty: reassign: add missing check for valid target lchan
  * hodec2: don't apply AFS bias to same-cell lchans
  * rsl_data_request() check lchan pointer before access
  * rsl_lchan_lookup: drop redundant condition
  * rewire build_encr_info() to return errors
  * dissolve gsm0808_cipher_mode() into bssmap_handle_cipher_mode()
  * implement A5/4 in Ciphering Mode procedure
  * support A5/4 in inter-BSC Handover
  * use osmo_select_shutdown to get rid of SIGTERM sleep
  * vty: allow 5 encryption algo entries
  * hodec2: add test case showing low rxlev tch/h<->tch/f oscillation
  * hodec2: add test case showing low rxqual tch/h<->tch/f oscillation
  * handover_decision_2.c: add is_low_rxlev()
  * hodec2: fix low rxlev tch/h<->tch/f oscillation
  * handover_decision_2.c: add current_rxqual()
  * hodec2: fix low rxqual tch/h<->tch/f oscillation
  * vty: fix doc: default value for 'nri bitlen'
  * vty: add vty doc test for 'nri null' commands
  * hodec2: [1/2] implement automatic choice between FULL and SUBSET measurements
  * hodec2: [2/2] implement automatic choice between FULL and SUBSET measurements
  * hodec1: use same automatic FULL/SUBSET choice as in hodec2
  * lchan: call reset() upon alloc
  * RES IND: parse msg and store interference levels in lchans
  * RES IND: add VTY: bts / channel allocator avoid-interference (0|1)
  * RES IND: add test_resource_indication.ho_vty
  * RES IND: pick lchan with least interference
  * ensure trigger_ho() returns zero only when HO or AS was indeed triggered
  * handover_test: also show when an lchan is busy
  * switch handover penalty timers to CLOCK_MONOTONIC
  * handover_test: add fake-time 'wait'
  * test_penalty_timer.ho_vty: show lchan recovery
  * handover tests: test passing of penalty timeout
  * hodec2: add low-rxqual-assignment penalty timer (1/2)
  * hodec2: add low-rxqual-assignment penalty timer (2/2)
  * separate 'interference-meas level-bounds' cfg and used
  * vty 'interference-meas level-bounds': explain duality in ordering
  * add test_dyn_ts_favor_static_ts_as_target.ho_vty
  * extend test_dyn_ts_favor_half_used_tch_h_as_target.ho_vty
  * RES IND: allow empty Resource Information IE
  * RES IND: tweak error code on missing Resource Information IE
  * fix CM Re-Establishment Request: allocate new A conn
  * log: fix missing newline in lchan_select.c
  * debug log: indicate change of primary lchan on a conn
  * vty: lchan deact: allow omitting the lchan type arg
  * vty: improve err msg for invalid subslot nr
  * coverity: quench null deref warning in gscon_change_primary_lchan()
  * lchan_fsm_post_activ_ack(): return upon release
  * introduce gsm48_lchan_and_pchan2chan_desc()
  * error log: improve lchan lookup error msg
  * early IMM ASS 1/n: add vty config option
  * early IMM ASS 2/n: implement 'pre-chan-ack'
  * early IMM ASS 3/n: implement 'pre-ts-ack'
  * stat_item desc: add explicit indexes for clarity
  * vty: add "msc N bssmap reset" command
  * move BSC level stats and rate counters to new bsc_stats.[hc]
  * add stat items bsc.0.num_msc:connected, .num_msc:total
  * add stat_items for BTS and TRX connection stati
  * fixup for Early IMM ASS: use proper TSC
  * add CTRL 'rf_states' and 'bts.N.rf_states'
  * add CTRL bts.N.trx.M.rf_locked (RW)
  * fixup comments for 'rf_states' CTRL command
  * fix comment in lchan_fsm.c: s/modification/activation
  * fix TSC / TSC Set used for Handover
  * tsc fixup: tweak condition for coverity
  * drop obsolete comment
  * stat: add bts.N.num_trx:total
  * stat: add bts.N.num_trx:rsl_connected
  * constify lchan_state_is()
  * add chreq:successful_<reason> rate counters
  * drop unused gsm48_tx_mm_serv_ack()
  * for linter: s/while(0)/while (0)
  * cosmetic tweaks on handover counting code
  * tweak intra-bsc ho counter descriptions
  * implement incoming_intra_bsc_ho:* rate counters
  * refactor lchan counting
  * add time_cc API: cumlative counter for time, reported as rate_ctr
  * implement all_allocated:{sdcch,tch} rate counters
  * implement all_allocated:{static_sdcch,static_tch} rate counters
  * implement bts.N.cm_serv_rej:<cause> rate counters
  * move time_cc to libosmocore osmo_time_cc

  [ Keith ]
  * Ignore CHANnel ReQuireD with Access Delay IE > 63
  * Fix MEAS parsing, as Ericsson RBS reports TA shifted by 2 bits.
  * Add vty command to manually force MS Uplink Power
  * Implement MS Uplink Power Control Loop

  [ Vadim Yanitskiy ]
  * [hopping] vty: ensure no duplicate hopping ARFCN entries
  * [hopping] generate_cell_chan_list(): make some pointers const
  * [hopping] gsm48_send_rr_ass_cmd(): use Cell Channel Description from SI1
  * [hopping] generate_ma_for_ts() returns no meaningful value
  * abis_nm: rework warnings about unknown / not supported features
  * abis_nm: cosmetic: use osmo_bts_feature_name()
  * [hopping] Rework generation of Cell/Mobile Allocation
  * [hopping] bootstrap_rsl(): do not call generate_ma_for_ts() again
  * vty: deprecate BTS type 'sysmobts' in favor of 'osmo-bts'
  * Replace all references to 'sysmobts' with 'osmo-bts'
  * VTY: fix NULL-pointer dereference in lchan_act_single()
  * bts_uptime(): do not spam logs with 'OML link uptime unavailable'
  * Make interference measurement parameters configurable
  * VTY: fix typo in a command description: s/send/sent/
  * PCUIF protocol: add message definition for interference report
  * abis_rsl: fix rsl_rx_ccch_load(): properly check the message length
  * gsm_data.h: remove declaration of non-existing ts_pchan()
  * power_control: omit BS Power Parameters IE if the maximum is 0 dB
  * power_control: implement BCCH carrier power reduction operation
  * power_control: constrain BS power reduction on BCCH carrier
  * lchan_fsm: fix potential NULL-pointer dereference
  * gsm_04_08_rr: silently ignore RR UTRAN Classmark Change
  * rsl_rx_resource_indication(): check result of rsl_tlv_parse()
  * rsl_lchan_lookup(): fix handling of ABIS_RSL_CHAN_NR_CBITS_OSMO_PDCH
  * [overpower] VTY: cosmetic: fix lower case in command description
  * [overpower] VTY: fix copy-pasted warning message
  * [overpower] VTY: add more ACCH overpower related parameters
  * [overpower] Add VTY transcript tests for all commands
  * .gitignore: also ignore *.la files
  * .gitignore: remove non-existing ipaccess-firmware binary
  * lchan_fsm: cosmetic: move a 'case' below the 'default' branch
  * rsl_tx_chan_activ(): fix manual channel activation for nanoBTS
  * abis_rsl: do not pass lchan to print_meas_rep_buf()
  * abis_rsl: print_meas_rep_{buf,uni}() accept const *mr
  * abis_rsl: permit simultaneous ACCH repetition and overpower
  * ipaccess-config: reduce verbosity of the OML logging
  * ipaccess-config: fix wrong flag name in ipa_nvflag_strs[]
  * ipaccess-config: warn about unknown flag name
  * doc/manuals: add documentation for interference reporting
  * gsm_data: use ascending order for interference boundaries
  * doc/manuals: add documentation for Temporary ACCH Overpower
  * doc/manuals: fix wrong CI in the inter-BSC handover diagram
  * tests/Makefile.am: do not try removing non-existing files
  * abis_rsl: simplify checking if channel mode is AMR
  * abis_rsl: cosmetic: fix coding style rep_acch_cap_for_bts()
  * bts_vty: fix tabs-vs-spaces issues in cfg_bts_rep_dl_facch
  * struct gsm_bts: simplify comments for ACCH repetition/overpower
  * struct gsm_bts: s/repeated_acch_policy/rep_acch_cap/g
  * struct gsm_bts: s/temporary_overpower/top_acch_cap/g
  * abis_rsl: {rep,top}_acch_cap_for_bts(): make *lchan const
  * abis_rsl: s/*_acch_cap_for_bts/put_*_acch_cap_ie/g
  * [overpower] Allow configuring specific channel mode(s)
  * [overpower] By default, permit only for speech channels using AMR

  [ Alexander Chemeris ]
  * stats: Count transitions from BORKEN state due to LCHAN_EV_TS_ERROR signal.

  [ Pau Espin Pedrol ]
  * cosmetic: Fix typo in func description
  * bssap: pass whole tlv_parsed to event GSCON_EV_A_COMMON_ID_IND
  * Send EUTRAN neighs based on whether Common Id msg contained Last used E-UTRAN PLMN ID
  * Revert "update neighbor ARFCNs on startup and config changes"
  * SRVCC: Parse Last Used E-UTRAN PLMN Id in Handover Request
  * SRVCC: Forward Last EUTRAN PLMN Id in Handover Required
  * osmo-bsc: Avoid erroring every few secs about unconnected BTS
  * Fix bts->description field not printed in config write
  * ipaccess-config: Clean up sign_link setup helper
  * bsc: Clean up TS selection in ipaccess_sign_link_up/down
  * bsc: Use osmo_clock_gettime everywhere
  * ctrl: Introduce CTRL SET cmd to apply VTY cfg file
  * ctrl: Avoid fclose() on NULL pointer
  * Use new stat item/ctr getter APIs
  * vty: Drop unused old node enum fields
  * Introduce VTY command to disable srvcc fast-return on target BTS
  * Introduce counters to track SRVCC procedures
  * pcuif_proto.h: Add new container messages
  * Support proto IPAC_PROTO_EXT_PCU BSC<->PCU
  * lchan-select: Avoid setting variable for no reason
  * assignment_fsm: Fix null pointer dereference rx ASSIGNMENT_EV_LCHAN_ERROR
  * assignment_fsm: Add assert to guard ptr access
  * Rename osmo dyn ts enums to contain SDCCH8
  * Support SDCCH8 in osmo dyn ts
  * lchan_fsm: Allow rx LCHAN_EV_RLL_REL_IND in WAIT_RF_RELEASE_ACK
  * doc: bts.adoc: Update dyn ts section to include SDCCH8 support
  * lchan_fsm: Improve timeout logging line in state WAIT_RLL_RTP_ESTABLISH
  * Avoid switching dyn ts to sdcch8 if it starves later TCH
  * cosmetic: Small improvements to _select_sdcch_for_call
  * Add new lchan_select_set_type() API helper
  * _select_sdcch_for_call: Avoid 2nd lchan lookup when finally selecting it
  * lchan_fsm: Allow rx LCHAN_EV_RLL_REL_IND in state BORKEN
  * abis_rsl: Log chan rqd reason on resource exhaustion log message
  * Fix recent regression in CHREQ allocation
  * Split bsc_vty.c creating bts_vty.c
  * Split bts_vty.c creating bts_trx_vty.c
  * Introduce libbsc to avoid linking long lists of .o files
  * Introduce VTY option to forbid use of TCH for non-voicecall signalling
  * Clarify string name for GSM_CHREQ_REASON_CALL
  * doc: Improve ACC ramp documentation
  * doc: manual: Fix typo in text
  * vty: Fix wrong TSC sent when activating lchan through VTY
  * vty: Fix wrongs params passed in vty warning message
  * cosmetic: power_ctrl_params_def: Fix typo in comment
  * doc: power_control.adoc: Improve VTY snippet foot notes
  * MS Power Control Loop: Support set up of C/I parameters for osmo-bts
  * doc: power_control.adoc: Add small time graph showcasing P_CON_INTERVAL
  * lchan_fsm: Fix comment
  * lchan_fsm: Fix comment
  * lchan_fsm: Avoid inheriting bs_power from old lchan
  * Support Neighbor Address Resolution over PCUIF IPA multiplex
  * Power Control Loop: Set P_CON_INTERVAL to 1 by default
  * MS Power Control Loop: Support turn off C/I based logic
  * bts_vty: Print C/I power params for osmo-bts only
  * MS Power Control Loop: Allow Turn off/on C/I independent from value setting
  * cosmetic: fix comment typos in signal.h
  * cosmetic: Fix typo in comment
  * MS Power Control Loop: Use P_CON_INTERVAL=2 by default
  * bts_trx: Fix timeslot_fsm not properly freed during trx free() [1/4]
  * Move global var bsc_gsmnet into libbsc [2/4]
  * Move ts_fsm_init to static constructor [3/4]
  * Get rid of lots of stubs [4/4]
  * nm_channel_fsm: drop ipa link if SetChannelAttr fails
  * gitignore: Fix typo
  * jenkins.sh: Fix typo
  * Set subslots_per_pchan[GSM_PCHAN_OSMO_DYN] = 8
  * timeslot_fsm: Add assert to make sure we never go out of bounds in ts->lchan array
  * Set subslots_per_pchan_vamos[GSM_PCHAN_OSMO_DYN] = 0
  * assignment_fsm: Log modified lchan in assignment_fsm_allstate_action()
  * lchan_fsm: Fix possible NULL ptr dereference in _lchan_on_mode_modify_failure()
  * Properly handle dyn TS TCH with vamos after updating subslots_per_pchan

  [ Michael Iedema ]
  * stats: add BTS uptime counter

  [ Philipp Maier ]
  * bts.adoc: fix typo BGSGP -> BSSGP
  * handover_cfg: add missing VTY_CMD_PREFIX in comment
  * bsc_ctrl_commands: add command to write vty config
  * control.adoc: add doc for apply-config-file
  * bsc_vty: add vty option to allow call-reestablishment
  * handover_ctrl: add control interface for handover settings
  * running.adoc: explain mgw reset-endpoint VTY setting
  * osmo_bsc_main: remove unused commandline option -l
  * bty_vty: add VTY settungs for temporary overpower
  * osmo_bsc_main: integrate MGW pooling into osmo-bsc
  * osmo_bsc_msc: do not initalize MGCP proxy for AoIP MSCs
  * doc/mgwpool: update documentation
  * assignment_fsm: make assignment_fsm_timer_cb static
  * assignment_fsm: make assignment_fsm_allstate_action static
  * assignment_fsm: Check for conn->lchan
  * osmo_bsc_main: remove code dup in bootstrap_bts()
  * bts: set R99 MSC flag in SI13 in bts_alloc
  * bts: set pwrc value in bts_alloc
  * bts: set acs value in bts_alloc
  * drop chan_load_samples_idx initalization from bootstrap_bts()
  * bts: set ncc_permitted from bts_alloc
  * osmo_bsc_main: remove not longer needed fixme note
  * osmo_bsc_main: remove unused option -t --testmode
  * bsc_subscr_conn_fsm: fix mgw-pool ref counting
  * neighbor_ident: add comment about Neighbor Address Resolution Service
  * control.adoc: improve description of command bts.N.send-new-system-informations
  * heighbor_ident: add/del neighbor cells via ctrl interface
  * bsc_ctrl_commands: change neighbor-list mode/arfcn via control interface
  * control.adoc: comment out fixme note
  * osmo_bsc_main: bootstrap_bts: print errornous ARFCN number
  * osmo_bsc_main: separate checks from bootstrap_bts
  * osmo_bsc_main: move inp_sig_cb() below check_bts and bootstrap_bts
  * osmo_bsc_ctrl: make sure strtok results are checked
  * osmo_bsc_main: call bootstrap_bts when OML TEI comes up
  * osmo_bsc_main: move generate_ma_for_bts() into bootstrap_bts()

  [ Eric ]
  * vty: allow A5/4 encryption in config

  [ Daniel Willmann ]
  * bts: Clear BTS_STAT_CHAN_*_{TOTAL,USED} on bts disconnect

 -- Pau Espin Pedrol <pespin@sysmocom.de>  Tue, 16 Nov 2021 17:21:59 +0100

osmo-bsc (1.7.0) unstable; urgency=medium

  [ Harald Welte ]
  * Introduce nm_fail_rep_signal_data for "SS_NM, S_NM_FAIL_REP" signal
  * OM2000: Add some more message types and IEs we now understand
  * remove 'NAT' log category
  * handorer.h: Fix compilation with gcc-10
  * gsm_data.h: Comment the 'nokia' BTS fields
  * bts_nokia_site: Fix LAPD segfault during reset procedure
  * [cosmetic] system_information: Values are not guesses; more comments
  * bs11_config: Print "Not Equipped" for MBCCU (TRX) that don't exist
  * Count RSL DELETE INDICATION received from BTS
  * system_information: Set BSS_PAGING_COORDINATION in SI13 for osmo-bts
  * vty/bts_resend_cmd: Use gsm_bts_set_system_infos() to increment changemark
  * osmo-bsc.spec.in: Use %config(noreplace) to retain current config file
  * abis_nm: Avoid various "Unhandled message" errors on BS-11 startup
  * Bring timeslot FSMs on BS-11 out of NOT_INITIALIZED state
  * Don't print 'bogus channel load sample' message if total == 0
  * bts_nokia_site: Clean up logging
  * Add example configuration files for E1 BTS
  * remove examples/osmo-bsc/ericsson/osmo-bsc.cfg
  * osmo-bsc.spec.in: Package E1 config files
  * osmo-bsc.spec.in: Add missing directories to package
  * debian: Package E1 configuration file examples
  * lchan_fsm: silently ignore LCHAN_EV_RLL_ERR_IND
  * Add example config files for Ericsson DUG20 based BTS
  * acc.c: Don't use C99 constructs, this breaks builds on Debian 8
  * BS-11: Fix "CONNECT TERRESTRIAL TRAFFIC"
  * Implement support for receiving BSSMAP CommonID from MSC
  * osmo_bsc_sigtran.c: Remove unused #defines
  * use osmo_fd_setup() whenever applicable
  * debian/control: Recommend installation of osmo-mgw
  * Use osmo_fd_*_{disable,enable}
  * fix some size-t format string characters
  * update aoip-mgw-options document with reality of 2020
  * abis_om2000: Force TRX NM state to UNLOCKED once TRX is up
  * osmobsc-usermanual: Add Chapter with AoIP message flow examples
  * OM2K: Permit transition from WAIT_CONF_RES -> WAIT_ENABLE_ACCEPT
  * OM2K: Skip the entire CON MO if there are no connection groups
  * Add a bts_model->bts_init() and trx_init() call-back function
  * abis_om2000: make om2k_mo_name() an exported function
  * [cosmetic] abis_om2000: Re-format to use longer lines
  * abis_om2000: Mark om2k_mo_fsm_start() as static
  * abis_om2000: keep OM2K FSMs around, don't terminate
  * om2000: Add "show bts 0 om2k-mo" command
  * abis_om2000: Handle DP object in get_om2k_mo()
  * smscb: Avoid scheduler array overflow
  * smscb: Fix adding of SMSCB messages when no message with lower period exists
  * select_best_cipher(): Prefer A5/1 over A5/2
  * BS-11: Send proprietary MRPCI message after assignment + HO complete
  * hide the "smscb-command" vty command; people should use osmo-cbc
  * CBSP: document rate counters and their mapping to basic/extended CBCH

  [ Philipp Maier ]
  * bsc_main: use higher default loglevels.
  * lchan_rtp_fsm: fix out_state_mask
  * vty: check with is_ipaccess_bts() before using IPACC
  * lchan_rtp_fsm: make _fsm_timer_cb and _fsm_cleanup static
  * lchan_rtp_fsm: use E1 endpoints if the BTS is not ipaccess type
  * e1: encode line number as trunk number in MGCP endpoint
  * gsm_04_08_rr: block EMERGENCY SETUP when EMERGENCY CALLS are denied
  * abis_rsl.c: make sure emergency calls are rejected early
  * lchan_fsm: merge lchan_mr_config()
  * lchan_fsm: make internal functions static.
  * lchan_fsm: make rsl mode-modify working again
  * abis_rsl: prioritize emergency calls over regular calls
  * abis_rsl.c: flush channel request queue on RSL bootstrap
  * abis_rsl: inform user when expired channel requests get tossed
  * abis_rsl: fix memleak in rach dos reduction function
  * bsc_vty: improve manual activation of lchans (debug / labtest)
  * bsc_vty: fix manual channel activation
  * bsc_vty: fix wrong else-if statement
  * gsm_08_08: fix unreachable code in parse_powercap()
  * osmo_bsc_bssap: actually check for lchan
  * bts: add repeated acch mode flags + vty config
  * abis_rsl: parse cm3 and indicate ACCH repetition cap to BTS
  * bsc_vty: mark repeated ACCH value of 1.9% to 2.7% BER as default
  * bsc_vty: fix acch_repetition ber threshold strings
  * abis_rsl: check if emergency calling is disabled before premption
  * bsc_vty: mark repeat rxqual 4 (BER >= 1.6) as default
  * bts.adoc: describe ACCH repetition settings

  [ Vadim Yanitskiy ]
  * VTY: fix writing of custom timer values to a configuration file
  * vty: fix: restore removed DNAT category as deprecated
  * doc/manuals: remove deprecated DNAT from the VTY reference
  * rest_octets: cosmetic: fix alignment in gprs_cell_options
  * vty: 'gprs 11bit_rach_support_for_egprs': drop redundant check
  * vty: 'gprs 11bit_rach_support_for_egprs': clarify error message
  * vty: clarify EGPRS Packet Channel Request message support
  * A-bis: fix logging level mismatch in abis_nm_rcvmsg_fom()
  * bsc_subscr_find_or_create_by_{imsi,tmsi}(): fix NULL pointer dereference
  * doc/manuals: regenerate the VTY reference file
  * gsm_data: cosmetic: mark argument of is_*_bts() as const
  * bts_unknown: fix: properly initialize the feature vector
  * bts_sysmobts: fix: properly zero-initialize the feature vector
  * bsc_bts_alloc_register(): fix possible NULL-pointer dereference
  * handover_test: use 'unknown' BTS type instead of 'sysmobts'
  * abis_nm: cosmetic: add curly braces to complex 'if' statements
  * abis_nm: cosmetic: use sizeof() for printing buffer size
  * abis_nm: fix: properly truncate feature vector reported by BTS
  * abis_nm: fix ARFCN list encoding in Set Channel Attributes
  * abis_nm: fix length indicator in Set Channel Attributes
  * fix crashes due to OSMO_ASSERT(conn->lchan)
  * abis_rsl: Mobile Allocation IE in CHANnel ACTIVation shall be empty
  * system_information: publicly declare generate_cell_chan_list()
  * system_information: constify bitvec in freq. list encoding API
  * generate_ma_for_ts(): constify per cell/timeslot ARFCN bit-vectors
  * gsm_04_08_rr: fix hopping parameters in RR Assignment Command
  * doc/examples: remove deprecated 'dyn_ts_allow_tch_f'
  * vty: ensure that all warning messages are prefixed with '%%'
  * vty: fix missing comma in a warning message
  * vty: introduce and use GPRS_CHECK_ENABLED() macro
  * vty: allow enabling freq. hopping regardless of the feature vector
  * debian/control: change maintainer to the Osmocom team / mailing list
  * vty: fix copy-pasted 'no gprs control-ack-type-rach' description
  * fix bsc_sapi_n_reject(): dlci is unsigned, use uint8_t
  * bsc_subscr_conn_fsm: fix a memleak in rll_ind_cb()
  * bsc_subscr_conn_fsm: use proper cause values in SAPI N REJECT
  * abis_rsl: fix IAR Rest Octets in rsl_send_imm_ass_rej()
  * vty: add a command to clear hopping ARFCN list
  * gsm_04_08_rr: fix hopping parameters in RR Handover Command
  * SI Type 4: fix missing CBCH Mobile Allocation IE
  * generate_ma_for_ts(): use OSMO_BYTES_FOR_BITS() macro
  * generate_ma_for_ts(): fix: properly encode ARFCN 0 (corner case)
  * SI Type 4: prevent potential buffer overflow
  * vty: propagate result of gsm_bts_set_system_infos()
  * fix bootstrap_rsl(): check result of gsm_bts_trx_set_system_infos()
  * abis_om2000: check result of gsm_bts_trx_set_system_infos()
  * vty: clarify NM state owner printed by 'show trx N' command
  * abis_nm: fix erroneous use of LOGPC() instead of LOGP()
  * abis_nm: fix msgb memleak in _abis_nm_sendmsg()
  * abis_nm: LOGPFOH()/DEBUGPFOH(): remove redundant context info
  * abis_nm: abis_nm_get_ts(): use LOGPFOH() instead of generic LOGP()
  * abis_nm: use btstype2str() in abis_nm_rcvmsg_manuf()
  * abis_nm: use DEBUGPFOH() in abis_nm_rx_sw_act_req()
  * abis_nm: use LOGPFOH()/DEBUGPFOH() in parse_attr_resp_info_unreported()
  * abis_nm: improve logging message in abis_nm_get_attr()
  * generate_ma_for_ts(): simplify MA bit-mask computation
  * vty: fix unreacheable code / wrong check in lchan_act_all_trx()
  * RSL/BSSAP: fix: properly convert between RSL Link ID and DLCI
  * vty: add attributes to VTY commands indicating when they apply
  * bts: move rate counter / stat item definitions from *.h to *.c
  * main: add --vty-ref-mode, use vty_dump_xml_ref_mode()
  * vty: add reminder messages about the radio link timeout
  * gsm_08_08: fix NULL pointer dereference in bsc_cm_update()
  * NM FSMs: fix DISABLED_NOTINSTALLED -> DISABLED_NOTINSTALLED
  * vty: add new attribute for vendor-specific commands
  * abis_rsl: turn rsl_msgb_alloc() a macro and move it to header
  * power_control: add new structures and default parameters
  * power_control: add encoding/init API to 'struct gsm_bts_model'
  * power_control: send default parameters from bootstrap_rsl()
  * power_control: add encoder for ip.access nanoBTS and OsmoBTS
  * power_control: make use of MS/BS parameters in RSL messages
  * power_control: add VTY commands for per-BTS configuration
  * power_control: add VTY command for re-sending default parameters
  * power_control: add VTY command to set static / maximum BS Power
  * power_control: reflect MS/BS Power difference in the VTY prompt
  * vty: cosmetic: make all 'struct cmd_node' definitions static
  * power_control: encoding of H_REQAVE and H_REQT for ip.access
  * power_control: fix swapped lower/upper RxQual threshold values
  * power_control: enable dynamic MS power control for osmo-bts
  * power_control: vty: some commands are not vendor specific
  * vty: fix NULL-pointer dereference in cfg_bts_rep_dl_facch()
  * power_control: vty: do not print 'no (rxlev-avg|rxqual-avg)'
  * vty: join UL/DL SACCH repetition commands together
  * vty: fix wrong attributes for UL/DL ACCH repetition commands
  * ericsson_rbs2000: fix unreachable code in inp_sig_cb()
  * power_control: add documentation on available configuration params
  * manuals: fix a duplicate line in the description of DTXu
  * manuals: fix a typo: s/DTS/DTX/
  * power_control: cosmetic changes and fixes to the documentation
  * power_control: add increase / reduce step size recommendations
  * vty: use 'const' for *nsvc in config_write_bts_gprs()
  * vty: fix writing empty IP address for unconfigured NSVCs
  * power_control: fix: properly initialize per-lchan BS power
  * vty: fix 'codec-list' command: check all given arguments first
  * gsm_data: return early if MS Power class remains the same
  * assignment_fsm: assert the result of conn_get_bts()
  * power_control: check BTS model in cfg_power_ctrl_avg_osmo_ewma()
  * power_control: enable Uplink DPC by default if format is known
  * power_control: make P_CON_INTERVAL parameter configurable
  * abis_nm: enrich debug messages with contextual info

  [ Pau Espin Pedrol ]
  * bssap: Avoid logging error if no optional Global Call Ref IE received
  * bsc: Allow setting negative nominal tx power through VTY
  * Avoid selecting channels from administratively locked trx
  * bsc_main: Improve log line on Lost E1 link
  * bsc_main: Use LOG_TRX in log line
  * ipaccess_sign_link_up: Log sign_link type
  * Use OSMO_FD_* instead of deprecated BSC_FD_*
  * gsm_data.h: Drop duplicated include stdint.h
  * Fix trailing whitespace in several files
  * ipaccess_nanobts: Log ipaccess_sign_link_down event
  * Move struct gsm_bts: gsm_data.* => bts.*
  * bts: Drop duplicated function to get trx by number
  * Move struct gsm_bts_trx: gsm-data.* => bts_trx.*
  * Move gsm_bts_{trx_}set_system_infos APIs to bts{_trx}.*
  * Move acc_ramp_init inside gsm_bts_alloc
  * configure.ac: Fix trailing whitespace
  * doc: Copy {bsc,bts}.adoc from osmo-gsm-manuals
  * {bts,bsc}.adoc: Drop deprecated OsmoNITB references
  * rename files acc_ramp.* -> acc.c*
  * Introduce support for ACC subset rotation
  * Introduce support for ACC ramping during whole BTS life cycle
  * Support setting rt-prio and cpu-affinity mask through VTY
  * Change default SCTP conn NULL->127.0.0.1 to localhost->localhost
  * ctrl: Fix CTRL TRAP for {msc.X,msc_)connection_status not sent
  * acc_test: Print allowed ACC from t2 and t3
  * acc: Fix ACC rotate barring highest ACCs too quickly during wraparound
  * tests: acc_test: Test more rotating scenarios
  * Allow storing IPv6 address strings in BSSAP structs
  * vty: Hide show running-config ACC ramping params if not enabled
  * Fail on invalid IP addresses passed to IPACC MDCX
  * Fix creating MGCP proxy socket if MGW listens on an IPv6 address
  * lchan_rtp_fsm: Deferr IPACC MDCX after BTS side MGCP MDCX
  * oml: Fix premature Opstart to Radio Carrier
  * bssap: Use new DTAP DLCI helper fields from libosmocore
  * abis_nm: Log Rx Change Administrative State ACK
  * abis_nm: Log no state change detected
  * abis_nm: Remove duplicated log line
  * cosmetic: tests/ctrl_test_runner.py: Fix trailing whitespace
  * ipa oml: tx OPSTART after unlocking, not before
  * contrib/jenkins: Enable parallel make in make distcheck
  * Set all NM OML objects to Locked by default
  * Introduce NM BTS Site Manager FSM
  * Introduce NM BTS FSM
  * Introduce NM BaseBand Transceiver FSM
  * Introduce NM RadioCarrier FSM
  * Introduce Radio Channel FSM
  * OML: Stay compatible with older osmo-bts versions
  * abis_nm: Log Opstart NACK with error loglevel
  * ipa: Fix use of null pointer in log macro
  * nm_channel_fsm: Fix innocuous transition not permitted log error
  * main: generate coredump and exit upon SIGABRT received
  * ipaccess-proxy: generate coredump and exit upon SIGABRT received
  * Store GPRS MOs directly under BTS SiteMgr object
  * nm_bts_sm_fsm: Fix peer_has_no_avstate_offline not applied for nanobts
  * Introduce NM GPRS NSE FSM
  * Introduce NM GPRS CELL FSM
  * abis_nm: Simplify param passing to abis_nm_rx_get_attr_resp()
  * Handle BTS/BBTRANSC Get Attributes (Ack) in NM FSMs
  * Fix typo in function nanobts_attr_nsvc_get
  * oml: Delay configuring NSVC until BTS features are negotiated
  * gsm_lchan_name: assert on NULL lchan
  * Use rest_octets functionalities from libosmocore
  * gitignore: Ignore *~
  * doc: handover: Fix malformed table
  * Introduce Neighbor Resolution Service
  * cosmetic: doc: wrap line too long
  * cosmetic: bts-sysmo: Fix whitespace indentation
  * Allow configuring SI13 CCN_ACTIVE bit from VTY, enable by default on osmo-bts
  * Introduce VTY cmd to configure Alpha in SI13
  * Move bts_ident_key to neighbor_ident.c
  * Fix neigh resolution service on local neighbours
  * SI13: Enable sending GPRS Cell Options Extension Information on GPRS-only BTS
  * tests: Explicitly drop category from log
  * tests: Replace deprecated API log_set_print_filename

  [ Oliver Smith ]
  * tests/Makefile.am: allow running only one VTY test
  * osmo-bsc/bsc_vty: set default gprs cell bvci to 2
  * osmo-bsc/bsc_vty: fail on get_amr_from_arg error
  * osmo-bsc-minimal.cfg: fix codec-list
  * main: exit on mutually exclusive codecs settings
  * abis_nm.c: rx_fail_evt_rep: fix sd.bts
  * abis_nm: move fail report parsing to extra func
  * VTY: add show bts failure report
  * VTY: let all descriptions end in \n
  * VTY: regenerate bsc_vty_reference.xml
  * timers: T->X: 23002, 23004, 23005, 23006
  * contrib: import RPM spec
  * contrib: integrate RPM spec
  * Makefile.am: EXTRA_DIST: debian, contrib/*.spec.in
  * lchan_fsm, lchan_rtp_fsm: make all timers configurable
  * contrib/jenkins: don't build osmo-gsm-manuals
  * configure.ac: set -std=gnu11

  [ Neels Hofmeyr ]
  * manual: add "Multiple Instances" section, akin to other manuals
  * manual: add SCCP/M3UA section from common chapters
  * manual: add SCCPlite section
  * manual: fix config example typo 'msc-addr'
  * manuals: update bsc_vty_reference.xml
  * deprecate 'msc' / 'ip.access rtp-base <port>'
  * cosmetic: put comment back at proper place in bsc_vty.c
  * drop IMSI filter and libfilter completely
  * drop CC 'local-prefix' feature
  * code cleanup: absorb complete_layer3() into bsc_compl_l3()
  * drop all BSC originated USSD notification features
  * doc/examples: remove deprecated ussd text config
  * drop MSC types "local" vs "normal"
  * flatten: move network->bsc_data->* to network->*
  * CTRL: determine MSC connection status from RESET-ACK, not AS_ACTIVE
  * create only one SCCP user per SCCP instance
  * cosmetic: tweak rc type of is_cm_service_for_emerg()
  * is_cm_service_for_emerg(): return false, not 0
  * gsm0408_test.c: drop test_mi_functionality()
  * refactor bsc_find_msc()'s round-robin
  * add osmo-bsc --vty-ref-xml: dump VTY ref XML to stdout
  * manuals: generate vty reference xml at build time
  * osmo-bsc main: exit on cmdline option error
  * remove extract_sub(), add bsc_subscr_find_or_create_by_mi()
  * use osmo_mobile_identity API everywhere
  * tweak log category for Compl L3 error
  * MSC pooling: make NRI mappings VTY configurable
  * MSC pooling: implement NAS node selection by NRI from TMSI
  * MSC pooling: LU: ignore TMSI NRI from a different PLMN
  * MSC pooling: add 'no allow-attach' for MSC off-loading
  * mscpool: add user manual chapter
  * vty: add 'mscpool roundrobin next' for ttcn3 tests
  * log: add MSC number to bsc_subscr_conn_fsm id
  * debug: log about matching Paging Response to earlier Paging
  * MSC pooling: add rate counters
  * merge files: absorb osmo_bsc_vty.c into bsc_vty.c
  * vty: hide 'mscpool roundrobin next'
  * fix segfault introduced by recent segfault fix
  * create ASP+AS only once per cs7 instance
  * si2quater: fix budget calculation for multiple EARFCNs
  * SI2quater: allow storing 48 EARFCNs
  * RR Release Cell selection IE: fix repeated EARFCNs encoding
  * RR Channel Release: pass Cause code from BSSMAP Clear to the BTS
  * propagate RSL error cause codes to RR Channel Release cause
  * fix CBSP server: actually open the srv_link
  * handover_test.c: add test case 29: TCH/F -> TCH/H
  * handover_test.c: typo s/more/less in test 19 description
  * hodec2: fix logging of requirements flags
  * hodec2 congestion: consider only congested pchan types
  * hodec2: do not keep candidates with zero requirements met
  * hodec2: log requirements of best candidate, log rxlev in dBm
  * cosmetic: bscon: use GSM48_RR_CAUSE_NORMAL instead of 0
  * gscon timeout: use proper cause code for lchan release
  * debug log: add RR Release cause code to the log
  * info, error log: show MSC nr for new conn
  * mscpool: fix refcount leak for unusual case of no bts
  * CBSP: on RESET, also clear the etws_timer, and stop ETWS PN broadcast
  * CBSP: log CBSP RESET on NOTICE
  * CBSP: rewrite the CBSP link setup and 'cbc' VTY section
  * CBSP: add local bind to client mode
  * cosmetic: use local var in handover_start_intra_bsc()
  * cosmetic: dissolve error-goto with single source in handover_start()
  * ho counters: count invalid target cell as 'error', not 'no_channel'
  * fix 'handover:*' counters: add missing / move increments
  * fix 'handover:*' counters: remove bogus increments
  * fix HO inter-BSC-IN target bts for counters
  * add {BTS,BSC}_CTR_INTER_BSC_HO_OUT_FAILED for RR HO Failure
  * bssap: do not send a Clear Request after a Clear Command
  * handover_fsm: signal Clear from gscon, for proper HO result counts
  * handover: fix detection for ambiguous HO neighbor ident
  * CBSP: fix link startup when enabled in config file
  * drop some unused members and function decls
  * CBSP: adjust manual to reflect new 'cbc' VTY config
  * CBSP VTY: re-add legacy cbc config for backwards compat
  * dissolve bsc_grace_paging_request()
  * drop bsc_subscr.lac
  * drop unused Tdef for 992427
  * add timer.vty
  * clean up timer definitions: introduce groups, move some T to X
  * tests: add missing *.vty to EXTRA_DIST
  * log MSC nr for opening new A conn
  * remove unused signature gsm48_handle_paging_resp()
  * gscon_bssmap_clear(): guard against NULL msc
  * compl l3: separate paging handling from bsc_scan_bts_msg()
  * compl l3: parse Mobile Identity once
  * compl l3: cosmetics around Create Layer 3
  * compl l3: allocate conn in gsm_08_08.c, not gsm_04_08_rr.c
  * compl l3: populate conn's bsc subscr from MI
  * compl l3: move Paging Response handling out of bsc_find_msc()
  * compl l3: move all message parsing out of bsc_find_msc()
  * refactor paging: introduce bsc_paging_params
  * refactor paging: introduce bsc_paging_start()
  * refactor paging: add bsc_subscr to bsc_paging_params
  * LCS: add paging reason, return in paging_request_stop()
  * introduce osmo_use_count for bsc_subscr
  * bsc_subscr_name: print both IMSI and TMSI
  * cosmetic: fix naming of GSCON_EV_A_CONN_REQ -> GSCON_EV_MO_COMPL_L3
  * LCS: implement re-use of existing A-interface conn
  * LCS: SCCP next conn id: prepare Lb-interface
  * LCS: implement the bulk of Location Services
  * LCS: allow RSL EST IND during GSCON_ST_ACTIVE
  * remove unused osmo_bsc_reset.h
  * add doc/location_services_ta.msc
  * BSSMAP RESET: generalize a_reset FSM
  * BSSMAP RESET: move cancel-paging call to osmo_bsc_sigtran_reset()
  * BSSMAP RESET: move RESET-ACK into reset fsm
  * BSSMAP RESET: tweak logging
  * BSSMAP RESET: also accept conn cfm events during ST_DISC
  * LCS: disable Lb interface by default, add vty 'smlc' / 'enable'
  * add smlc.vty test
  * LCS: add proper BSSMAP-LE RESET re-using new generalized reset FSM
  * LCS: Lb startup: no need to re-use existing SCCP user
  * drop features 'core-location-area-code' and 'core-cell-identity'
  * manual: describe LCS and Lb interface
  * fix missing RR release when there is no MSC
  * add fixme comment for OS#3833
  * minor code dup: smlc_set_cs7_instance()
  * handover vty doc: explain rxqual values
  * handover_test: fix comment
  * handover_test prep: move arfcn into create_bts()
  * handover_test prep: move generate_si() into create_bts()
  * handover_test prep: allow arbitrary timeslots in create_bts() code
  * handover_test prep: allow configuring several trx in create_bts()
  * handover_test prep: rename 'create-bts' to 'create-n-bts'
  * handover_test cosmetic: eliminate bts array and bts_num from main()
  * handover_test: allow arbitrary timeslot config and multiple TRX
  * handover test: fix dyn ts: set pchan_is on act / rel
  * handover test: add 'expect-ts-use' to clarify tests
  * handover_test: add 'set-ts-use'
  * handover_test: change 'meas-rep' params to bts-trx-ts-ss nr
  * handover_test: drop secondary array of lchans
  * handover test: add test 30: de-congest TCH/F by moving to dyn TS TCH/H
  * handover_test: add test 31: TCH/H: re-use dyn TS
  * fix TCH/H allocation: use half occupied dyn TS instead of switching more dyn TS
  * hodec 2: prep: common pick_better_lchan_to_move() function
  * hodec 2: favor moving dyn TS
  * handover test 30: play through filling up all lchans
  * handover_test: add test 32: half used TCH/H on dyn TS
  * fix AMR start-mode auto: reflect proper ICMI in MultiRate Config IE
  * AMR start-mode: send proper smod bits
  * AMR start-mode auto: send smod bits as zero
  * ctrl_test_runner.py: remove per-test startup delay
  * hodec 2: prefer moving TCH/H from half-used dyn TS
  * handover_test: implement as VTY shell
  * handover_test: log sending ho complete
  * handover_test: send ho detection
  * handover_test: adjust logging for reproducability
  * handover_test: set a fake osmo_mgcpc_ep_ci pointer
  * handover_test: rename test scripts from numbers to names
  * handover_test: gitignore
  * tweak handover_tests.sh
  * handover_test: cosmetic cfg simplifications in 5 tests
  * handover_test: fix test_congestion.ho_vty meas-rep
  * handover_test.c: properly release lchans in set-ts-use
  * hodec2: cosmetic: add dBm unit to rxval logging
  * hodec2: code dup / cosmetics
  * handover_test: add 'meas-rep repeat N'
  * handover_test: add test_congestion_favor_best_target_rxlev.ho_vty
  * handover_test: add AMR TCH/H->/F tests, showing a bug
  * handover_test: show ineffective intra-cell choice
  * handover_test: add test_congestion_intra_vs_inter_cell.ho_vty
  * hodec2: clarify current and target rxlev per candidate
  * hodec2: cosmetic: clarify afs_bias, simplify pick_better_lchan_to_move()
  * hodec2: fix candidate choices in congestion check
  * handover_test: include ack-chan in expect-chan
  * handover_test: safeguard against unhandled chan req
  * handover_test: saner chan act handling
  * handover_test: saner ho request handling
  * handover_test: vty echo
  * handover_test: show a bug: add test_congestion_no_oscillation.ho_vty
  * hodec2: cosmetic: clarify ho_candidate.{current,target}
  * hodec2: reduce check_requirements() args
  * hodec2: add ho_candidate.{current,target}.free_tch
  * handover_test: add lchan wildcards to meas-rep cmd
  * handover_test: show bug: add test_balance_congestion_tchf_tchh.ho_vty
  * hodec2: fix congestion oscillation bug
  * handover_test: add test_balance_congestion_by_percentage.ho_vty
  * hodec2: to balance congestion, use overload percent
  * handover_test: enhance test_balance_congestion_by_percentage.ho_vty
  * handover_tests.sh: update stdout/stderr only on capital -U arg
  * fix for test_dyn_ts_favor_moving_half_used_tch_h.ho_vty
  * cosmetic: in a ho test, use '*' instead of pdch
  * show bug: add test_dyn_ts_congestion_tch_f_vs_tch_h.ho_vty
  * fixate test_dyn_ts_congestion_tch_f_vs_tch_h.ho_vty
  * hodec2: fix congestion resolution on dyn TS
  * add test_dyn_ts_congestion_tch_f_vs_tch_h_2.ho_vty
  * lchan_avail(): omit logging for handover decision 2
  * show bug: add test_dyn_ts_balance_congestion.ho_vty
  * hodec2: fix congestion balancing on dyn TS
  * show bug: add test_dyn_ts_amr_tch_{f,h}_to_{h,f}_congestion_assignment_2.ho_vty
  * hodec2: fix intra-cell congestion balancing with source lchan on dyn TS
  * lchan assignment when RTP is set up: don't break on Mode Modify
  * rename lchan->rqd_ta to last_ta
  * lchan activation: indicate whether TA is known

  [ Keith ]
  * Meas Tools: Avoid OSMO_ASSERT due to uninitialised logging.
  * Meas Tools: Avoid unusable terminal in case of error on osmo_sock_init
  * Meas Tools, Avoid compiler format warnings
  * Disallow changing the type of an existing BTS from the vty

  [ Eric ]
  * configure.ac: fix libtool issue  with clang and sanitizer

  [ Sylvain Munaut ]
  * om2k: Add definitions for the TG object
  * om2k: Allow TG and MCTR to be manipulated via VTY
  * om2k: Allow the CON configuration request to be triggered via VTY
  * om2k: Add VTY command to allow TX of arbitrary message for testing
  * om2k: Don't use slashes in FSM IDs and use dashes instead
  * om2k: Fix TS channel config payload for non-superchannel case
  * om2k: Fix type of msg_type in abis_om2k_tx_simple
  * om2k: Acknowledge the HW Infos Reports
  * om2k: Acknowledge the unknown MCTR messages we get from time to time
  * om2k: Properly name message 0x0136, found to be MCTR Statistics Report
  * om2k: Use the "from config" TS config to setup OM objects
  * om2k: Dispatch TS_EV_OML_READY to TS FSM only when it's actually ready
  * om2k: Fix the frequency specifier for TX/RX/TS conf requests
  * bts_ericsson_rbs2000: Init all the TRX, not just C0
  * bts_ericsson_rbs2000: Whitelist the E1d input driver
  * om2k: Add option to limit OML version during negotiation
  * om2k: Rename MCTR config request constants for consistency
  * om2k: Add support for MCTR configuration
  * om2k: Properly update the 'fake' 12.21 states using OM2000 status
  * om2k: Wait for OM TRX links to stabilize before trying to bring up TRX
  * chan_alloc: Don't re-invent trx_is_usable and use existing helper
  * gsm_data: Update trx_is_usable for ericsson BTS
  * om2k: Fix invalid use of linked list when building hopping freq list
  * bts_nokia_site: Fake 12.21 OM objet state as "OK" when boot is done

  [ Alexander Chemeris ]
  * ctrs: Correctly count load total for dynamic timeslots.
  * stats: Report per channel type load to statsd counters.
  * stats: Remove dots from the end of stats descriptions.
  * Fix indent whitespace and log message.
  * stats: Fix stat group index for BTS stats.
  * Fix a comment for the handle_unitdata_from_msc() function.
  * chan_alloc: Add comments for the *_chan_load() functions.
  * osmo_bsc_sigtran: Fix a SSCP-> SCCP typo in a comment
  * stats: Add a stats gauge for the MSC links count.
  * stats: report a number of configured BTS to a stats gauge.
  * stats: Add counters for received BSSMAP messages.
  * stats: Export connected OML/RSL links count per BTS.
  * a_reset: Rename SIGTRAN connection to BSSMAP MSC assocation in log messages
  * stats: Fix Rx DTAP error stat description
  * bsc_subscr_conn_fsm: Fix a typo in the comment life->live
  * lchan: Allow transition from BORKEN state to WAIT_RF_RELEASE_ACK
  * timeslot_fsm: Allow PDCH_ACT_ACK in BORKEN state.
  * stats: Only dereference a connection pointer after checking for NULL.
  * handover_test: Properly allocate MSC data struct.
  * stats: Add counters for Tx BSSMAP messages.
  * stats: Rename BSSMAP Rx message counters to match Tx ones.
  * bsc_vty: Coding style fix - brackets around a complex if/else
  * log: Fix "Paging request failed" logging level
  * log: Adjust "new SIGTRAN connection" logging level
  * bssmap: Ignore repeated BSSMAP RESET ACK messages.
  * log: Demote "CHAN RQD: reason" to INFO
  * log: Demote "SAPI=%u ESTABLISH CONFIRM" message from ERROR to DEBUG.
  * borken: Recover from more TS borken states.
  * stats: Add counters and gauges for BORKEN lchans/TS
  * stats: Add a BTS/BSC counter PAGING_NO_ACTIVE_PAGING.
  * stats: Correctly count lchans under BORKEN TS.
  * bssap: Handle BSSMAP CONFUSION message.
  * Fix crash in bsc_patch_mm_info()
  * bsc_patch: Don't even parse MM INFO if TZ patching is not enabled.
  * bsc_subscr_conn_fsm: Fix crash in gscon_forget_lchan()
  * stats: Count paging requests flushed due to MSC Reset.
  * Return 0 from gsm0408_rcvmsg() if SCCP link is already closed.
  * paging: Remove obsolete comment.
  * chan_alloc: Fix typo in a comment.
  * timeslot_fsm: Name TS FSM instances on allocation.

  [ Daniel Willmann ]
  * osmo-bsc: Use designated initializer in bts_stat_desc
  * gsm_data.h: Remove period at end of counter description
  * abis_rsl: Count successful channel requests
  * Count assignment rates per BTS as well
  * Remove punctuation in counter description
  * Count handover per BTS as well as per BSC
  * Count intra-cell and intra-bsc handover separately
  * Add bts counters to count BTS events where we don't have a bts
  * configure.ac: Require python3 for ext_tests

  [ Alexander Couzens ]
  * gsm_data: always set spare bits in channel description
  * gsm 04.08: encode the LTE neighbors measurement bandwindth in Channel Release
  * gsm 04.08: correct calculate the Cell Selection Indicator after release of all TCH and SDCCH
  * osmo-bsc: fix a crash when receiving a RACH LOAD IND with 0
  * abis_nm: abis_nm_perform_test: fix a potential null deref
  * pcu_sock: use tn as variable name to improve readability
  * pcuif_proto: protocol 9: add missing fields
  * oml: encode IPv6 NSVC using the new OML attribute NM_ATT_OSMO_NS_LINK_CFG
  * pcuif_proto: version 10: add frequency hopping parameters
  * pcuif_proto: version 10: add support for IPv6 NSVCs
  * bsc_vty: cfg_bts_gprs_nsvc_rip: add missing breaks
  * bsc_vty: parse the return code to make coverity happy
  * bts_ipaccess_nanobts: check if msgb_alloc fails
  * sysmobts: expect feature IPV6_NSVC
  * Introduce NM GPRS NSVC FSM

  [ Michael Iedema ]
  * stats: Add granularity to SDCCH/TCH/LU activity.
  * stats: Add granularity to chan:rf_fail stat.
  * cosmetic: shorten deref chains where possible
  * stats: add SIGN/SPEECH assignment subcategories

 -- Pau Espin Pedrol <pespin@sysmocom.de>  Tue, 23 Feb 2021 18:43:04 +0100

osmo-bsc (1.6.0) unstable; urgency=medium

  [ Philipp Maier ]
  * bsc_msc_data: remove unused member is_authenticated
  * gsm_08_08.c: always pick first msc for unsolicit paging responses

  [ Neels Hofmeyr ]
  * add vty 'no neighbors' to remove all HO targets
  * neighbor config: allow re-using ARFCN+BSIC pairs
  * fsm: use deferred deallocation

  [ Vadim Yanitskiy ]
  * abis_nm.c: use LOGP() macro instead of LOGPC()
  * lchan_select.c: tune log level in lchan_select_by_type()
  * VTY: also print the active phan config in ts_dump_vty()
  * osmo_bsc_main.c: verify the physical channel mapping at startup
  * osmo_bsc_main.c: simplify computation of CCCH_CONFIG
  * osmo_bsc_main.c: fix CCCH_CONF computation: use pchan_from_config
  * abis_nm.c: fix error message in verify_chan_comb()
  * abis_nm.c: replace magic numbers with NM_CHANC_* constants
  * abis_nm.c: fix RSL connection timeout for trx->nr > 0

  [ Harald Welte ]
  * Cell Broadcast: CBSP and CBCH scheduling support
  * doc: update bsc_vty_reference.xml
  * manual: Update statements regarding SCCPlite
  * SMSCB: Send ETWS primary warning message via all dedicated channels
  * SMSCB: Send ETWS Primary Notifiation via RSL to BTS
  * check for osmo_fsm_register() error return value
  * check for osmo_ss7_init() error return value
  * manual: Fix copy+paste error
  * Move a_reset_fsm regstration to __attribute__((contructor))
  * exit(2) on unsupported positional arguments on command line
  * gsm_04_80: Avoid using deprecated API

  [ Pau Espin Pedrol ]
  * a_reset.c: Don't wait 2 seconds to send first BSSMAP RESET
  * bsc: gsm_08_08.c: Remove repeated conn not null check
  * bsc_subscr_conn_fsm: Cleanly clear BSSAP conn if associated channel closed during WAIT_CC
  * gsm_08_08.c: Mark func bsc_find_msc() static
  * sigtran: Set default remote ip to localhost instead of null
  * bsc_vty: Fix typo in 'no depends-on-bts' cmd
  * rsl: Send IE MS Power Param during CHAN ACT and MS PWR CTRL messages
  * rsl.c: Clean up some repeated use of long chains of pointers
  * rsl: Send IE MS Power Param to osmocom BTS models only
  * Remove unused API classmark_is_r99()
  * gsm_data.h: Remove unused field classmark from gsm_subscriber_connection
  * gsm_data.h: Remove unused func declarations
  * bsc: Adapt maximum MS Power Ctrl level based on band and MS Power class
  * cosmetic: bs11_config: clean trailing whitespace
  * bsc: Send MS Power Control msg upon max MS power change

  [ Martin Hauke ]
  * Fix some typos

  [ Oliver Smith ]
  * doc: osmux: use generated svg instead of pychart
  * debian, osmoappdesc.py, tests: switch to python 3

 -- Pau Espin Pedrol <pespin@sysmocom.de>  Fri, 03 Jan 2020 18:24:51 +0100

osmo-bsc (1.5.0) unstable; urgency=medium

  [ Max ]
  * LCLS: constify helper parameters
  * LCLS: use libosmocore function to add status
  * nanobts: use libosmocore's osmo_store*() for OML attr. patching

  [ Philipp Maier ]
  * lchan_select: dont allow half rate EFR to be selected
  * lchan_select: Do not unsolicitedly select a TCH/F
  * bsc_vty: add vty command to display all lchans
  * bsc_vty: add features to disable specific lchans via vty
  * assignment_fsm: fix channel allocator preferences
  * assignment_fsm: use activate.info.s15_s0 for ASS. COMPL.
  * handover_fsm: copy old S15_S0 to new lchan
  * osmo_bsc_msc: Use meaningful amr rate configuration on BTS level
  * codec_pref: fix special handling for AMR rate configuration  (S15-S0)
  * lchan_fsm: make sure multi rate configuration is valid
  * lchan_fsm: do not include 12.2k in active set on HR channels
  * AMR: Signal usage of octet-aligned or bandwith-efficient mode to MSC
  * lchan_fsm: add missing header file.
  * osmo_bsc_bssap: check bssmap length field
  * rest_octets: add Serving Cell Priority Parameters

  [ Neels Hofmeyr ]
  * abis_rsl: Fix TCH-as-SDCCH allocation on Channel Request
  * handover_fsm: do not access conn->assignment.req, it may be outdated
  * comments: clarify usage of conn.assignment and .handover scopes
  * cosmetic: drop unused struct mgcp_ctx shadow
  * incoming connect: don't crash if calling addr is missing
  * log N-CONNECT from MSC
  * Revert "assignment_fsm: Properly support assigning signalling mode TCH/x"
  * fix log line end in assignment_fsm.c
  * avoid use-after-free: on MGW endpoint dealloc, also forget it in conn->ho.*
  * lchan activation: add explicit encryption info to activation
  * Handover Request: also parse Chosen Algorithm IE, pass to lchan activation
  * fix inter-BSC-HO-incoming for AoIP (1/2)
  * use libosmocore osmo_tdef
  * move mgw endpoint FSM to osmo-mgw.git
  * fix inter-BSC-HO-incoming for AoIP (1/2)
  * fix inter-BSC-HO-incoming for AoIP (2/2)
  * abis_rsl.c: missing newlines on log lines
  * doc/manuals: review and tweak handover docs
  * make bsc_clear_request() static
  * doc/manuals, vty doc: more handover doc clarifications
  * remove double BSSMAP Clear on HO failure
  * comment and VTY doc tweaks
  * silence error for "invalid enum handover_scope value: none"

  [ Harald Welte ]
  * gsm_data: Add gsm_bts_name() just like we have gsm_{trx,ts,lchan}_name()
  * manual: It's not "A over SCCP" but "BSSAP over SCCP"
  * manual: Add sections on 3G/4G neighbor cells
  * manual: Re-order chapters in more logical order
  * manual: s/OsmoNITB/OsmoBSC/ in examples; remove E1 based BTSs
  * manual: Remove bogus "Control interface" sub-section in overview
  * Implement CSFB "Fast Return" Handling at RR RELEASE
  * OML: Fix encoded length value of OML GET ATTRIBUTES
  * Make sure to default to AMR octet-aligned mode
  * abis_rsl: Add support for extended CBCH to rsl_sms_cb_command()
  * abis_rsl: Avoid "Unimplemented" log message for every CBCH LOAD IND
  * abis_rsl: Fix log message about unimplemented common channel msg
  * smscb: Allow transmit of SCHEDULE and DEFAULT SMSCB
  * chan_alloc: Don't include CBCH channels in load computation
  * keep per-BTS stat_items about RACH busy / RACH access percentage
  * vty: Dump per-bts stat_item group in 'show bts' output
  * Allow VTY to set the CCCH Load Indication Threshold
  * rx_fail_evt_rep(): Don't recycle variable
  * Re-introduce support for IPA-encapsulated MGCP
  * logging: introduce LOG_BTS and LOG_TRX and use it everywhere
  * vty: Fix typo in VTY command descrption -> description

  [ Pau Espin Pedrol ]
  * ipaccess/Makefile.am: Remove unneeded libmgcp-client dep
  * Move LCLS references from gsm_data to osmo_bsc_lcls
  * Move msc related code from gsm_data to bsc_msc
  * ipaccess/Makefile.am: Remove unneeded libosmo-sigtran dep
  * net_init.c: remove unneeded header
  * configure.ac: Add flag to enable/disable build of ipaccess related utils
  * src/utils/Makefile.am: Drop unneeded sigtran and mgcp-client deps
  * fix another log line end in assignment_fsm.c
  * Drop unused old osmux leftover code
  * vty: Add option to enable osmux towards MSC
  * bssap: Detect MSC Osmux support on RESET (ACK) recv
  * bssap: Announce Osmux support on RESET (ACK) send
  * bssap: Parse Osmux CID on BSSAP Assign Req recv and use it in MGCP
  * bssap: Feed Assign Complete with Osmux CID retrieved from MGW
  * lcls: Fix MDCX with garbage on LCLS loop break
  * Introduce msc_is_{sccplite,aoip}() helpers
  * bsc: Append Osmux Support IE only on AoIP
  * Remove extern declarations of libosmovty symbols
  * bsc_subscr_conn_fsm: Use gscon_bssmap_clear() helper on send failure
  * bsc_subscr_conn_fsm: Log Tx of BSSMAP Clear Request with cause
  * doc: Add Osmux documentation to User Manual
  * Remove undefined param passed to logging_vty_add_cmds

  [ Sylvain Munaut ]
  * assignment_fsm: Properly support assigning signalling mode TCH/x
  * assignment_fsm: Properly support assigning signalling mode TCH/x

  [ Vadim Yanitskiy ]
  * abis_nm.c: use proper format specifiers for BTS / TRX number
  * abis_nm.c: also print TRX number in abis_nm_get_attr()
  * abis_nm.c: use abis_nm_ipa_magic from libosmocore
  * abis_nm.c: use msgb_lv_put() to put abis_nm_ipa_magic
  * abis_nm.c: fix broken logging in abis_nm_rx_ipacc()
  * gsm_data.c: use REG_NOSUB flag of regcomp()
  * osmo_bsc_lcls.c: cosmetic: make Coverity happy
  * ipaccess-config: use POSIX regex for Unit ID format check
  * handover_fsm.c: fix: prevent possible buffer overflow

  [ Daniel Willmann ]
  * doc: Add generic counter chapter in manual
  * manuals: Fix example config to reflect OsmoBSC commands
  * Change comments/strings from OpenBSC to OsmoBSC
  * gsm_data.h: Remove unused variable from OpenBSC times
  * Revert "fix inter-BSC-HO-incoming for AoIP (1/2)"
  * manuals: Update generated VTY reference and counters
  * manuals: Add script to update vtr/counter documentation from docker

  [ Oliver Smith ]
  * debian: create -doc subpackage with pdf manuals
  * contrib/jenkins.sh: run "make maintainer-clean"
  * contrib/jenkins.sh: "maintainer-clean" after "publish"
  * osmo-bsc.cfg: work with osmo-bts example cfg

  [ Eric Wild ]
  * vty: adjust config name for unit-id
  * turn -Werror=null-dereference into a warning

  [ Ruben Undheim ]
  * Fix some spelling errors found by lintian

 -- Pau Espin Pedrol <pespin@sysmocom.de>  Wed, 07 Aug 2019 20:42:06 +0200

osmo-bsc (1.4.0) unstable; urgency=medium

  [ Neels Hofmeyr ]
  * inter-BSC HO: add neighbor_ident API to manage neighbor-BSS-cells
  * inter-BSC HO: neighbor_ident API: drop 9bit BSIC
  * doc: update/fix FSM charts
  * fix / clarify rsl dtap cache
  * rename gsm_04_08_utils.[hc] to gsm_04_08_rr
  * cosmetic: move RR functions from bsc_api.c to gsm_04_08_rr.c
  * add gsm_timers, for Tnnn definitions usable by FSMs
  * large refactoring: use FSMs for lchans; add inter-BSC HO
  * fix nanobts: timeslot FSM: use flags to remember OML,RSL status
  * fix: dispatch TS_EV_RSL_DOWN when losing RSL
  * timeslot FSM: fix infinite recursion on failure to send PDCH ACT
  * timeslot FSM: permit entering broken state from anywhere
  * cosmetic: FSMs: allow ignorable events
  * fix BSC_CTR_ASSIGNMENT doc strings
  * lchan_fsm: split off lchan_rtp_fsm, establish RTP a bit earlier
  * lchan_fsm: add in_release_handler flag
  * allocate larger lchans if no SDCCH are available
  * create separate logging categories for lchan,ts,as FSMs
  * cosmetic: constify gsm_bts_num() net arg
  * vty: 'handover any': pick more random chans, use lchan_select_by_type()
  * cosmetic: dissolve bsc_api.c
  * cosmetic: reduce bsc_api.h
  * cosmetic: rename bsc_api.h to gsm_08_08.h
  * cosmetic: rename osmo_bsc_api.c to gsm_08_08.c
  * cosmetic: gscon: don't re-enter ST_CLEARING
  * use __FILE__, not __BASE_FILE__
  * fix lchan_rtp_fsm: missing event handling
  * MGCP: add 'X-Osmo-IGN: C' for SCCPlite by default
  * cosmetic: neighbor_ident_vty.c: add and use common string defs
  * neighbor_ident_vty.c: fix CI format, should be 16bit
  * inter-BSC HO incoming: continue despite missing Classmark
  * inter-BSC HO incoming: drop old/wrong RTP port code
  * lchan_fsm: lchan_fail_to(): store target state early
  * cosmetic: lchan_fsm failure: log about state transitions
  * lchan_fsm: safer 'concluded' flag
  * log: lchan_rtp_fsm: add missing '\n'
  * log: 'sending BSSMAP HO Request ACK'
  * inter-BSC HO: send failure msg directly
  * log: tweaks and more context in osmo_bsc_sigtran_send()
  * fix dependency bug: include mgcp_client/, not mgcp/
  * cosmetic: lchan activ: no need to clear mr again
  * cosmetic: lchan activ: drop todo comments
  * lchan: pick proper power and ta values
  * SCCPlite Assignment Complete: include Speech Codec (Chosen)
  * inter-BSC HO incoming: send BSSMAP HO Complete directly
  * inter-BSC HO outgoing: fix L3 forwarding
  * ho fsm: handle RR HO Failure for inter-BSC outgoing
  * lchan_fsm: allow late RTP release events without erroring
  * ts,lchan_fsm: do not attempt to allocate CBCH subslots
  * Implement RR Classmark Enquiry
  * fix LCLS during Assignment: actually use new TCH lchan
  * cosmetic: drop param from send_assignment_complete()
  * vty: add SCCP related vty commands
  * make: allow vty-tests without configure
  * test neighbor ident vty docs
  * neighbor vty: drop keyword 'add'
  * neighbor vty: rather 'no neighbor', not 'neighbor del'
  * neighbor vty: allow setting local neighbors by CGI
  * vty: write local neighbors by bts nr, not lac-ci
  * fix counters for inter-BSC outgoing
  * gscon_forget_lchan(): no Clear Request after Clear Command
  * gscon_forget_lchan(): Clear Request iff no lchans remain
  * subscr conn: properly forget lchan before release
  * lchan_fsm: fix failure handling: notify conn when released
  * handover_decision_2.c: tweak comments
  * handover_decision_2.c: tweak ho candidate logging
  * handover_decision_2.c: find_alternative_lchan: drop goto
  * handover_decision_2.c: drop redundant debug_candidate() args
  * lchan_fsm: notify conn of released lchan upon RF Release
  * handover_fsm: adjust inter-BSC HO failure handling to spec
  * remote-BSS neighbors: allow only one cell ID
  * handover_decision_2.c: refactor trigger_*()
  * handover_decision_2.c: implement HO to remote BSS
  * abis_rsl.c: fix uninitialized RSL cause issues
  * handover_fsm: fix missing newline for log statement
  * handover_fsm: fix failure logging of uninitialized chan mode
  * fix build: revert bad neighbor_ident.vty change
  * vty doc: drop "(HO algo 2 only)" strings
  * lchan_fsm_cleanup: drop redundant 'forget_lchan' call
  * lchan: rf release: make sure conn is NULL
  * dbug log: verbosely detach conn<->lchan
  * fix: send RR Release (e.g. after BSSMAP Clear Cmd)
  * abis_rsl.c: drop unused enum sacch_deact
  * lchan: release in error: fix missing messages / events
  * lchan release: always Deact SACCH
  * cosmetic: lchan: introduce sub-struct lchan->release.*
  * cosmetic: abis_rsl.c: drop uneccesary braces
  * lchan: set cause for 4 instances of release_in_error = true
  * coverity: gscon_forget_lchan: squelch forward-null
  * always directly send BSSMAP Clear Request
  * send Immediate Assignment Reject only before Immediate Assignment
  * Importing history from osmo-gsm-manuals
  * minor tweak
  * make clean: also remove generated image files
  * add 'make check' target
  * OsmoBSC+NITB/running: fix title levels, one too deep
  * OsmoBSC: include bts-examples.adoc from OsmoNITB
  * fix 'make clean': shell glob, ignore failure
  * refactor Makefile build rules, don't use the FORCE
  * OsmoBSC: update overview to explain both SCCPlite and SCCP/M3UA
  * common / OsmoBSC: drop unused alink.adoc
  * OsmoBSC: update VTY reference
  * bsc: document handover
  * bsc: handover: clarify default of all-cells-are-neighbors
  * bsc: handover: mention the need to resend SI for telnet neighbor cfg
  * author info: add "former" to Holger's job title
  * OsmoBSC: update VTY reference
  * follow-up: logging tweak for Immediate Assignment
  * set gscon FSM instances' log level to DEBUG
  * make sure early lchan act failure resets the lchan
  * comments: describe some lchan details
  * use mgcp-client configured endpoint domain name

  [ Philipp Maier ]
  * endpoint_fsm: add missing return in mgcp_pick_codec
  * gscon: use BSS-common payload types on BSS side
  * sigtran: fix memleak in osmo_bsc_sigtran_send()
  * GSCON: avoid sending connection oriented data when not connected
  * GSCON: call api of a_reset.c with msc object directly
  * lcls: do not LCLS call legs with different codecs
  * doc: update mgw settings in example config file
  * assignment: remove unnecessary call to gsm0808_speech_codec_from_chan_type()
  * codec_pref: fix typo in comment
  * codec_pref: add AMR configuration bits to make_scl_config() in unit-test
  * codec_pref: fix missing breaks in switch-case statement
  * LCLS: fix codec mismatch detection
  * gsm_data: remove unused struct member full_rate.
  * gsm_data: remove unused struct member chan_mode
  * assignment_fsm: only include speech codec (choosen) on AoIP networks
  * gsm_data.c: Set reasonable AMR codec defaults in gsm_bts_alloc()
  * codec_pref: Add Codec List to COMPLETE LAYER 3 INFORMATION
  * lcls: log channel type and lchan names on LCLS codec mismatch
  * codec_pref: handle S0-S15 in ASSIGNMENT REQUEST
  * gsm_08_08: abort complete L3 3 msg gen when no codecs are set
  * osmo_bsc_msc: Set reasonable codec list defaults
  * codec_pref: check codec configuration before start
  * codec_pref: cosmetic: seperate half/full rate determination
  * codec_pref: also check physical channels
  * gsm_08_08: allow zero length speech codec lists in compl l3 info.
  * gsm_08_08: do not include zero length speech codec list.
  * gsm_data: set meaningful default values for amr modes
  * codec_pref: also check amr codec rates in check_codec_pref()
  * gsm_04_08: improve gsm48_multirate_config()
  * bsc_vty: check amr mode parameters
  * lchan_fsm: generate proper multirate configuration IE on RSL
  * gsm_data: make cgi_for_msc available for other modules
  * handover_fsm: send HANDOVER PERFORMED msg on internal ho
  * paging: fix nullpointer deref
  * chan_alloc: remove references to lchan_alloc()

  [ Harald Welte ]
  * Migrate from osmo_ipa_idtag_parse() to ipa_ccm_id_resp_parse()
  * handover_fsm.c: Fix -Werror=format-security errors
  * cbch: Don't send cell-broadcast command on BTS without CBCH channel
  * gsm48_lchan2chan_desc() belongs to gsm_data.h
  * Introduce gsm48_lchan2chan_desc_as_configured()
  * CBCH: Fix SI4 CBCH IE generation
  * CBCH: Fix gsm_bts_get_cbch()
  * nanoBTS: Allow BCCH with CBCH on TS0
  * range_enc_determine_range(): Don't dereference array on size=0
  * handover_start_inter_bsc_in(): Uninitialized variable
  * ipaccess-config: Fix open() return value checking
  * bssmap_handle_cipher_mode(): Don't sent reject if !conn
  * subscr_conn_fsm: Fix null-pointer deref / N-CONNECT.ind from unknown MSC
  * acc_ramp: An unsigned int is always >= 0
  * ipaccess-proxy: Add error handling to IAP CCM ID RESP parsing
  * initial checkin of manuals to public repo
  * Add link to Asciidoc source code of manual
  * add Ericsson OM2000 message sequence charts (one for each MO)
  * OM2000 message sequence charts: specify MO in node name
  * OM2000 MSC: Fix spelling
  * Add chapter on Cell Broadcast Support in Osmocom (to BSC+NITB manual)
  * BSC: Add series of message sequence charts about MGCP handling
  * mgw: Fix endpoint names for new MGW
  * MGW: Include MGCP endpoint naming scheme of old IPA/SCCPlite approach
  * add message sequence chart MS/BTS/BSC/MSC for 3GPP aoIP MO call
  * vty-ref: Update URI of docbook 5.0 schema

  [ Pau Espin Pedrol ]
  * bsc: Use libosmocore API to track osmo_signal structs
  * abis_nm: Fix heap-use-after-free in abis_nm_set_channel_attr
  * abis_nm: Fix trailing whitespacing
  * Fix heap-use-after-free due to OML link destruction
  * abis_nm_ipaccess_rsl_connect: Log bts and trx nr
  * codec_pref: Log unsupported codec name used
  * codec_pref: Log HR2 specifically as never specified
  * codec_pref.c: Add comment in expected switch case without break
  * Install systemd services with autotools
  * Install sample cfg file to /etc/osmocom
  * osmo-bsc: Add default case for switch(enum)
  * abis_nm_get_ts: Return TS of correct TRX, not always TRX0
  * ipaccess-config: Use enum value for OML IP
  * abis_nm: Rename m_id_len to ease review of forthcoming patches
  * abis_nm: Split handling of Attribute Response Info into its own func
  * abis_nm: Split reported attr list parsing from Attribute Response Info into its own func
  * abis_nm: Allow sending and receiving Get Attributes (Response) against nanoBTS
  * abis_nm: Add support to parse some nanoBTS Attribute Response attributes
  * abis_nm: Add support to parse OML IP and Unit Id in Get Attributes
  * abis_nm: Support parsing nanoBTS format for Get Attributes Info
  * abis_nm: parse_attr_resp_info_unreported: Fix offset calculation
  * examples: Remove neighbor-list invalid for default setup
  * bsc: bts_alloc: Use enum value during neigh_list_manual_mode initialization
  * bsc: vty: Use enum value in neighbor-list check
  * bsc: gsm0808: Fix return code in bsc_compl_l3
  * osmo-bsc: gsm_timers_vty: Set global T_defs during vty_init
  * bsc: Prefix log string with related SI type during call to list_arfcn
  * bsc: si: Fix SI2bis L2 pseudo length
  * bsc: si: Fix SI2ter L2 pseudo length
  * bsc: Enable force-combined-si on nanoBTS by default
  * bsc: band_compatible: Return band non-compatible for invalid arfcn
  * bsc: vty: Verify and warn on invalid arfcn passed
  * abis_nm: Introduce new signal S_NM_GET_ATTR_REP
  * ipaccess-config: Fix whitespace
  * ipaccess-config: Add -G cmdl opt to query OML IP and Unit ID
  * ipaccess-config: cosmetic: Remove unneeded comment with hex values
  * gsm0408_rcvmsg: Release lchan if L3 fails to complete
  * ipaccess-config: Introduce -q quiet param
  * Add osmux-reference document
  * osmux-reference: Use packetdiag to draw packet header structures
  * osmux-reference: Add sequence charts
  * osmux-reference: Add traffic saving plot
  * osmux-reference-docinfo: Add latest changes to revhistory
  * osmux: Fix description for Dummy frames FT field
  * Allow easily disabling GFDL references
  * cosmetic: bsc: timeslot_fsm: Clean uneeded scope brackets
  * bsc: lchan_select: Avoid returning a TCH/H lchan when TCH/F is requested
  * bsc: ts_as_pchan_for_each_lchan: reorder and improve documentation
  * bsc: ts_for_each_lchan: Improve documentation
  * bsc: Add define for ts_as_pchan_for_each_lchan with ts->pchan_on_init
  * bsc: Fix lchan iteration for dyn TS during PDCH Deact
  * bsc: timelost_fsm: Remove unneeded set of out variable on failure
  * bsc: timeslot_fsm: Fix ts_is_lchan_waiting_for_pchan
  * bsc: ts_is_pchan_switching: Return correct IPA dyn TS target_pchan
  * bsc: timeslot_fsm: Fix possible skip of some lchans in ts_terminate_lchan_fsms
  * bsc: timeslot_fsm: Fix count in ts_lchans_waiting
  * bsc: lchan_rtp_fsm: Avoid duplicate LCHAN_EV_RTP_RELEASED event
  * bsc: lchan_fsm: Add missing transition WAIT_TS_READY->WAIT_RLL_RTP_RELEASED
  * bsc: timeslot_fsm: Handle and ignore tear down of lchan during PDCH DEACT
  * bsc: lchan_fsm: Fix invalid duplicated transition
  * paging: Add VTY options to calculate T3113 timeout dynamically
  * paging: fix whitespace
  * paging: Properly enclose logging imsi filter scope
  * bsc_main: filter_fn: Compare imsi values instead of subscr pointers
  * bsc: Set subscr log context during complete_layer3
  * bsc: rsl: Set subscr log context during meas report
  * bsc: dtap: Set subscr log context
  * bsc: bssap: Set subscr log context during paging
  * Add VTY option to avoid sending empty Full BCCH Info for disabled SI

  [ Stefan Sperling ]
  * check for overlong unix socket paths
  * fix unaligned access in abis_nm_rx_ipacc()
  * re-order condition checks for clarity
  * show dynamic timeslot details in 'show timeslot' vty command
  * check return value of gsm48_multirate_config()
  * add missing 'break' in switch statement
  * unlink socket path correctly in rf_create_socket()

  [ Martin Hauke ]
  * cosmetics: Fix typo in bsc_vty.c
  * ipaccess-config: Generate valid JSON output when using the -G parameter
  * ipaccess-config: Fix indentation of the usage output

  [ Oliver Smith ]
  * osmo_bsc_main.c: initialize rate counters
  * vty 'show bts'/'show trx': display IPs and ports
  * cosmetic: fix spec ref for gsm0808_cipher_mode()
  * cipher mode reject: send proper cause codes
  * vty: add 'show rejected-bts'
  * ipaccess_sign_link_reject: fix: use osmo_strlcpy() to safely copy IP
  * copy NITB's osmobsc-usermanual.adoc to OsmoBSC
  * build manuals included from osmo-gsm-manuals.git
  * Fix DISTCHECK_CONFIGURE_FLAGS override
  * contrib/jenkins.sh: build and publish manuals
  * contrib: fix makedistcheck with disabled systemd

  [ Daniel Willmann ]
  * debian: Require libcdk and install meas_vis osmo-bsc-meas-utils
  * OsmoBSC/HLR/MSC: Fix default config file name
  * gsm_04_08: Free GSM subscr conn if paging response can't be matched
  * VTY: Allow logging filter imsi statements for IMSIs we haven't seen yet

  [ Max ]
  * vty: don't show GPRS details if not configured
  * LCLS: move MGCP MDCX into separate function
  * Make IP address helper accessible via header file
  * constify rsl_tx_ipacc_*cx() parameters
  * LCLS: expand logging to print the name of the mode in use
  * LCLS: tighten GCR check
  * LCLS: explicitly check for mode before closing the loop
  * LCLS: move mode check into separate function
  * LCLS: make config and control redable in 'sh conns'
  * RSL: restructure MDCX functions
  * LCLS: add bts-loop variant
  * vty: add command to show TRX selectively
  * Add OsmoBSC control interface description
  * Add OsmoBSC control interface description
  * OsmoBSC: update CTRL docs
  * LCLS: update parameter representation
  * LCLS: log config/control update
  * IPA: log OML/RSL link drop reason
  * LCLS: use enum values instead of magic numbers
  * Print BTS number on GPRS options error
  * Log MDCX ACK for established lchan

  [ Jonathan Brielmaier ]
  * fix various typos across all manuals

  [ Ivaylo Kostov ]
  * BSC,BTS: add diagrams of PCU-BTS-NITB-SGSN relationships

  [ Alexander Couzens ]
  * OsmoBSC: add rate counter documentation

  [ Vadim Yanitskiy ]
  * osmo_bsc_bssap.c: fix incorrect link_id assignment

 -- Harald Welte <laforge@gnumonks.org>  Sun, 20 Jan 2019 21:21:24 +0100

osmo-bsc (1.3.0) unstable; urgency=medium

  [ Philipp Maier ]
  * a_reset: cleanup + remove dead code
  * gscon: remove dead code
  * gscon: pick suitable payload type / encoding name for MGCP
  * lcls: set codec info when performing MGW operation
  * codec_pref: move match_codec_pref() to separate c-file and add unit-test
  * codec_pref: check bts codec support
  * chan_alloc: reset rtp voice related bits in lchan_free()
  * rsl: use 3GPP assigned payload type constants from libosmo-netif

  [ Stefan Sperling ]
  * show all global counters of osmo-bsc in vty
  * add counter for connection attempts from BTS with unknown unit id
  * fix misaligned memory write access in abis_nm_ipaccess_rsl_connect()
  * increment 'paging responded' counter for active paging only
  * fix handling of invalid pchan names in vty

  [ Pau Espin Pedrol ]
  * nat: Add jitter buffer on the uplink receiver
  * acc_ramp: Increase log level of some messages
  * chan_alloc: Print bts nr on chan alloc failure
  * abis_rsl.c: Fix whitespace
  * abis_rsl: rsl_rx_chan_rqd: Format bts log string as in everywhere else
  * pcu_sock: Log event pcu_sock created
  * osmo-bsc: Clean help description of cmd line parameters
  * osmo-bsc: Add -V param to print version
  * debian: Move meas related binaries into new package osmo-bsc-meas-utils
  * bsc-filter: Remove unused func barr_adapt and set barr_find static
  * bsc_vty: Write access list entries when storing bsc config
  * Init access_lists before passing it as a parameter
  * Rename bsc_msg_acc_lst_vty_init to have more uniform prefix
  * filter: vty: Print policy list in cmd show access-list
  * filter: Replace '.' in counter names with ':'
  * filter: Allocate each ctr group with a different idx
  * ctrl: Avoid sending back received ERROR msgs

  [ Neels Hofmeyr ]
  * bsc_api.c: actually log with context
  * abis_rsl.h: drop unused rsl_chan_activate() declaration
  * cosmetic: bsc_dyn_ts.c: make local functions static
  * cosmetic: define TCH_F_PDCH_PENDING_MASK as actual bitwise or
  * cosmetic: logging and ordering in handle_ass_compl()
  * doc: add msc charts on Assignment/Handover internals
  * tests: remove bssap_test
  * tests: remove channel_test
  * bsc_test: drop "scan to MSC" code path
  * dissolve libbsc: move all to src/osmo-bsc, link .o files
  * remove struct bsc_api
  * cosmetic: magic number: use RSL_ACT_ constant for chan act
  * cosmetic: gscon: undup code: add common assignment_failed()
  * assignment: signal assignment failure on chan act nack
  * log: fix logging in rsl_rx_chan_act_nack()
  * log: assignment: add two logs on unexpected lchan release
  * use libosmocore's gsm0808_permitted_speech(), gsm0808_chosen_channel()
  * cosmetic: penalty timers: constify, tweak doc
  * cosmetic: bsc_subscr_alloc: log initial get
  * gscon: put subscriber a little later
  * try to pick up subsrc IMSI on l3-compl
  * store subscriber identity on paging
  * cosmetic: handover_test: add IMSI to subscr for logging
  * doc: tweak msc charts on Assignment/Handover: act_timer
  * doc: add lchan-release.msc
  * doc: add ms-channel-request.msc
  * doc: charts: illustrate new plan for ts and lchans
  * cosmetic: gscon: drop odd use of OSMO_STRINGIFY
  * HO: introduce T7, T8, T101 timers
  * drop dead code: conn->T10, handled by gscon instead
  * make T10 configurable like the rest of them
  * fix dyn TS init: properly identify BTS on OML OPSTART ACK
  * cosmetic / linking: move str_to_imsi() out of abis_rsl.c
  * cosmetic: name osmo-bsc's root ctx 'osmo-bsc', not 'openbsc'
  * call osmo_xua_msg_tall_ctx_init()
  * fix handover start: dealloc ho if event not permitted
  * ho cfg: fix unit strings
  * hodec2 log: less verbose, more concise logging
  * various logging: fix missing/extra newlines
  * BTS codec pref legacy compat: allow all codecs per default

  [ Harald Welte ]
  * bsc: Fix check for MSC-side FSM allocation failure
  * vty: Permit selection of other ASP protocol than M3UA
  * bsc: Add mgcp_port_to_cic() to determine CIC from RTP Port
  * bsc: Use correct MGCP endpoint name for IPA/SCCPlite
  * bsc: Don't reject ASSIGNMENT for Audio in IPA/SCCPlite case
  * bsc: Don't include AoIP IEs in ASSIGNMENT COMPLETE over SCCPlite
  * bsc: Don't create MSC-side MGCP connection in IPA/SCCPlite case
  * remove remaining bits of osmo-bsc_nat
  * Remove 'struct bsc_msc_connection' + fix IPA-encapsulated CTRL
  * move 'extern struct gsm_network *bsc_gsmnet" to header file
  * VTY: Print some more information in "show conns"
  * Add initial 3GPP LCLS support to OsmoBSC
  * LCLS: add VTY config to enable/disable LCLS on per-MSC basis
  * Reject ASSIGNMENT REQ with CIC but no AoIP transp addr in AoIP case
  * Ignore "dest" command in MSC node
  * Explicitly register CTRL-over-IPA callback with libosmo-sigtran
  * Remove unused logging subsystems DCC and DMGCP
  * remove traces of osmo-bsc_nat in python test (osmoappdesc/test_runner)
  * Add missing event string name for GSCON_EV_LCLS_FAIL
  * bsc_subscr_conn_fsm: BSC must not release SCCP connection
  * absi_rsl: Fix segfault in rsl_rx_conn_fail()

  [ Daniel Willmann ]
  * git-version-gen: Don't check for .git directory

 -- Pau Espin Pedrol <pespin@sysmocom.de>  Fri, 27 Jul 2018 19:25:05 +0200

osmo-bsc (1.2.1) unstable; urgency=medium

  [ Philipp Maier ]
  * bsc_api/GSCON: prevent unnecessary channel mode modifications

  [ Neels Hofmeyr ]
  * resurrect meas_feed.c: vty, vty-test
  * dyn ts, bts_ipaccess_nanobts.c: init PDCH on Chan OPSTART ACK
  * dyn TS, assignment: set lchan state to LCHAN_S_ACT_REQ in the proper place
  * dyn TS, assignment: allow switch from PDCH with associated conn
  * dyn TS: init only when both RSL and the Channel OM are established
  * dyn TS: allow any pchan type changes, fix for gprs mode none
  * debug log: verbosely log all lchan alloc choices
  * deprecate dyn_ts_allow_tch_f and by default allow all TCH
  * fix default fallbacks in audio_support_to_gsm88()
  * log: indicate hr/fr in audio_support_to_gsm88() error
  * cosmetic: dyn ts init: undup logging for gprs = none

  [ Vadim Yanitskiy ]
  * osmo_bsc_vty.c: fix: write MGW configuration

 -- Pau Espin Pedrol <pespin@sysmocom.de>  Tue, 15 May 2018 14:10:38 +0200

osmo-bsc (1.2.0) unstable; urgency=medium

  [ Neels Hofmeyr ]
  * vty: skip installing cmds now always installed by default
  * bssap: paging: page entire BSS for unimplemented cell id list
  * fix build: bssap test broke by undefined references
  * osmo-bsc RESET FSM: use distinct struct names
  * osmo-bsc: SCCP addrs: default only if unset, reject invalid
  * osmo-bsc vty: be fatal for addressbook entry errors
  * use osmo_sccp_inst_addr_name() instead of looking up ss7
  * add --enable-sanitize config option
  * bsc_init: fix Werror: define rc for 2quater with si2q_count == 0
  * bsc filter: don't ignore imsi-allow on "global" filter level
  * compiler warnings: drop some unused variables
  * compiler warnings: constify in abis_nm.c
  * cleanup: drop unused gsm_bts.role
  * compiler warnings: add includes in abis_rsl.h, gsm_data_shared.h
  * cosmetic: handover.h: use "#pragma once", declare structs, comments
  * examples: add osmo-bsc-minimal.cfg
  * HO prep: pass gsm_network to gsm_bts_alloc() already
  * fix segfault upon release paging on BSSMAP Reset: init llist
  * log typo fix in gsm0808_cipher_mode()
  * debug log: log Cipher Mode info upon sending down RSL/A-bis
  * fix bssmap_handle_cipher_mode()'s encryption decision
  * abisip-find: add getopt option parsing in preparation for a new option
  * abisip-find: add -l to list base stations instead of streaming replies
  * abisip-find: update copyright
  * abisip-find: add timeout option
  * abisip-find: add --interval option
  * vty: fix 'show lchan ...' arg [lchan_nr] to [<0-7>]
  * vty: change handover command's arg LCHAN_NR to <0-7>
  * vty: cosmetic: use common BTS, TRX, TS, LCHAN strings
  * vty: add various manual handover and assignment trigger commands
  * osmo_bsc_mgcp: cosmetic: introduce mgcp_init(), soak up fsm init
  * HO: fix recovery from failed handover
  * HO prep: introduce per-BTS handover config, with defaults on net node
  * HO: add indicators for inter-cell and async ho, use for chan act type
  * cosmetic: explicitly init ho_ref start value
  * fixup: neigh_meas_avg: detect invalid window size as <=0, log if invalid
  * fixup: neigh_meas_avg: fix condition to reduce window size
  * HO: enable handover by initializing at startup; rename init function
  * HO: add handover algo 2 parameters; skip HO 1 if HO 2 is configured
  * HO: rename gsm_bts_neighbor() to bts_by_arfcn_bsic()
  * HO: make bts_by_arfcn_bsic() public
  * libcommon: eliminate bsc_version.c
  * libcommon: eliminate common_vty.c
  * libcommon: eliminate debug.c
  * libcommon: eliminate socket.c
  * libcommon: eliminate talloc_ctx.c
  * ipaccess-proxy: don't redefine tall_bsc_ctx
  * libcommon: join gsm_data_shared.* into gsm_data.*
  * drop libcommon completely, move remaining files to libbsc
  * libcommon-cs: move a_reset.c into libbsc
  * libcommon-cs: move gsm_network_init() into bsc_network_init()
  * gsm_network: drop unused trans_list
  * libcommon_cs: move gsm48 bits to libbsc
  * libcommon-cs: move vty bits to libbsc/bsc_vty.c
  * common_cs.h: mv gsm_encr to gsm_data.h
  * drop libcommon-cs completely
  * drop unused common.h
  * gsm_network: drop unused subscr_epxire_timer
  * vty: 'show bts': write '(none)' if none are found.
  * vty: 'show bts': fix indenting
  * bts chan_load: ignore unusable BTS
  * handover_logic.c: always do inter-cell channel activation
  * handover_logic.c: on HO command, send new lchan's MS power
  * HO: process_meas_rep: guard against modulo zero
  * HO: cosmetic: bsc_handover_start(): "fix" memcpy for AMR config
  * HO: add new_lchan_type arg to bsc_handover_start()
  * HO: cosmetic: bsc_handover_start_lchan_change(): tweak local vars
  * HO: always do async handover
  * HO: bsc_handover_start_lchan_change(): set MS to max power on handover
  * HO: logging: more logs, and more concise logging
  * HO: move penalty timers to own file as proper API
  * HO: store speech codec list from BSSMAP Assignment in conn
  * HO: cfg: tweak vty write
  * vty: 'show bts': list the TRXs' ARFCNs
  * vty: 'show bts': print neighbor cells
  * HO: cfg: separate hodec1 from hodec2 parameters
  * HO: lchan: store last seen measurement report nr, tweak log
  * HO: clearly mark conn penalty timer member for hodec2
  * HO: cosmetic: handover_decision.c: make process_meas_rep() return void
  * HO: introduce ho decision callbacks
  * HO: cosmetic: getting a chan activ nack on a non-ho lchan is not an error
  * HO: Implement load based handover, as handover_decision_2.c
  * HO: vty: rename ho decision 1 vty to 'handover1' with 'handover' alias
  * cosmetic: adjust copyrights on handover_cfg.c,_vty.c
  * HO: vty: clearly mark 'handover foo' as legacy alias for 'handover1 foo'
  * drop unused libbsc/meas_proc.c
  * HO: fix minor issues found by coverity
  * bsc_api.c: fix log string format
  * fix build: gprs_ra_id_by_bts(): ensure to init all values
  * compiler warning: chan_compat_with_mode(): clearly handle all enum vals
  * add test for gsm48_ra_id_by_bts()
  * add test for abis_nm_ipaccess_cgi()
  * ctrl_test_runner: add tests for 3-digit MNC
  * gsm48_ra_id_by_bts(): struct gsm48_ra_id* instead of buf
  * cosmetic: bsc_network_init(): imply default 001-01 PLMN
  * implement support for 3-digit MNC with leading zeros
  * gsm48_parse_meas_rep(): set num_cell=0 if no neighbor cells are reported
  * cosmetic: hodec2: log nr of neighbors in meas report
  * cosmetic: typo in log: handover_decision2.c: 'measuements'
  * handover_test: explicitly wrap abis_rsl_sendmsg()
  * pcu_if: implement support for 3-digit MNC
  * configure: add --enable-werror
  * cosmetic: abis_nm: use osmo_cell_global_id, parse 3-digit MNC
  * fixup: apply mnc3 change also in ipaccess/network_listen.c
  * vty: drop unused vty definitions (*_NODE, msc_*)
  * gsm0408_test: drop LAI encoding test
  * range_enc_arfcns: avoid runtime error on zero size
  * fix gsm0408_test: properly free bts struct after each test
  * move init from gsm_bts_alloc_register() to gsm_bts_alloc(); fix gsm0408_test
  * cosmetic: gsm0408_test: drop unused arg from bts_init()
  * ctx cleanup: use non-NULL talloc ctx for osmo_init_logging2()
  * vty: re-add 'timeout-ping' and 'timeout-pong' as dummy commands
  * resurrect meas_feed.c from openbsc.git history
  * resurrect meas_feed.c: make it compile, add logging

  [ Max ]
  * Check OML state per-BTS
  * OML: consider administrative state when reporting
  * cosmetic: remove obsolete ROLE_BSC
  * cosmetic: tighten function type signatures
  * cosmetic: drop unused include
  * cosmetic: mark gsm_objclass2mo as static
  * OML: expand status reporting checks
  * Generate SI2ter Rest Octets
  * Generate SI2bis Rest Octets
  * Fix tests after rate_ctr change
  * Remove unneeded .py scripts
  * Enable sanitize for CI tests
  * Migrate from OpenSSL to osmo_get_rand_id()
  * Add optional profiling support
  * Fix .deb builds
  * Check and handle SMS encoding failure
  * Remove obsolete ./configure option
  * cosmetic: remove duplicated code
  * RSL: print link state per-TRX
  * vty: fix OML link state printing
  * cosmetic: log prim operation as text

  [ Philipp Maier ]
  * mgcp: use osmo-mgw to switch RTP streams
  * cosmetic: remove distracting newline
  * cosmetic: reorder case list
  * cosmetic: replace term MGCP-GW with MGW
  * mgcp: add missing out state
  * mgcp: remove unused variable
  * reset: remove name variable from reset context
  * doc: add example configuration for osmo-mgw
  * auth: remove obsolete VTY commands
  * bssap: remove libosmo-legacy-mgcp dependancy
  * sccp-lite: remove obsolete VTY commands
  * auth: remove unused structs
  * auth: remove obsolete VTY commands
  * mgcp: use hexadecimal digits in endpoint names
  * mgcp: use mgw assigned connection identifiers
  * mgcp: add missing switch case
  * mgcp: do not fail silently on snprintf()
  * cosmetic: remove duplicate logging
  * cosmetic: do not cast void pointer
  * cosmetic: add missing log prefix
  * cosmetic: correct sourcecode formatting
  * cosmetic: use fsm pointer from parameter list
  * mgcp: cosmetic fixups
  * paging: paging_flush_bts: be sure pending_requests is initalized
  * cosmetic: osmo_bsc_mgcp: improve comments
  * mgcp: cancel transactions on timeout
  * mgcp: validate rtp connection data in MGW response (ip/port)
  * mgcp: log file and line of calls to handle_error()
  * cosmetic: mgcp: remove duplicate logging
  * abis_rsl: permit first EstablishInd only on SAPI=0
  * abis_rsl: do not allow SACCH in MF mode on SAPI=0
  * SIGTRAN: correct wrong log category
  * bsc_api: drop unknown RR messages.
  * paging: page all bts when no cell is associated
  * paging: fix paging attemt rate counter
  * a_reset: Add FSM event names
  * gsm_data: use feature list from libosmocore
  * bsc_vty: display bts features in show bts
  * cosmetic: remove unused enum members
  * cosmetic: fix typo
  * cosmetic: fix argument order of forward_dtap()
  * cosmetic: remove needless fixme note.
  * cosmetic: fix incomplete sentence in comment.
  * Cosmetic: fix missing semicolon after osmo-assert
  * cosmetic: remove dead code and obsolete fixmes
  * cosmetic: remove old, already commented-out code
  * ipaccess: make ipaccess-config build again
  * bs11: make bs11_config build again
  * cosmetic: remove dead code: osmo_bsc_reset.c
  * gscon: fix illegal state transitions
  * cosmetic: remove dead code
  * cosmetic: Add fixme note for OS#3112
  * inform A-RESET FSM about MSC CR timeouts
  * gscon: fix assignment of signalling channels
  * cosmetic: Add note about libosmo-legacy-mgcp to configure.ac

  [ Harald Welte ]
  * debian: Add dependency to libosmo-mgcp-client-dev
  * debian: Increase required libosmo-legacy-mgcp-dev version
  * configure.ac/debian: Require libosmo-mgcp-client-dev >= 1.2.0
  * osmo-bsc: Print NOTICE message on unimplemented BSSMAP UDT
  * Move many counters from BSC-global to per-BTS granularity
  * rate_ctr: Use ':' as separator, not '.'
  * Remove 'msc' counter group from BSC
  * Change T3101 default from 10s to 3s.
  * paging.c: add more documentation on what the functions actually do
  * paging: Remove obsolete paging call-back support
  * paging: Stop all paging if MSC sends us BSSMAP RESET
  * Fix per-BTS counter group index
  * libbsc: paging: more reasonable (and detailed) paging statistics
  * Reduce T3113 default from 60s to 10s
  * Add per-BTS rate_ctr for total + failed number of RSL CHAN_ACT
  * Add new per-BTS "rsl:unknown" counter to count unknown RSL messages
  * Add a new counter "rsl:ipa_nack" to count number of IPA related NACKs
  * Add new "chan:mode_modify_nack" counter to count RSL MODE MODIFY NACK
  * Remove dead code left over from NITB split
  * Remove unused RRLP options/codec
  * Remove bogus vty config for LU reject cause
  * Remove bogus MM INFO configuration
  * Remove some more dead code
  * remove libosmo-sccp dependency for osmo-bsc
  * osmo_bsc_bssap.c: Spelling fixes in comment
  * Remove unused struct osmo_bsc_sccp_con member sccp_queue_size
  * osmo_bsc.h: document every field in 'struct osmo_bsc_sccp_con'
  * osmo-bsc: Move user plane/voice related bits into sub-structure
  * gsm_data.h: Document all fields of gsm_subscriber_connection
  * remove unused 'lac' member of 'struct gsm_subscriber_connection'
  * BSC: Add "show subscriber all" command
  * BSC: Fix bsc_subsc leak on paging
  * bsc_test.c: Use proper network/bts/lchan structures
  * cosmetic: Hide all accesses to conn->bts behind conn_get_bts()
  * Reduce T3109 default from 19s to 5s
  * Make libcommon, libcommon-cs, libfilter, utils depend on mgcp/sigtran
  * cosmetic: Remove data/len variables in bssmap_handle_assignm_req()
  * bssmap_handle_assignm_req(): Decode channel type as first step
  * remove obsolete gsm_subscriber_connection.bts member
  * update.gitignore with 'tags' files and 'deps' directory
  * gsm_data_shared.h: Remove unused sacch_deact member field
  * vty: print RTP IP of lchan if actually bound; print remote (mgw) IP
  * osmo-bsc: Add talloc context introspection via VTY
  * Structural reform: Get rid of osmo_bsc_sccp_con
  * vty: Permit codec-list containing both full-rate and half-rate codecs
  * logging: Remove obsolete log categories
  * Permit set of multiple different A5 ciphers
  * bssmap_handle_assignm_req(): Use proper cause values
  * bssmap_handle_assignm_req(): Use more conscise error/log message texts
  * bssmap_handle_assignm_req(): Don't print log statemens in malloc failure case
  * chan_compat_with_mode: signalling works over all channel types
  * osmo-bts/nanobts: Set RACH_Busy Threshold to -90 dBm
  * Align syntax of "handover" + "assignment"  command with that of lchan act/deact
  * Revert "Generate the S_L_INP_TEI_UP signal earlier."
  * bsc_vty: Merge more VTY documentation string #defines
  * sysinfo: Fix regression causing missing L2 Pseudo-Length in SI5/SI6
    (Closes: #3059)
  * introduce an osmo_fsm for gsm_subscriber_connection
  * cosmetic: Fix infinite number of formatting errors in gscon_fsm_states
  * abis_nm: Improve and fix OML logging
  * paging: Unify formatting of log messages with (bts=%d) prefix
  * RR: Send RR STATUS in case of unsupported/unknown message
  * BSSAP: Fix test_codec_pref() implementation for AMR
  * BSSAP: document match_codec_pref() more thoroughly
  * GSCON FSM: Fix argument order when calling gsm0808_assign_req()
  * bssmap: State correct speech codec in ASSIGNMENT COMPLETE
  * Start Dynamic PDCH Initialization after RSL is up
  * "show timeslot": Show dynamic PDCH state also for Osmocom-style dyn PDCH

  [ Alexander Couzens ]
  * debian: remove doublicated project name in example files
  * use _NUM_CHREQ_T to define the size of ctype_by_chreq
  * pcuif_proto.h: fix whitespaces and indention
  * pcuif_proto.h: add features of version 7 (txt indication)

  [ Pau Espin Pedrol ]
  * tests: Fix selection of python version
  * Use type bool for boolean fields in gsm48_si_ro_info
  * vty: Add cmd to configure 3g Early Classmark Sending
  * cosmetic: bsc_vty: Fix trailing whitespace
  * cosmetic: bsc_vty: Document bvci reserved values
  * osmo_bsc_bssap.c: Fix discard of const qualifier in assignment
  * debian: Move abisip-find from osmo-bsc to its own package
  * abisip-find: Add option to bind to a specific source address
  * abisip-find: Force stdout buffer flush
  * abisip-find: Add --format-json option
  * ipaccess-config: Enable logging all categories to print errors
  * ipaccess-config: Add missing path with log error
  * ipaccess-config: Improve handling of last parameter
  * abisip-find: Improve use information output
  * ipaccess-config: Check cmdlie arg unit-id format
  * bsc_api.c: bsc_handle_lchan_signal: Remove unused variable
  * bsc_subscr_conn_fsm.c: Fix wrong param list passed to LOGPFSML
  * tests: handover_test.c: Add missing header
  * pcu_sock.c: Avoid breaking strict-aliasing on ptr derreference
  * contrib: jenkins.sh: Add --enable-werror flag
  * contrib: osmo-bsc.service: Update description
  * contrib: osmo-bsc.service: Fix osmo-mgw.service dependency
  * libbsc: nokia_site: Fix uninitialized return val
  * bsc_vty: Fix uninitialized var false positive on gcc 7.3.1
  * paging: paging_request_bts: Fix wrong return value
  * bssap: Log non handled paging requests
  * libbsc: set_net_mcc_mnc_apply: Fix memleak on parsing incorrect mcc mnc
  * bsc_nat: ctrl: fix memleak on reply receival
  * bsc_nat: forward_to_bsc: remove one level of indentation
  * bsc_nat: forward_to_bsc: Fix memleak on send failure
  * bsc_nat: Drop redundant ccon ptr in bsc_cmd_list
  * bsc_nat: ctrl: Fix crash on receveing bsc reply
  * use osmo_init_logging2
  * chan_alloc.c: Fix log var formatting issues
  * abis_rsl.c: abis_rsl_rx_cchan: Print msg type name for unimplemented messages received
  * abis_rsl.c: Clean ericsson specific imm assign code
  * gsm_data_shared.h: Remove unused enum gsm_paging_event

  [ Stefan Sperling ]
  * Fix "CTRL GET msc_connection_status" response.
  * Support control connection status query for a particular MSC.
  * Implement support for paging by LAI.
  * Add TAGS files (produced by 'make tags') to .gitignore file.
  * Implement support for CELL_IDENT_NO_CELL.
  * Implement support for paging based on CI (cell identifier).
  * Move BTS selection for paging from osmo_bsc_grace.c into osmo_bsc_bssap.c.
  * Implement support for paging based on a Cell Global Identifier.
  * Implement support for paging based on LAC and CI.
  * Show the BTS number for outgoing paging commands in debug log.
  * Split paging cases in bssmap_handle_paging() off into helper functions.
  * Remove an unused variable.
  * Improve an error message in page_lai_and_lac()
  * Make "waiting indicator" of IMMEDIATE ASSIGN REJECT dynamic.
  * Add stat items for the BTS's channel load average and T3122.
  * Make RSL connection attempts time out.
  * fix handover_test link error
  * Add support for Access Control Class ramping.
  * Generate the S_L_INP_TEI_UP signal earlier.
  * use libosmocore to parse cell identifiers in osmo-bsc
  * fix an error message in bssmap_handle_paging()
  * change return type of page_subscriber() to void
  * Generate the S_L_INP_TEI_UP signal earlier.
  * fix a format string error in bts_update_t3122_chan_load()
  * fix initialization of acc ramping
  * only log actual access control class ramping changes
  * ensure that acc_ramp_init() is only called once
  * trigger acc ramping based on trx rf-locked state
  * rename helper functions in the acc ramp code to avoid confusion
  * trigger acc ramping on state-changed-event reports
  * only trigger acc ramping if trx 0 is usable and unlocked
  * fix handling of state changes in acc ramping
  * properly skip paging is OML link is down
  * extend documentation of paging_flush_bts()
  * flush paging when RSL link is dropped

  [ Vadim Yanitskiy ]
  * bsc/gsm_04_80.h: use '#pragma once' instead of includes
  * bsc/gsm_04_80.h: clean up useless declarations
  * libbsc/bsc_vty.c: prevent uninitialized access
  * doc/examples: use NECI = 1 by default

  [ Ivan Kluchnikov ]
  * handover_decision: Fix condition for power budget handover attempt
  * handover_decision: log HO causes more accurately

  [ Andreas Eversberg ]
  * HO: Send Channel Mode and Multirate IE along with handover command
  * HO: Add function to count currently ongoing handovers to a given BTS
  * Fix: If paging for half rate was requested, use hr, if supported by MS
  * HO: Assign SDCCH on channel request
  * Fix of checking TCH rate at chan_compat_with_mode
  * HO: Count the actual meas.rep. get_meas_rep_avg fails if not reached
  * HO: Count neighbor measurements and reduce window of neigh_meas_avg
  * HO: Changed availablilty of ts_is_usable() from static to extern
  * HO: Always update rqd_ta after receiving measurement report
  * HO: If handover logic is used to do assignment, signal assignment result
  * HO: Add handover decision debugging category
  * Do not perform assignment, if the new channel equals the current one
  * Allow assignment to TCH channel with signalling only mode
  * Correctly set T3105 for ipaccess BTS type
  * HO: fix: increase the number of measurement report history to 10
  * HO: Change debug category at handover decision: DHO -> DHODEC
  * HO: Count number of free timeslot on a given BTS
  * HO: add queue to cache DTAP messages during handover/assignment
  * Fix: meas_rep.c will only use valid DL measurement reports
  * HO: Add a penalty timer list to the subscriber connection entity

  [ Keith ]
  * Cosmetic: Fix typo: Siganlling->Signalling

 -- Pau Espin Pedrol <pespin@sysmocom.de>  Thu, 03 May 2018 18:40:11 +0200

osmo-bsc (1.1.2) unstable; urgency=medium

  * Debian: depend on libosmo-sigtran (bsc) and libosmo-sccp (bsc-nat)
  * debian/control: Specify versions of packages we depend upon

 -- Harald Welte <laforge@gnumonks.org>  Sun, 29 Oct 2017 09:03:33 +0100

osmo-bsc (1.1.1) unstable; urgency=medium

  [ Neels Hofmeyr ]
  * jenkins: use osmo-clean-workspace.sh before and after build

  [ Harald Welte ]
  * Debian: re-introduce missing build dependency to libssl-dev

 -- Harald Welte <laforge@gnumonks.org>  Sat, 28 Oct 2017 21:49:00 +0200

osmo-bsc (1.1.0) unstable; urgency=medium

  [ Alexander Couzens ]
  * Initial release.
  * debian/rules: show testsuite.log when tests are failing

  [ Neels Hofmeyr ]
  * jenkins: fix build: osmo-mgw from master, not pre_release
  * drop files unrelated to osmo-bsc
  * rename openbsc.pc to osmo-bsc.pc
  * rewrite README
  * move include/openbsc to include/osmocom/bsc
  * drop MGCP client from osmo-bsc
  * fix vty tests: vty no longer goes to parent node implicitly
  * doc/examples: tweak osmo-bsc.cfg, add osmo-bsc_custom-sccp.cfg
  * add ';' after OSMO_ASSERT()

  [ Harald Welte ]
  * configure.ac: No more libosmogb dependency
  * configure.ac: remove --enable-osmo-bsc, --enable-nat
  * configure.ac: remove smpp_mirror, which has no relation to a BSC
  * contrib/jenkins.sh: MGCP is unconditional now
  * configure.ac: Remove --enable-mgcp-transcoding
  * configure.ac: Remove --enable-iu
  * configure.ac: Remove checks for libgtp + c-ares
  * configure.ac: Remove check for GMTOFF
  * configure.ac: Package is now called osmo-bsc, not openbsc
  * libbsc: document arguments of generate_bcch_chan_list()
  * Make sure BA-IND in all SI2xxx is '0' and in all SI5xxx is '1'
  * gsm0408_test: Verify that BA-IND is 0 in SI2xxx and 1 in SI5xxx
  * .gitignore: Update to post-NITB-split realities
  * Remove any references to RANAP and Iu
  * Fix nanobts_omlattr unit test
  * nanobts_omlattra_test: Initialize logging before executing tests
  * osmo-bsc: Initialize logging before initializing rate_ctr
  * Rename osmo_fsm to avoid illegal space in name + more meaningful name

  [ Max ]
  * Make TRX rf locking more visible
  * SI13: drop PBCCH-related bits
  * Wrap channel state assignment in macro
  * Further cleanup leftovers from BSC/MSC split
  * CTRL: cleanup write-only command functions
  * Show OML link uptime in vty
  * Fix repo split aftermath
  * SI2q: cleanup UARFCN addition
  * OML: consider RSL link state
  * SI2q: fix generation for multiple UARFCNs
  * Remove pkg-config file
  * ctrl: add oml-uptime command
  * SI1q: fix EARFCN appender

  [ Pau Espin Pedrol ]
  * Remove unneeded dbi dependency
  * bsc_api: Fix NULL secondary_lchan access in handle_ass_fail
  * libbsc: Use correct printf formatting for uint64_t
  * bsc_vty: Improve description of mid-call-text cmd

 -- Harald Welte <laforge@gnumonks.org>  Sat, 28 Oct 2017 11:19:03 +0200

osmo-bsc (0.1.0) UNRELEASED; urgency=low

  [ Alexander Couzens ]
   * Initial release.

 -- Alexander Couzens <lynxis@fe80.eu>  Tue, 08 Aug 2017 01:12:56 +0000
