Osmocom Packet control Unit (PCU): Network-side GPRS (RLC/MAC); BTS- or BSC-colocated https://osmocom.org/projects/osmopcu
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

1211 lines
56 KiB

osmo-pcu (1.1.0) unstable; urgency=medium
[ Oliver Smith ]
* treewide: remove FSF address
[ Pau Espin Pedrol ]
* Fix assert hit if connecting to SGSN fails
* llc: Convert to C: s/m_//g
* llc: Convert to C
* llc: Move static functions below related object
* ms: validate codel enabled against proper define
* ms: Remove unneeded bts!=NULL check
* gprs_ms_storage: MS always has non NULL ms->bts
* llc: schedule frames to MS based on SAPI priority
* pdch is_enabled: Use API getter instead of accessing field directly
* llc_queue: Refactor to handle codel_state per prio queue internally
* tests/llc: Add test_llc_meta_pdu_life_expire
* tests/llc: Add test_llc_codel
* gprs_ms: Use osmo_timer_setup() API
* gprs_ms_storage: Use bts_stat_item_inc/dec APIs
* tests/tbf: Set up pcu timers in prepare_pcu()
* gprs_pcu: Explicitly free all bts objects in list before freeing pcu
* bts: Call gprs_bssgp_destroy() in destructor
* TbfTest: Reset MS timeout to 0 in test_tbf_dl_llc_loss()
* gprs_ms_stoage: Release all MS in ms_storage cleanup()
[ Harald Welte ]
* update git URLs (git -> https; gitea)
-- Pau Espin Pedrol <pespin@sysmocom.de> Wed, 29 Jun 2022 09:48:53 +0200
osmo-pcu (1.0.0) unstable; urgency=medium
[ Pau Espin Pedrol ]
* Support uplink multi-slot allocations
* tbf: Log timeslot allocation failure
* bts: Count TBF TS allocation failure
* pdch: Standarize and improve logging
* tbf: Improve logging when TBF being allocated or no TBF avail
* Remove uneeded ms param from alloc_algorithm_func_t func
* bts: Add new stats to detect TBF allocation failure reasons
* llc: use memset to fill llc dummy frame padding
* tbd_dl: Don't re-initialize class field twice
* tbf: log keep_open condition status
* tbf_dl: Fix m_last_dl_drained_fn not set under some conditions
* tbf_dl: fix FBI not set upon X2031 = 0
* ms: clarify delayed MS release process related code and logging
* gprs_ms: Use standarized logging on more messages
* sched: sched_select_ctrl_msg(): Clean up param list and improve logging
* sched: sched_select_downlink(): Clean up param list and improve logging
* TODO-RELEASE: document requirement of master libosmocore
* tbf: Log N310* counter increments
* pdch: Silently ignore DATA.ind with len=0
* direct_phy: Support submitting DATA.ind with len=0 to upper layers
* pcu_utils.h: Fix trailing whitespace
* Track TDMA clock with DATA.ind instead of TIME.ind
* Introduce init() APIs for PDCH and TRX objects
* tests: rlcmac: Fix C vs C++ linkage of extern symbol
* pdch.h: Drop uneeded include bts.h
* Improve DATA.ind logging
* Improve logging in DATA.req and ACT.req
* tbf: Fix wrong variable printed in log
* pdch: Log FN when decoding UL Ctrl block
* Add new PDCH UL Controller, drop SBAllocator class
* Replace PollController with newly added PDCH UL Controller
* sched: Use new PDCH UL Controller
* bts: Detect FN jumps
* cosmetic: tests/Makefile.am: Split content into several lines
* tests: Introduce unit tests for PDCH UL Controller
* tests: ulc: Show current bug with FN wrap around
* ulc: Fix FN store order upon wrap around
* sysmo: fix wrong FN jumps in rx RA.ind
* direct_phy: Fix condition dropping rx DATA.ind payload in in
* Fix: left shift cannot be repesented in type int
* sched: Fix scheduling UL TBF not matching conditions
* sched: Simplify usf selection code
* Set matching USF if available when polling a UL TBF
* pdch: Add mising pdch_ulc_release_node in Rx Cell Change Notif
* pdch_ulc: Create helper API pdch_ulc_release_node
* Track scheduled UL blocks through USF
* Properly implement N3101
* sba: Document AGCH_START_OFFSET after some experimental tests
* pdch_ulc: Optimize rbtree FN search
* Pick unreserved UL FN when allocating an SBA
* pdch_ulc: Support picking RRBP other than N+13
* Drop unused function tbf_check()
* pdch_ulc: Store TBF poll reason
* tbf: Get rid of unneeded poll_scheduled()
* tbf: Allow multiple concurrent polls
* Remove unneeded poll_state check
* tbf: get rid of poll_state completely
* Get rid of param 'poll' with constant value
* tbf: Get rid of attribute poll_fn
* tbf: Get rid of attribute poll_ts
* RIM: Improve logging
* sba: Drop unused function find_sba_rts
* pdch: rcv_resource_request: Improve robustness
* pdch: tbf_by_tfi(): Allow returning TBFs in state RELEASING
* Stop abusing T3169
* Make use of T3142 received from BTS
* Use negative numbers for non-spec osmo-specific timers
* ul_tbf: Clean up handle_tbf_reject()
* Make WaitIndication T3172 configurable
* sched: Simplify else-if condition
* Clarify, document Assignment related timers
* doc/tbf.txt: Update and improve some information
* bts: constify arg in func bts_ms_store()
* sched: Rename func to describe its used only for RLCMAC CTRL blocks
* rim: Constify param in func
* Simplify helper function tbf_select_slot_set()
* alloc_algorithm_b: Rearrange variable initialization
* Rename function s/tbf_alloc_ul/tbf_alloc_ul_pacch/
* Split ul_tbf alloc on CCCH into new function
* Implement T3141
* tbf_ul: Use is_tlli_valid() API
* Tx ul ack/nack: Avoid sending invalid/unknown TLLI
* encoding: Use gsm48_ta_is_valid() API
* encoding: Encode TA in UL ACK/NACK if available
* sched: Clean up helper function and improve logging
* Drop existing tbf->ms() check condition
* ul_tbf: Simplify function rcv_data_block_acknowledged
* ul_tbf: Fix accessing zeroed block when checking if transfer is complete
* sched: Clean up param passing and improve logging
* pdch: Use llist_first_entry() API
* RIM: Refactor Rx path to decode stack in proper order
* Clean false positive in newer GCC version checking guard of else clause
* Use LOGPDCH macro in bts_add_paging()
* Optimize PAGING-CS PDCH set selection when target MS is known
* bts: Use ms_store when calculating set of target PDCHs for Pkt Paging Request
* tbf: Log error path in setup() failing to assign control TS
* Move TBF list from BTS to the TRX structure
* MsTest: Set up tbf talloc destructor
* tbf: Move existing tbf_state implementation to osmo_fsm
* cosmetic: Fix typo s/TIMSI/TMSI/
* gsm_rlcmac.c: Fix arg list of 2 callbacks
* csn1: Implement CSN_CALLBACK type in encoder
* bts: Fix typo in field name
* Use new stat item/ctr getter APIs
* pdch: Log pdch_ulc reason upon rx of pkt ctrl ack
* pcuif: Support receiving System Information 2
* pdch: Fix null MS access gprs_rlcmac_pdch::rcv_control_ack
* pcuif_proto.h: Add new container message
* Support proto IPAC_PROTO_EXT_PCU BSC<->PCU
* pdch: Fix heap-use-after-free in pdch->ulc
* Make gcc 11.1.0 false positivies happy
* tbf: Drop impossible paths in create_dl_ass()
* tests/tbf: Fix null pointer access if slowly stepping with gdb
* Revert "coverity: fix null deref from recent UL TBF leak fix"
* Revert "fix: handle NULL return of as_dl_tbf() and as_ul_tbf()"
* Revert "Revert "Stop abusing T3169""
* Move NULL and ASSIGN tbf_state transition to tbf_fsm
* Move FLOW tbf_state transition to tbf_fsm.
* tests: tbf: Fix dl_tbf polled for data without being in FLOW state
* Move FINISHED tbf_state transition to tbf_fsm
* Move WAIT_RELEASE tbf_state transition to tbf_fsm
* Move RELEASING tbf_state transition to tbf_fsm
* Move T3169 and T3195 to tbf_fsm
* Drop duplicate log line
* Put dl_tbf::cleanup into destructor
* Drop logging last mas report before freeing TBF
* Remove duplicate call to gprs_rlcmac_lost_rep
* Move rate_ctr free to tbf subclass destructor
* Get rid of tbf_dl:abort()
* tbf_free: Get rid of uneeded tbf_state transition
* Replace ul_ass_state with osmocom FSM
* tbf: Reimplement rlcmac_diag() and make it available from C
* tbf: Drop unuseful flag GPRS_RLCMAC_FLAG_TO_UL_ASS
* replace dl_ass_state with osmocom FSM
* tbf: Drop unuseful flag GPRS_RLCMAC_FLAG_TO_DL_ASS
* tbf: Drop unuseful flag GPRS_RLCMAC_FLAG_UL_DATA
* Move timer X2001 to tbf_fsm
* Get rid of lots of code only used by tests
* tbf: Merge handle_ack_nack() into rcvd_dl_ack()
* Fix typos in comments documenting fsm st chg macro
* tbf: Use type bool for upgrade_to_multislot
* Move timer X2002 to tbf_fsm
* tbf_dl: Clarify requirements for DL ACK/NACK
* tbf.h: Improve documentation on several flags
* Move tbf ul_ack_state to osmocom FSM
* Simplify tbf::set_polling()
* tbf: Move T3193 to tbf_state FSM
* fix typo 's/dowlink/downlink/g'
* cosmetic: Fix typo in comment
* sched: energy saving: Avoid Tx dummy blocks on empty PDCH TS
* Fix crash with dyn TS when using direct pcu
* Use LOGPDCH macro to standarize log line
* cosmetic: sysmo: Drop unneded comment line
* bts: Use public getter instead of class member
* sched: Lower log level of RTS on disabled pdch
* pdch: Make sure pending ImmAssRej scheduled for disabled pdch are dropped
* Support Neighbor Address Resolution over PCUIF IPA multiplex
* nacc_fsm: Move logic checking if SI is being waited for to a func helper
* scheduler: Skip Tx DL idle blocks in TRX0 when not in DIRECT_PHY mode
* PTCCH: skip Tx DL idle blocks when possible
* tbf_ul_ass_fsm.c: Fix missing state transition in FSM description
* tbf: poll_timeout(): Validate expected poll reason
* nacc: Introduce helper function nacc_fsm_exp_ctrl_ack()
* tbf: refactor poll_timeout() with a switch statement
* tests: TbfTest: Fix wrong behavior in test_tbf_dl_reuse()
* pdch: refactor rcv_control_ack() with a switch statement
* cosmetic: Fix missing space
* assert if tbf pointer for POLL event is NULL
* tbf_fsm: Ignore event DL_ACKNACK_MISS in state RELEASING
* tests: RLCMACTest: Add one more sample RA capabilities to suite
* rlcmac: Fix CSN1 definition for DownlinkDualCarrierCapability_r7_t in MS RA cap
* tbf: Assert if FSM allocation fails
* sched: Rename function
* pdch: Only release ULC entry if rx ul block matches the expected one
* pdch: Validate poll reason matches in rcv_control_(egprs)_dl_ack_nack()
* pdch: PktResReq: Avoid releasing ULC entry if expecting something else on UL
* Handle Final UL ACK/NACK Confirmation in tbf_fsm
* tbf_fsm: rename state NULL -> NEW
* pdch_ulc: Log POLL reason upon timeout
* tbf_dl_ass_fsm: Move block msg generation conditions to rts() function
* tbf_ul_ass_fsm: Fix use of incorrect log macro
* tbf_fsm: Handle MAX_N3105 in state ASSIGN
* tbf: Use define to flag control_ts unset special value
* tbf: Document temporary change of control_ts and move code assigning it back to FSM
* Return void in tbf_assign_control_ts()
* pdch: rcv_data_block: Avoid releasing ULC entry if expecting something else on UL
* tbf: Avoid keeping poll nodes in pdch_ulc of temporary control_ts used during PACCH assignment
* tbf_ul_ass_fsm: Avoid retrying Pkt Ul Ass if tbf is not in state ASSIGN
* Abort scheduling of pending Pkt Ul Ass if tbf goes into RELEASE step
* tbf: Drop pending polls during free also on states != ASSIGN
* pdch: Simplify code path allocating UL TBF
* pdch: Log reason of expected POLL when receiving unexpected UL data
* bts_rcv_rach(): Gather pointers to data objects early and use them later
* bts_rcv_rach(): Split code paths for Ass and Ass Rej
* Get rid of tbf tsc field
* ts_alloc: Rename s/tbf_/tbf/
* tbf: Update FSM names when TFI change during tbf_update()
* tbf_fsm: Add assert verifying X2002 only triggers for DL TBF
* tbf: Assert if update() is called on UL TBF
* tbf: update(): return negative val on error
* tbf: Drop unneeded braces in one line condition
* cosmetic: Fix typo in comment
* pcuif: Submit data_req with len=0 as idle frames
* Split csn1.c into common, enc and dec files
* csn1: Add unit test showing RadioAccess Capability decoding failure
* csn1: Avoid failing if optional DownlinkDualCarrierCapability_r7 is missing
* csn1: Avoid storing existence bit as true if content was actually NULL
* csn1_dec.c: Fix stored bit in CSN_NEXT_EXIST_LH
* bts: Fix misleading log line in bts_rcv_rach()
* tbf_ul: Document context where tbf_alloc_ul_ccch() is used
* bts: Rename 11bit RACH request counter
* vty: Avoid crash in tbf_print_vty_info with null ptr ctrg
* vty: Log tbf_state when showing a TBF
* vty: show tbf: Drop unneeded check for non-null ms
* bts: Introduce new RACH req counters for one/two phase access
* bts: Improve logging to clarify RACH req is for 2 phase access
* bts: Count RACH Request with unexpected content
* tbf: Increase log level of line about unable to allocate poll for TBF
* pdch: Improve log line and increase log level
* tbf_ul: Set first_(common_)ts in handle_tbf_reject
* tbf: Set m_created_ts in constructor
* tbf: Mark initial first_(common_)ts with special value
* tbf: Set tfi to initial special value
* bts: Add counters for successful 1,2 phase pkt access
* tbf_ul: Update FSM names for dummy reject TBFs
* cosmetic: Add parenthesis around expression to clarify it
* pdch::rcv_resource_request(): Use local var to store bts pointer
* tbf_ul: Improve documentation of tbf_alloc_ul_pacch()
* Add counter for successful contention resolution procedures
* doc: Update counters_generated.adoc using osmo_vty_interact.py
* bts_pch_timer: Fix timer working only for MI type IMSI
* tests/alloc: Extend test_bts_pch_timer() to validate MI type TMSI
* bts_pch_timer: Avoid resend Paging Request over PCUIF if T3113 is armed
* pdch: Log line detaching TBF at start of the function
* pdch: Log TS enable/disable transitions
* pdch: Log DL TBF originating the new UL TBF
* ts_alloc: Simplify tfi_find_free logic
* ts_alloc: rename function to clraify what it does
* ts_alloc: rename variable to clarify meaning
* pdch: Update ms_reserved_slots in GprsMS when TS becomes disabled
* pdch: Drop previous UL TBF from MS who sent PktResReq through SBA
* pdch: Increase log level of line informing about TS control change
* tbf_ul_ass_fsm: Log both TBFs if old TBF is handling assignment for new one
* cosmetic: gprs_pcu.h: Fix typo in comment
* tbf_dl_ass_fsm: Log both TBFs if old TBF is handling assignment for new one
* tbf_dl_ass_fsm: Fix missing transition to NONE if DL TBF is nonexistent
* tbf_{dl,ul}_ass_fsm.c: use proper macro to log tbf
* pcu_main: Mark -r cmdline param as deprecated
* vty: Introduce command 'gsmtap-remote-host' and 'gsmtap-category enable-all'
* Fix MS ending up with assigned imsi 000
* bts: Add counter availablePDCHAllocatedTime
* tbf_dl_ass_fsm: Drop unsued X2000 timer callback
* T_defs_pcu: Set default val for X2000 to 0 ms
* Move T3172 T_defs_bts->T_defs_pcu to have it configurable in VTY
[ Alexander Couzens ]
* gprs_bssgp_pcu: rework BSSGP Reset messages to support SGSN originated BSSGP-RESET
* gprs_bssgp_pcu: ensure only known BVCI can be resetted by the SGSN
* gprs_bssgp_pcu: add comments to the pcu states
[ Harald Welte ]
* pdch_ul_controller: Fix compiler warning on gcc-10.2
* manual: remove revhistory, as we don't maintain it manually anyyway
* manual: Update copyright years
* vty: Add configuration for Gb DSCP and socket priority
* manual: Include QoS chapter and add osmo-pcu specific example
[ Vadim Yanitskiy ]
* gprs_rlcmac_sched: fix incorrect length for CTR_RLC_DL_BYTES
* PCUIF protocol: add message definition for interference report
* pcu_l1_if: ignore PDCH interference reports, do not log errors
[ Oliver Smith ]
* test: add 'make update_exp' target
* Add counters: pcu.sgsn.N.rx_paging_{cs,ps}
* Add counters: pcu.bts.N.pch.requests
* Add counters: pcu.bts.N.pch.requests.timeout
* bts: delete pch_timer list in destructor
* tests: make update_exp: build check_PROGRAMS first
* debian/control: remove dh-systemd build-depend
* Add stats: pcu.bts.N.pdch.available/occupied
* Add stats: pcu.bts.N.pdch.occupied.gprs/egprs
* pdch: has_gprs_only_tb_attached: use m_num_tbfs
[ Neels Hofmeyr ]
* T_defs_bts: remove unit from doc strings
* Revert "Stop abusing T3169"
* fix: handle NULL return of as_dl_tbf() and as_ul_tbf()
* coverity: fix null deref from recent UL TBF leak fix
[ Daniel Willmann ]
* gprs_bssgp_pcu: Fix crash when configuring an existing ns bind
-- Pau Espin Pedrol <pespin@sysmocom.de> Tue, 16 Nov 2021 16:47:29 +0100
osmo-pcu (0.9.0) unstable; urgency=medium
[ Pau Espin Pedrol ]
* Pass paging group instead of imsi where later is not needed
* Allow Gb PAGING-PS without P-TMSI
* Support Gb PAGING-CS
* Support PAGING-CS and PAGING-PS on on PTP-BVCI
* tests/rlcmac: print test name at the start
* tests/rlcmac: Memzero decoded struct
* tests/rlcmac: Fix missing commas with unexpected results
* tests/rlcmac: Use osmo_hexdump to print buffers
* tests/rlcmac: Don't check stderr output
* tests/rlcmac: Add test to showcase that decode_gsm_ra_cap() fails
* csn1: Extend CSN_SERIALIZE to allow 0 bit of length
* csn1: Allow CHOICE elements to re-process the bits used for the choice
* csn1: Fix pedantic compiler warnings in csn.1 dissectors
* csn1: Drop format_p union from CSN_DESCR
* gsm_rlcmac.cpp: Fix trailing whitespace
* cosmetic: csn1.cpp: Fix whitespace
* csn1.cpp: Rework ProcessError() function to print errors
* rlcmac: Return error code from csn1 encoder/decoder
* Check return code of rlcmac decode/encode functions
* rlcmac: Transform a few LOGPC messages to LOGP
* Fix trailing newline mess with LOGP(C) in rlcmac/csn1
* llc_queue::{dequeue,enqueue}() refactor
* gsm_rlcmac: fix Packet_Resource_Request_t: s/Slot/I_LEVEL_TN/
* tests/llc: Change unrealistic time jump to avoid runtime error under ARM
* Use clock_gettime(CLOCK_MONOTONIC) and timespec everywhere
* Use downlink BSSGP RA Cap IE
* tests/RLCMACTest: free allocated bitvectors
* tests/RLCMACTest: Several fixes and improvements to RAcap tests
* rlcmac: Don't pass array element to CSN1 descriptors
* csn1: Validate recursive array max size during decoding
* rlcmac: Fix bug receiving RA cap
* rlcmac: Log names of de/encoded rlcmac packet types
* rlcmac: Introduce MS Radio Access Capabilities 2 to fix related spare bits
* cosmetic: rlcmac: Fix comment typo and whitespace introduced recently
* rlcmac: Rename field to MS RA Cap2 in Additional_MS_Rad_Access_Cap_t
* pcu_l1_if.cpp: Add missing header ctype.h
* gsm_rlcmac: Use 'struct bitvec' instead of 'bitvec'
* cosmetic: Do not indent header includes inside extern C block
* gsm_rlcmac.cpp: Avoid declaring variable in for loop
* csn1.h: Fix trailing whitespace
* tbf.cpp: Include c++ <new> header required for new operator's replacement type
* gsm_rlcmac: Disable unused CSN1 descriptors
* Move gsm_rlcmac.cpp -> .c
* rlcmac: support decode FDD_CELL_INFORMATION of "UTRAN FDD Description
* rlcmac: add dissection of 2G->3G/4G PS handover
* csn1: Fix Several typos & whitespace
* csn1: verify enough bits present to decode whole CSN_UINT_ARRAY
* csn1: Properly verify CSN_BITMAP length
* csn1: Remove code block from CSN_NEXT_EXIST_LH
* pcu_l1_if: Don't use GSMTAP_CHANNEL_PACCH when sending unknown gsmtap blocks
* pdch: Avoid sending GSMTAP_CHANNEL_UNKOWN for rejected UL EGPRS data block
* tbf: Avoid crash: don't set TBF window size if setup failed
* bts: Rename mslot_class_from_ra
* bts: Fix Decoding EGPRS MultislotClass from 11-bit EGPRS PACKET CHANNEL REQUEST
* bts: Return uint8_t in egprs_mslot_class_from_ra()
* Use OSMO_FD_* instead of deprecated BSC_FD_*
* Expect ms object to exist before calling tbf_alloc_ul_tbf()
* Expect ms object to exist before calling tbf_alloc_dl_tbf()
* pdch: rcv_resource_request(): Clarify tbf_free only needed if MS used to exist beforehand
* Drop unneeded arg 'ta' in tbf_alloc_ul()
* bts: Drop specific functions to increase counters
* bts: Drop specific functions to add values to counters
* bts: Drop specific functions to add values to stats
* pcu: tbf_ul: Clean up maybe_schedule_uplink_acknack()
* sysmo: femtobts.h: Avoid redefining global variables
* rlc: Drop unused function gprs_rlc_data::put_data
* rlc: Move prepare() function out of gprs_rlc_data struct
* tbf_ul: Fix UL ACK not sent to MS if intermediate UL block is lost
* Get rid of class GprsCodingScheme
* gsmtap: Set signal level and SNR fields
* gprs_ms: Small clean ups in IMSI storage related code
* gprs_ms: Transfer known EGPRS MS class when mergling old MS
* tbf: Drop unneeded method set_tlli_from_ul
* pdch.cpp: Fix logging line format in rcv_block wrong length
* Set correct GSMTAP channel type for PDTCH messages returning error
* decoding.cpp: Improve logging in malformed UL data parsing
* tbf_dl: uint8_t is enough to store a TA value
* encoding: Encode TA as unsigned and check validty against GSM48_TA_INVALID
* encoding.cpp: Fix missing spacing in function param
* pdch.cpp: Avoid dropping existing DL TBF during rcv_resource_request
* pdch.cpp: Avoid resetting (egprs_)ms_class to unknown if not found in MS RadioAccCap
* pdch.cpp: Fix wrong annoying log line about non-scheduled ResourceReq received
* pdch.cpp: Store TLLI promptly on newly created TLLI in rcv_resource_request
* Fix typo in log message
* pdch: Drop unneeded notice log message in rcv pkt meas report
* Introduce log macro helper LOGPMS
* configure.ac: Fix trailing whitespace
* doc: Update VTY reference xml file
* Support setting rt-prio and cpu-affinity mask through VTY
* pdch: rcv pkt meas rep: Allocate MS object early in path and use it
* Fix recent typo preventing MS from registering
* gitignore: Add __pychache__ dir
* tbf: Don't log rlcmac_diag() output in separate lines
* gprs_ms_storage.h: Set pointer to NULL instead of 0
* Free all MS TBFs when receiving GPRS Suspension Request
* cosmetic: fix indentation alignment
* vty: Add 'show bts pdch' command
* cosmetic: Fix indentation of for loops
* cosmetic: Fix typo in comment
* Fix crash accessing NULL tbf->pdch[first_ts]
* contrib/jenkins: Enable parallel make in make distcheck
* Improve debug logging for alloc algos
* Fix several calls to LOGPAL
* Move gprs_rlcmac_ul_tbf::window to correct file
* Move constructor gprs_rlcmac_dl_tbf::BandWidth to correct file
* tbf: Make window() available to tbf base class
* tbf: Implement enable_egprs() once
* tbf: Set MS during constructor time
* Move ul_tbf allocation code to correct file
* Move dl_tbf allocation code to correct file
* tbf: Drop unused function disable_egprs()
* tests: ms: Pass correct pointer in constructor instead of NULL
* tbf: Clean up gprs_rlcmac_dl_tbf::handle()
* alloc_algo_b: Select TRX with least assigned TFIs during TBF alloc
* bts: define egprs_enabled as bool
* cosmetic: Fix ws between if keyword and parenthesis
* tbf_dl: Update (egprs_)ms_class for already known MS
* cosmetic: tests: pcu_emu: fix trailing whitespace
* gprs_ms: Use proper function to get CS
* Move BTS initial values inside bts.cpp
* pcuif: Improve BTS-supported CS/MCS handling
* Move EGPRS MS mode set to gprs_ms.cpp
* Take into account BTS supported (M)CS values when retrieving the maximum
* Enable egprs support through PCUIF from BTS/BSC
* pdch: Process received CS1-4 data blocks regardless of egprs_enabled
* tbf_dl: Don't fake EGPRS MS class when no related info is available
* tbf_ul: Allow non-egprs phones if EGPRS is enabled
* Get rid of bts->egprs_enabled
* Fix configuration of initial_(m)cs
* Fix mcs_is_valid(): UNKNOWN value is not a valid (M)CS
* gprs_ms: Avoid enabling EGPRS if no MCS are supported
* tbf_ul: Log mismatching TLLI on log message
* Fix ctr reports: Remove ctr description from already removed counter
* encoding: Fix duplicate word in log str
* sched: Fix sending GSMTAP DL data blocks with unset USF
* sched: Use correct GMSTAP category for EGPRS DL data blocks
* Support multiplexing of GPRS and EGPRS TBFs in one PDCH
* pdch: packet_paging_request: Put back non-fitting paging entry where where it was
* pdch: Log hexdump of decde failure for dl rlcmac block
* csn1: Fix readIndex pointer change in CSN_VARIABLE_ARRAY
* csn1: Log CSN_VARIABLE_ARRAY values as hex
* main: generate coredump and exit upon SIGABRT received
* tbf: Log previous TS when changing Control TS
* Implement downgrade to DL MCS1-4 when USF for GPRS_only MS
* Dl TBF: Get rid of LLC UI dummy blocks following other data
* rlcmac: Fix typo in MT_PACKET_CELL_CHANGE_NOTIFICATION value_string
* gprs_rlcmac_sched: Use helper structure to store several tbf pointer params
* sched: Convert code handling next_list array to be size independant
* Convert GprsMS and helpers classes to C
* tbf: Fix wrong verb used in log message
* .gitignore: ignore files ending with ~
* doc: Improve CS/MCS GPRS/EGPRS considerations in User Manual
* tbf: remove 'software error' logs from tbf_free
* ms: Replace struct var with rate_ctr
* AllocTest: Avoid queuing tons of to-be-freed ms
* gprs_ms: Mark ms_ctrg_desc static
* Workaround ASan false positive runtime errors under some platforms
* Split PCU global PCU object from BTS object
* Move T_defs_pcu from BTS to PCU object
* Move force_two_phase field from BTS to PCU
* Move alpha,gamma fields from BTS to PCU
* Move dl_tbf_preemptive_retransmission field from BTS to PCU
* Move dl_arq_type field from BTS to PCU
* Move cs_adj* fields from BTS to PCU
* Move cs_downgrade_threshold field from BTS to PCU
* Move (m)cs_lqual_ranges fields from BTS to PCU
* Move ns_dialect field from BTS to PCU
* Move fc_* fields from BTS to PCU
* tests/tbf: Allocate PCU per test instead of globally
* Move ws_* fields from BTS to PCU
* Move llc_* fields from BTS to PCU
* Fix configuration mess of initial_cs/mcs between PCUIF and VTY
* Unify BTS into a C usable structure
* Get rid of bts singletons
* Rename 'bts_data' leftovers to 'bts'
* bts: combine bts_{init,cleanup} into consturctor/destructor methods
* Get rid of unused gsm_timer.{cpp,h}
* Convert gprs_bssgp_pcu.cpp to C
* Move tbf::free_all static methods to proper object files
* Convert osmo_bts_sock.cpp to C
* Allow multiple bts objects in PCU
* bts: Store RAC+CI from info_ind
* Get rid of singleton gprs_bssgp_pcu_current_bctx()
* Initial handling support for RIM messages
* gprs_pcu: Use libosmocore osmo_cgi_ps_cmp API
* ms: Drop always-false check
* sched: Check if egprs is enabled in TBF rather than MS being egprs capable
* tbf: Drop always-true condition checking for MS
* encoding: fix typos in comment
* ms: Set proper initial MCS values setting mode EGPRS_GMSK
* ms: Properly handle EGPRS_GMSK mode in ms_max_cs_dl/ul()
* Fix Dl EGPRS data blocks being generated occasionally on GPRS TBFs
* sched: Avoid picking TBF with nacked dl blocks when GMSK is required
* tbf: Make tbf_ms() param const
* Introduce NACC support
* NACC: Fix crash freeing struct if CTRL conn was refused during alloc
* NACC: delay CTRL conn socket init until it's needed
* NACC: allow setting keep time for entries in neigh and si cache
* NACC: Configure neighbor and SI resolution timeout values
* NACC: Send only Pkt Cell Chg Continue if SI retrieve fails
* doc: Mark PCU node red in network node diagram
* doc: Introduce section documenting NACC support
* nacc: Improve log line failing to establish CTRL neigh conn
* Update TS 04.60 references to new TS 44.060
* Drop comment about an already implemented TODO
* Move src/tbf.txt to doc/
* encoding: Fix comment description of S/P field
* tbf: Reuse stored result in variable in check_polling()
* tbf: Constify some methods
* nacc: Fix typo in function name
* nacc: Implement Pkt Cell Change Continue retransmission
* nacc: Avoid RIM procedures targeting cells under same PCU
* rlc.h: Fix struct bit fields on big endian systems
* cosmetic: fix typo in comment
* nacc_fsm: Move code filling struct to helper function
* nacc_fsm: Remove NACC_EV_RX_SI from in_event_mask of some states
* nacc_fsm: Support receiving Pkt Cell Change Notify in state WAIT_RESOLVE_RAC_CI
* nacc_fsm: nacc_fsm: Support receiving Pkt Cell Change Notify in state WAIT_REQUEST_SI
* nacc_fsm: Support receiving Pkt Cell Chg Notif while in some advanced states
* nacc_fsm: Improve log when sending RIM RAN-INFO to gather SI from remote cell
* vty: Write 'neighbor resolution' config to file
* cosmetic: fix line indentation
* sched: Avoid selecting TBF to tx NACC Dl msg if no TFI is assigned
* tests: Explicitly drop category from log
* tests: Replace deprecated API log_set_print_filename
* Use NULL as default value for pointer type
* find_multi_slots: Avoid calling mslot_class_get_tx() on each iteration
* find_multi_slots: Avoid multiple calls to mslot_class_get_rx()
* find_multi_slots: Mark mslot_class properties const
* find_multi_slots: Avoid multiple calls to mslot_class_get_type()
* Use ALPHA value received in SI13 from PCUIF
[ Vadim Yanitskiy ]
* pcu_l1_if.cpp: fix NULL-pointer dereference in imsi2paging_group()
* gsm_timer: fix comparison of constant LONG_MAX with an integer
* encoding: fix log_alert_exit(): do not treat error as format string
* tests/alloc: fix implicit conversion from 'double' to 'int8_t'
* gprs_bssgp_pcu: fix invalid use of non-static data member 'frame'
* gprs_bssgp_pcu: fixup: fix length check in gprs_bssgp_pcu_rx_dl_ud()
* csn1: fix csnStreamDecoder(): avoid conditional calls to bitvec_read_field()
* VTY: get rid of pcu_vty_go_parent() / pcu_vty_is_config_node()
* VTY: install talloc context introspection commands
* pcu_sock: fix memleak, allocate pcu_sock_state on stack
* pcu_sock: cosmetic: fix typo in a comment message
* tbf: cosmetic: fix spacing in gprs_rlcmac_tbf::create_ul_ass()
* tbf: fix NULL pointer dereference in create_[ul|dl]_ass()
* encoding: assert return value of bitvec_set_u64()
* csn1: fix some mistaken CSN.1 error names
* csn1: fix csnStreamDecoder(): catch unknown CSN_CHOICE values
* tests/rlcmac: mark Packet Polling Request as malformed
* csn1: fix existNextElement(): use bitvec_get_bit_pos()
* tests/rlcmac: additionally match debug output of the CSN.1 codec
* csn1: get rid of C++ specific code, compile with GCC
* csn1: fix csnStreamDecoder(): do not subtract no_of_bits twice
* csn1: fix csnStreamDecoder(): always keep remaining_bits_len updated
* csn1: fix csnStreamDecoder(): update bit_offset in CSN_EXIST{_LH}
* csn1: bitvec_get_uint() may return a negative, use %d
* csn1: use proper format specifier for unsigned integers
* gsm_rlcmac: fix misleading LOGP statement in decode_gsm_ra_cap()
* tests/rlcmac: fix malformed MS RA capability in testRAcap()
* tests/rlcmac: also verify encoding of MS RA Capability
* tests/rlcmac: add a new test vector for Packet Resource Request
* csn1: fix csnStreamDecoder(): skip bits unhandled by serialize()
* tests/rlcmac: also enable logging for DRLCMACDATA category
* rlcmac: fix encode_gsm_*(): do not suppress encoding errors
* csn1: fix: do not return 0 if no bits left in the buffer
* BSSGP: cosmetic use OSMO_IMSI_BUF_SIZE from libosmocore
* BSSGP: fix: properly encode P-TMSI in RR Paging Request
* pdch: fix packet_paging_request(): properly print paging MI
* pdch: cosmetic: use GSM_MI_TYPE_* constants from libosmocore
* fix: properly include pure C headers from C++ code
* l1if: fix pcu_rx_rach_ind(): use proper format string specifiers
* sba: fix possible memleak in SBAController::alloc()
* TBF/UL: fix rcv_data_block_acknowledged(): print the actual TLLI
* fix egprs_mslot_class_from_ra(): multislot class may not be present
* l1if: fix: s/pcu_rx_rach_ind_pdtch/pcu_rx_rach_ind_ptcch/g
* csn1: fix M_CHOICE: restirct maximum length of the choice list
* csn1: fix csnStreamEncoder(): also check length of the choice list
* csn1: fix csnStreamEncoder(): always check the choice index
* csn1: fix: never use enumerated types in codec structures
* encoding: cosmetic: use RLC_MODE_ACKNOWLEDGED where possible
* RLC/MAC: implement decoding of EGPRS Packet Channel Request
* encoding: fix write_ia_rest_egprs_uplink_sba(): add missing CHECK(rc)
* doc/manuals: fix typo in overview.adoc: s/Omsocom/Osmocom/g
* bts: refactor handling and parsing of RACH.ind
* BTS::parse_rach_ind(): properly handle EGPRS Packet Channel Request
* bts: add send_gsmtap_rach(), also send PTCCH/U over GSMTAP
* bts: fix send_gsmtap_rach(): properly pack 11 bit RA
* bts: cosmetic: use DUMMY_VEC for padding where possible
* encoding: drop log_alert_exit(), use OSMO_ASSERT() instead
* encoding: assert() presence of Downlink TBF
* direct-phy: fix handle_ph_ra_ind(): handle PH-RA.ind on PRACH SAPI
* debian/control: change maintainer to the Osmocom team / mailing list
* pcu_l1_if: use proper format specifier for PCUIF version
* pcu_l1_if: constify the argument of pcu_rx_info_ind()
* pcu_l1_if: cosmetic: rename both 'trx'/'ts' to 'trx_nr'/'ts_nr'
* pcu_l1_if: cosmetic: move struct 'gprs_rlcmac_pdch' into the for loop
* pcu_l1_if: cosmetic: correct error message in pcu_rx_info_ind()
* gsm_rlcmac: use consistent naming for [Extended] Packet Timing Advance
* tbf: cosmetic: use GSM_MACBLOCK_LEN where possible
* tbf: allocate the bitvec on stack in create_{dl,ul}_ass()
* encoding: constify 'tbf' in UL/DL assignment functions
* encoding: do not encode out of range Timing Advance values
* encoding: fix RRBP field in write_packet_uplink_assignment()
* encoding: use bool for use_egprs in write_packet_uplink_assignment()
* encoding: pass pdch slot directly to encoding functions
* encoding: clarify docstring for write_packet_downlink_assignment()
* encoding: use CSN.1 codec to generate Packet Uplink Assignment
* encoding: implement handing of hopping parameters
* encoding: fix gen_freq_params(): do not check pdch twice
* pcuif_proto: version 10: add frequency hopping parameters
* pcu_l1_if: cosmetic: use ARRAY_SIZE() in pcu_rx_info_ind()
* pcu_l1_if: correct logging level in pcu_rx_info_ind()
* pcu_l1_if: cosmetic: make {local,remote}_sockaddr scoped variables
* pcu_l1_if: use proper format string specifiers: %d -> %u
* pcu_l1_if: print NSVC address in more common format
* gprs_bssgp_pcu: make osmo_sockaddr local/sgsn arguments const
* gprs_bssgp_pcu: fix possible memleak in gprs_nsvc_create_and_connect()
* struct gprs_rlcmac_bts: remove unused 'nsei' field
* gprs_bssgp_pcu: fix: do not crash on receipt of subsequent INFO.ind
* doc/manuals: (re-)generate XML VTY reference automatically
* fix tbf_select_slot_set(): use LOGP() instead of LOGPC()
* main: remove line breaks in print_help(), increase spacing
* main: add --vty-ref-mode, use vty_dump_xml_ref_mode()
* BSSGP: use tlvp_val8() in gprs_bssgp_pcu_rx_paging_cs()
* BSSGP: constify argument 'tp' of gprs_bssgp_pcu_rx_paging_{cs,ps}
* TLLI 0x00000000 is a valid TLLI, use 0xffffffff instead
* gprs_rlcmac_sched: fix incorrect SBA frame number assignment
* bts: fix uninitialized memaccess in BTS::send_gsmtap_rach()
* bts: fix uninitialized memaccess in BTS::send_gsmtap()
* tests/rlcmac: add more test vectors for Packet Resource Request
* contrib/osmo-pcu.spec.in: require libosmo* version 1.4.0
* contrib/osmo-pcu.spec.in: add missing libosmoctrl dependency
* vty: register libosmocore's FSM introspection commands
[ Anders Broman ]
* csn1: Update M_NULL CSN_DESCR to match wireshark
* csn1: packet-csn1.c:179: warning: 'pui8' may be used uninitialized in this function
* csn1: Fix warning with -Wmissing-prototypes
* csn1: Try to fix cast discards '__attribute__((const))' qualifier from pointer target type
* gsm_rlcmac.cpp: hanged all M_BIT macros to M_UINT, as M_BIT does not use the referenced hf.
[ Jeff Morriss ]
* csn1: shuffle decrements of remaining_bits_len
[ Pascal Quantin ]
* csn1: Fix an infinite loop in CSN.1 dissector when having more than 255 padding bits
* gsm_rlcmac.h: Remove Uplink messages from the RlcMacDownlink_t structure
* gsm_rlcmac: Enhance dissection of PSI1
* gsm_rlcmac.cpp: Do not skip too many lines of the CSN_DESCR when the field is missing
* gsm_rlcmac.cpp: fix an out of bounds access
* gsm_rlcmac.cpp: fix another global-buffer-overflow error reported by ASAN
* gsm_rlcmac.cpp: fix global-buffer-overflow error reported by ASAN
[ Guy Harris ]
* csn1: Don't cast away constness
[ Alexis La Goutte ]
* csn1: fix this statement may fall through [-Werror=implicit-fallthrough=] found by gcc7
[ Bill Meier ]
* gsm_rlcmac.h: #if 0 unused stuff
[ Gerald Combs ]
* gsm_rlcmac.h: Make sure we have a corresponding 'u' member to RlcMacDownlink_t for every call
[ Vincent Helfre ]
* gsm_rlcmac: add dissection of NAS container
* gsm_rlcmac: improve dissection of MS RA Capability IE
[ AndersBroman ]
* gsm_rlcmac: Update : PACKET RESOURCE REQUEST to Release 14.0.0
[ Keith ]
* Send UL-CTRL Packet to GSMTAP even if we fail to decode.
* Don't check ul_control_block before decoding into it.
[ Harald Welte ]
* csn1.c: Almost all of the logging is DEBUG, not NOTICE
* TODO: remove those that have obviously been implemented 5+ years ago
* bts.cpp: Increase constructor priority
* Use osmo_fd_setup() whenever applicable
* Use osmo_fd_*_{disable,enable}
* gb manual: 08.16 -> 48.016 / 08.18 -> 48.018
* gb manual: NS is implemented in libosmogb, not libosmocore
* manuals/gb/ns.adoc: Update documentation regarding SNS capability
* migrate to DLBSSGP as log sub-system for BSSGP
[ Eric ]
* configure.ac: fix libtool issue with clang and sanitizer
* tbf: add virtual destructor
[ Philipp Maier ]
* gprs_debug: Use only LOGL_NOTICE as default loglevel
* vty: add attributes to VTY commands indicating when they apply
* pcu_main: add commandline option --vty-ref-xml
* gprs_bssgp_rim: add serving BSS NACC application
[ Oliver Smith ]
* contrib: import RPM spec
* contrib: integrate RPM spec
* Makefile.am: EXTRA_DIST: debian, contrib/*.spec.in
* contrib/jenkins: don't build osmo-gsm-manuals
* configure.ac: set -std=gnu11
[ Neels Hofmeyr ]
* use new osmo_mobile_identity api (avoid deprecation)
* paging: pass struct osmo_mobile_identity, not encoded IE bytes
[ Alexander Couzens ]
* pcuif_proto: version 0xa: add support for IPv6 NSVCs
* Revert "pcuif_proto: version 0xa: add support for IPv6 NSVCs"
* pcuif_proto: version 10: add support for IPv6 NSVCs
* Use the new NS2 lib
* Rework NS configuration over the info indication
* pcu_l1_if: fix misaligned assignment of remote address
* NS2: follow the change of ownership
* gprs_bssgp_pcu: follow ns2 library changes
* NS2: rework handling of unknown primitive
* ns2: follow ns2 dialect changes
* ns2: follow changes to add a unique name to all binds
* ns2: follow ns2 sns api changes
* gprs_ns2: set default dialect to ipaccess
* gprs_rlcmac_sched: don't leak a sched_dummy()
* gprs_rlc_ts_alloc: ensure no rolling slots are allocated
* follow gprs_ns2 API enum changes
* gprs_ns2: migrate to the new vty syntax
* gprs_bssgp: rework and rename ns_create_nsvc -> ns_configure_nse
* gprs_bssgp: rename gprs_ns_config -> gprs_ns_update_config
* gprs_bssgp: use gprs_ns2_sns_add_bind() to allow the NSE to use the binds for IP-SNS configuration
-- Pau Espin Pedrol <pespin@sysmocom.de> Tue, 23 Feb 2021 14:41:00 +0100
osmo-pcu (0.8.0) unstable; urgency=medium
[ Alexander Couzens ]
* tests: test encoding of egprs ul ack/nacks
* tbf_dl: add comments to the scheduler
* encoding: fix space, tabs
[ Vadim Yanitskiy ]
* osmobts_sock.cpp: pcu_sock_cb(): use libosmocore's socket API
* osmobts_sock.cpp: pcu_sock_read(): use stack buffer, not heap
* osmobts_sock.cpp: pcu_sock_read(): further simplify the code
* osmobts_sock.cpp: do not print the same debug message twice
* VTY: refactor pcu_vty_show_ms_all(): use show_ms()
* VTY: fix command 'show tbf all': properly filter TBFs
* BSSGP: do not reject SUSPEND ACK / NACK messages
* BSSGP: properly print BVCI for signalling messages (BVCI=0)
* tests/tbf: suspend warnings about the link quality measurements
* GprsMs::update_cs_ul(): clarify the meaning of old_link_qual
* gprs_bssgp_destroy(): fix memleak and NULL-pointer dereference
* PTCCH: implement basic message codec and API
* PTCCH: properly handle RTS.req for PCU_IF_SAPI_PTCCH
* pcuif_proto.h: extend RACH.ind with TRX / TS numbers
* PTCCH: properly handle RACH.ind for PCU_IF_SAPI_PTCCH
* VTY: add warning about changing PCU socket path at run-time
* VTY: cosmetic: use osmo_talloc_replace_string()
[ Pau Espin Pedrol ]
* cosmetic: tbf: Rename T and N arrays
* Use proper API osmo_timer_setup() to set up timer struct
* Introduce osmo_tdef infra and timer VTY commands
* bts.cpp: Fix osmo_tdef initialization on older g++ compilers
* Use osmo_tdef for BSSGP T1 and T2
* Use osmo_tdef to implement T3190
* tests: TbfTest: Unify stderr and stdout to ease debugging
* Use osmo_tdef to implement ms-idle-time
* Use osmo_tdef to implement dl-tbf-idle-time
* pdch.cpp: Refactor bitvec param passing in rcv_control_block
* pdch.cpp: Use pcu_l1_meas previously filled by lower layers
* cosmetic: fix whitespace
* Move out tbf subclasses from tbf.h to their own headers
* Move tbf_{dl,ul} child constructors to respective .cpp files
* tbf_dl: Setup m_llc_timer in constructor using osmocom API
* tbf_dl.cpp: Remove dup call to tbf_update_ms_class() in state GPRS_RLCMAC_WAIT_RELEASE
* vty: Fix osmo_tdef timers not listed in write config
* Log RACH Requests using GSMTAP
* Log AGCH and PCH blocks using GSMTAP
* pcu_l1_if.cpp: Fix GSMTAP Imm Assign PCH wrong encoding
* pcu_l1_if.cpp: Drop unneeded byte in Imm Ass PCH buffer
* pcu_l1_if.cpp: Imm Assign PCH: clarify size of different items
* pcu_l1_if.cpp: Replace value 23 with libosmocore's GSM_MACBLOCK_LEN
* Fix assertion hit upon CCCH Paging Request
* doc: vty: Update osmo-pcu_vty_reference.xml
* Clarify (M)CS related VTY attributes
* Remove dash from name used in VTY cmd prompt
* tbf_dl.cpp: Fix typo in log line
* pcu_l1_if: Check pag_req id_lv len fits buffer
* prs_bssgp_pcu.cpp: Mark priv funcs as static and remove trailing whitespace
* Fix trailing whitespace
* fix typo in log message
* Log BVCI PTP value upon msg recv
* Split identity_lv param into mi+mi_len
[ Oliver Smith ]
* doc: update generated VTY reference
* tbf_dl: make preemptive retransmission optional
* Forward ETWS Primary Notification to MS
* tests/app_info: fix compiling with older g++
* configure.ac: set C and C++ dialects
[ Harald Welte ]
* manual: Fix copy+paste error
* manual: Fix documentation missing "-D" command line option
* manual: Add missing documentation for '-i' command line option
-- Pau Espin Pedrol <pespin@sysmocom.de> Fri, 03 Jan 2020 19:40:02 +0100
osmo-pcu (0.7.0) unstable; urgency=medium
[ Rafael Diniz ]
* Added support for daemonize to osmo-pcu.
* Fix help message formatting of osmo-pcu.
[ Max ]
* Don't install pcuif_proto.h header
* Move C include to proper place
* Add define for dummy burst string
* Add encoding tests for Immediate Assignment
* Clarify write_immediate_assignment() signature
* Restructure IA Rest Octets encoders
* Rewrite Packet Downlink Assignment
* Rewrite EGPRS Packet Uplink IA Rest Octets for MBA
* Rewrite EGPRS Packet Uplink IA Rest Octets for SBA
* MCS: internalize 'family' parameter
* EDGE tests: reduce code duplication
* MCS: remove dead code
* EDGE tests: remove no-op check
* Use msgb_eq_data_print() in tests
* Tighten lqual table limits check
* Enable LGLOBAL logging for TBF tests
* Log (M)CS UL update errors
* MCS: move Coding Scheme enum outside of class definition
* Make get_retx_mcs() into regular function
* MCS: remove unused function
* Debian: bump copyright year
* Use unique NSEI/BVCI/NSVCI in TBF tests
* MS store: move test helper to unit test
* Explicitly clean up BTS singleton
* MCS: move HeaderType enum outside of class definition
* MCS: use value_string for conversion
* TBF-DL: log MCS as string
* Fix TA index encoder
* MCS: move Mode enum outside of class definition
* MCS: add mcs_is_*() helpers
* MCS: add Channel Coding Command encoder
* Fix Channel Coding Command for MCS
* Rewrite Packet Uplink IA Rest Octets for MBA
* Rewrite Packet Uplink IA Rest Octets for SBA
* Use Timing Advance Index in UL assignments
* TBF: update MCS counters
* TBF-DL: cosmetic update for helper routines
* Update IA Rest Octets encoding
* TS alloc: expand tests log
* vty: add commands to show TBF of a certain kind
* Update MCS selection for retransmission
* cosmetic: use const pointer for bts_data
* Add test for MS mode and (M)CS settings
* Use libosmocore for IMSI parsing
[ Harald Welte ]
* Mark gprs_ns_reconnect() as static (not used outside of C file)
* Optionally Use the NS Sub-Network-Service (SNS) on Gb
* pcu_l1_if: Fix erroneous endian-swapping of the CellID
* Forward GPRS SUSPEND REQ from BTS to SGSN using BSSGP
* gprs_debug: Use named initializers and explicit array indicies
* bssgp: Fix dead code: PDUT_STATUS can never reach this part
[ JF Dionne ]
* encoding: Fixes TMSI vs MI bit selection in repeated page info
[ Oliver Smith ]
* tests: use -no-install libtool flag to avoid ./lt-* scripts
* debian: create -doc subpackage with pdf manuals
* contrib/jenkins.sh: run "make maintainer-clean"
[ Daniel Willmann ]
* Include pdch.h in bts.h even if we're not compiling C++
* oc2g: Remove custom alarms
* oc2g: Change log type (Litecell15->Oc2g)
* jenkins.sh: Add oc2g build support
* manuals: Add script to regenerate vty/counter documentation
* manuals: Update VTY documentation
[ Jean-Francois Dionne ]
* Initial commit for OC-2G support.
[ Minh-Quang Nguyen ]
* OC-2G: Fix missing header
* OC-2G: Fix TA adjustment
* OC-2G: Always use positive TA information provided in PH-RA-IND
[ Alexander Couzens ]
* gprs_bssgp_pcu: make gprs_bssgp_ns_cb public
* gprs_bssgp_pcu: explicit allocate & initialize bssgp_nsi instance
* encoding: correct encoding of CRBB in ACK/NACK when not byte aligned
* encoding: use `/* */` for comments instead of `#if 0 #endif`
* egprs_rlc_compression: fix white spaces
* tests/BitcompTest: fix wording in log message
* rlc: replace int with uint16_t
* Encoding: drop struct gprs_rlcmac_bts* from all functions
* decompress_crbb: add length argument for search_runlen
* Encoding: write_packet_ack_nack_desc_egprs: don't use a reference for rest_bits
* bts.cpp: ensure left-shift operation does not exceed uint32_t
* Encoding: use uint16_t when interacting with the window object
* Encoding: ACK/NACK: always encode with length field present
[ Keith ]
* Cosmetic: Osmcoom -> Osmocom
[ Vadim Yanitskiy ]
* src/pcu_l1_if.cpp: fix: properly pass measurements from PCUIF
* gprs_bssgp_pcu_rx_dl_ud(): fix: BSSGP_IE_IMSI is optional
* gprs_bssgp_pcu.cpp: check return code of gsm48_mi_to_string()
* gprs_bssgp_pcu_rx_dl_ud(): use OSMO_IMSI_BUF_SIZE
[ Thorsten Alteholz ]
* fix spelling errors detected by lintian
[ Eric Wild ]
* ubsan: fix shift
[ Pau Espin Pedrol ]
* Remove undefined param passed to {logging,osmo_stats}_vty_add_cmds
* Require newer libosmocore to avoid compile failures
-- Pau Espin Pedrol <pespin@sysmocom.de> Wed, 07 Aug 2019 21:09:53 +0200
osmo-pcu (0.6.0) unstable; urgency=medium
[ Harald Welte ]
* debian/rules: Don't overwrite .tarball-version
* gprs_rlcmac_received_lost(): Fix regression / uninitialized now_tv
* initial checkin of manuals to public repo
* Add link to Asciidoc source code of manual
* Initial place-holder for the new Gb/IP interface documentation
* Gb message sequence chart: flip sides (SGSN should be right)
* Gb message sequence chart: Add notion of PCU unix domain socket
* Gb: Various spelling fixes
* gb: Some language improvements, formatting changes
* consistently use '3GPP TS' not sometimes 3GPP TS and sometimes TS.
* gb/NS: Clarify the language regarding the UDP port numbers / socket
* vty-ref: Update URI of docbook 5.0 schema
[ Pau Espin Pedrol ]
* Cleanup of systemd service files
* configure.ac: Set CXXFLAGS during --enable-sanitize
* Install systemd services with autotools
* Move examples/ to doc/examples/
* Install osmo-pcu.cfg to docdir/examples
* Allow easily disabling GFDL references
[ Stefan Sperling ]
* check for overlong unix socket paths
[ Max ]
* deb: add missing copyright file
* OsmoPCU: fix Gb documentation front page
* OsmoPCU: expand NS documentation
* OsmoPCU: expand BSSGP documentation
* OsmoPCU: add MSC chart
[ Neels Hofmeyr ]
* Importing history from osmo-gsm-manuals.git
* make clean: also remove generated image files
* add 'make check' target
* fix 'make clean': shell glob, ignore failure
* refactor Makefile build rules, don't use the FORCE
[ Jonathan Brielmaier ]
* fix various typos across all manuals
[ Philipp ]
* configuration: fixing typos
[ Alexander Couzens ]
* OsmoPCU: add rate counter documentation
[ Daniel Willmann ]
* Change OpenBSC mentions to OsmoBSC where applicable
[ Oliver Smith ]
* build manuals moved here from osmo-gsm-manuals.git
* Fix DISTCHECK_CONFIGURE_FLAGS override
* contrib/jenkins.sh: build and publish manuals
* contrib: fix makedistcheck with disabled systemd
-- Harald Welte <laforge@gnumonks.org> Mon, 21 Jan 2019 19:03:52 +0100
osmo-pcu (0.5.1) unstable; urgency=medium
[ Harald Welte ]
* Don't register SIGHUP handler without actually handling SIGHUP
[ Pau Espin Pedrol ]
* tbf: Fix memset(0) on object with no trivial copy-assignment
* rlc: Fix memset(0) on object with no trivial copy-assignment
* jenkins.sh: use flag --enable-werror for sysmo and none
* tbf: Use incrementing id for rate_ctr_group_alloc
* tbf: Replace '.' in counter names with ':'
[ Stefan Sperling ]
* fix a one-byte stack buffer overrun in osmo-pcu
* read monotonic clock with clock_gettime() instead of gettimeofday()
* fix time-delta calculations for measurement reports
* change log level of "DL packet loss" log messages
* check bssgp_tlv_parse() return code in gprs_bssgp_pcu_rcvmsg()
-- Pau Espin Pedrol <pespin@sysmocom.de> Fri, 27 Jul 2018 21:56:38 +0200
osmo-pcu (0.5.0) unstable; urgency=medium
[ Neels Hofmeyr ]
* jenkins: use osmo-clean-workspace.sh before and after build
* vty: skip installing cmds now always installed by default
* implement support for 3-digit MNC with leading zeros
* configure: add --enable-werror
* mslot_class: find_free_tfi(): use uint32_t to shift 1 << 31
* mslot_class: two more: use uint32_t to shift 1 << 31
* Revert "Use Timing Advance Index in UL assignments"
* Revert "Rewrite Packet Uplink Assignment"
* Revert "Rewrite Packet Downlink Assignment"
* configure: fix --enable-sysmocom-dsp and --with-sysmobts flags
* configure: properly quote CFLAGS in lc15 check
* Revert "Rewrite EGPRS Packet Uplink Assignment"
* use osmo_init_logging2() with proper talloc ctx
[ Minh-Quang Nguyen ]
* PCU: Fix TA adjustment
* PCU: display TA information in TBF stats
[ Max ]
* Remove unused parameter
* Move multislot table to separate file
* Replace '.' in counter names with ':'
* Fix compiler warning
* TBF: log timer override
* TBF: fix compiler warning in test
* TBF: expand timer logging
* vty: print class and TBFs for each MS
* DL window: constify resend_needed() function
* TBF: move EGPRS enablement into (U|D)L-TBF
* TBF-DL: fix misleading idle time check
* TBF: remove unused variable
* Remove unused includes and forward declarations
* Fix tests after rate_ctr change
* Introduce LOGTBF* for consistent logging
* TBF: implement independent T31xx timers
* TBF: add N3101 counter
* Fix warnings
* Add function to get max supported MS class
* Add --enable-sanitize configure option
* Enable sanitize for CI test
* Add tests for pcu_lsb()
* Add optional profiling support
* TBF: unify timer handling
* TBF: log timer invocation source
* TBF: bail out for unknown timers
* Fix llc_queue_size() type
* TBF-DL: mark rcvd_dl_ack() parameters as boolean
* window: move encoding into functions
* cosmetic: clarify coding scheme and puncturing
* Make TBF state private
* TBF: cleanup state flag handling
* Clarify RACH-related interfaces
* TBF-UL: add simpler test helper
* Avoid code duplication in TBF test
* TBF: move window parameters to UL/DL level
* TBF-DL: move priority computation into function
* TBF: unify EGPRS window calculation
* Don't access TBF internals in vty functions
* Fix jenkins.sh to match jenkins job axis filter
* Allocate global context for TypesTest
* Fix sanitizer build
* Rewrite EGPRS Packet Uplink Assignment
* Rewrite Packet Downlink Assignment
* Rewrite Packet Uplink Assignment
* Use Timing Advance Index in UL assignments
* Allow specifying sysmocom headers explicitly
* TBF: log source of state transitions
* jenkins.sh: Disable building doxygen for deps
* Set V_N and V_B to known initial state
* TBF: add dedicated log categories
* TBF: make UL/DL state internal
* TBF: make UL ack state internal
* TBF: make poll state internal
* TBF: adjust test log levels
* Add tests for find_multi_slots()
* AllocTest: adjust test_alloc_b()
* AllocTest: expand test output
* AllocTest: remove assumption on max MS class
* Add multislot classes from latest spec
* cosmetic: fix whitespace issue with include files
* TBF: decrease L1 logging verbosity in test
* TBF: override send function via linker option
* Simplify TS alloc: adjust allocator signatures
* Simplify TS alloc: fix allocation calls
* Simplify TS alloc: avoid TS reassignment
* Simplify TS alloc: use defines for constants
* Simplify TS alloc: adjust function signatures
* TS alloc: print suggested TRX on allocation errors
* Simplify TS alloc: internalize TRX check
* TBF: decrease logging verbosity for traffic
* TBF: add helpers for assignment type handling
* TBF: show assignment kind in vty
* vty: drop unused function
* RACH: improve single block detection
* TBF: move common test code into functions
* emu: use libosmocore definitions
* Use explicit type for pcu_lsb()
* Move paging generation into PDCH
* Move include guard to the top
* Update header includes
* Simplify TS alloc: split off RX mask computation
* Simplify TS alloc: separate capacity computation
* Simplify TS alloc: split allocation
* Simplify TS alloc: split USF/UL allocation
* Move PDCH-related functions into separate files
* Simplify TS alloc: don't use PDCH for free TFI
* Simplify TS alloc: constify max dl slot func
* TBF: make network counters internal
* Simplify TS alloc: move slot assignment
* Simplify TS alloc: move slot check into functions
[ Pau Espin Pedrol ]
* Print error cause of pcu socket connect failure
* gprs_bssgp_pcu.cpp: Comment unused function parse_ra_cap
[ Stefan Sperling ]
* Make osmo-pcu wait for BTS to become available at start-up time.
* improve documentation of Encoding::write_paging_request()
[ Alexander Couzens ]
* pcuif_proto.h: fix whitespaces and indention
* pcuif_proto: add version 8 features
[ Philipp Maier ]
* cosmetic: remove runaway semicolon
* pcu_l1_if: add frame number to log output
* tbf: add frame number to log output
-- Pau Espin Pedrol <pespin@sysmocom.de> Thu, 03 May 2018 16:20:00 +0200
osmo-pcu (0.4.0) unstable; urgency=medium
[ Holger Hans Peter Freyther ]
* Initial release.
[ Max ]
* Use value string check from osmo-ci
* cosmetic: tighten direct-phy related code
* Support receiving SI13 from BTS
* Move gsmtap and accounting into separate function
* cosmetic: convert explicit warnings to fixme/todo
* Assert valid CS
* TBF-DL: extend index check for RLC block copy
* TS alloc: properly count UL slots
* cosmetic: reformat multislot classes table
[ Philipp Maier ]
* gb: allow only packets from a specific SGSN
[ Harald Welte ]
* tests: Don't use private version of log_info but global gprs_log_info
* Call osmo_init_logging() before static BTS constructor
* Forward GPRS SUSPEND REQ from BTS to SGSN using BSSGP
* Debian: Cosmetic changes to control file; add better Description
* Debian: print test results in case of failure + clean-up autotest
* Debian: migrate from DEB_BUILD_HARDENING to DEB_BUILD_MAINT_OPTIONS
* Debian: upgrade to debhelper 9 / Standards 3.9.8
-- Harald Welte <laforge@gnumonks.org> Sun, 29 Oct 2017 12:03:05 +0100
osmo-pcu (0.3.0) UNRELEASED; urgency=medium
* Initial release.
-- Holger Hans Peter Freyther <holger@moiji-mobile.com> Fri, 01 Apr 2016 18:59:00 +0200