CI: Add silent cmake SonarCloud scan
[ric-plt/lib/rmr.git] / CHANGES_CORE.txt
index 997dd77..d9d4794 100644 (file)
@@ -2,9 +2,215 @@
 # core RMR code and doc.  Other change files exist for other
 # things.
 
-# API and build change  and fix summaries. Doc correctsions
+# API and build change  and fix summaries. Doc corrections
 # and/or changes are not mentioned here; see the commit messages.
 
+2023 Dec 13; version 4.9.4
+    same as 4.9.3
+
+2023 Dec 12; version 4.9.3
+    Fixes for CVE-2023-40998 (RIC-989) and CVE-2023-40997 (RIC-991)
+    related to incorrect parsing of RMR messages
+
+2023 Oct 4; version 4.9.2
+    Fixes some stability issues seen during route table update.
+    Dont allow clean old_rtable until it's reference count is really 0.
+    Added more faster recognition for connect failure so route table
+    update will not stuck so long in preparing new rtable.
+       rtgate lock is not needed to init and destroy continouosly.
+
+2023 May 28; version 4.9.1
+        Fixes IPv6 support for binding to IPv6 interfaces (RIC-985)
+
+2023 Feb 14; version 4.9.0
+        Added new message type for RIC subscription delete required
+
+2022 Nov 10; version 4.8.5
+        Fixes for errors detected by source code scanning
+
+2022 May 11; version 4.8.3
+        Added config transfer related message types (RIC-638)
+
+2022 January 17; version 4.8.2
+       Fixes routing statistics printout crash (RIC-872).
+
+2022 January 7; version 4.8.1
+       Re-enables RMR libary's module tests (RIC-861).
+       Creates a new unit test for the debugging rmr rx queue API.
+       Fixes some bugs and possible memory likeage in SI95 code.
+
+2021 December 2; version 4.8.0
+       Fixing memory leak in python support function (RIC-858).
+       New API added for debugging rmr rx queue (RIC-838).
+
+2021 April 22; version 4.7.4
+       Beef up unit testing in SI package and fix a few static analysis
+       bugs. (RIC-777)
+
+2021 April 19; version 4.7.3
+       Correct flag check bug in route table functions (RIC-777).
+
+2021 April 9; version 4.7.2
+       Ensure that route table update received from route generator is not
+       applied before a full route table is received.
+
+2021 April 2; version 4.7.1
+       Correct issues found during static code analysis.
+
+2021 March 31; version 4.7.0
+       The route table collector thread will capture the current "offering"
+       from the Route Manager (table generator) if the RMR_SEED_RT environment
+       variable is set.
+
+2021 March 10; version 4.6.1
+       Corrected unit test "framework" to make manual testing easier, and to
+       add the ability to set the code optimisation level via the CMake
+       command line parameter OPT_LEVEL=n.
+
+2021 February 22; Version 4.6.0
+       Enhanced to use millisecond based timestamps when writing log messages.
+       (RIC-627)
+
+       Enhanced to eliminate the  reqirement that the file specified by the
+       RMR_VCTL_FILE environment variable exist when RMR is initialised. RMR
+       will correctly find this file if it is created after initialisation.
+       Further, if the environment variable is not given, the user may create
+       and populate /tmp/rmr.v at any time and the contents of this file will
+       be used as if it were supplied via the environment variable. This should
+       make debugging in existing containers easier.
+
+       Enhanced to send an alarm manager when the user application is not
+       receiving messages fast enough.  The original messages written to
+       the standard error are still generated. (RIC-204)
+
+2021 January 21; Version 4.5.2
+       Fixes the excessive TCP session bug when sending to a slow receiver
+       and a related segment fault because of too many open file descriptors.
+       (RIC-735)
+
+2021 January 19; Version 4.5.1
+       Version bump to work round a CI job bug preventing push of the 4.5.0
+       packages from staging to release in package cloud.  (RIC-732)
+
+2021 January 8; Version 4.5.0
+       Version bump for next release tracking.
+       Corrected a potential locking issue in message allocation. (RIC-732)
+
+2020 December 4; Version 4.4.6
+       Correct a range check bug when cloning a route table in prep
+       to load a new one. (RIC-720)
+
+2020 November 17; Version 4.4.5
+       Correct bug in round robin group allocation that could lead to
+       an empty group. (RIC-695)
+
+2020 November 13; Version 4.4.4
+       Correct address memory leak in the RTE cleanup. (RIC-674)
+
+2020 November 4; Version 4.4.3
+       Correct bug introduced with race fix (4.4.0) (RIC-674)
+
+2020 November 4; Version 4.4.2
+       Changes to correct more complaints generated by a code scan. (RIC-673)
+       Also addressed some sonar coverage issues with unit test changes.
+
+2020 November 4; Version 4.4.1
+       Changes to correct complaints generated by a code scan. (RIC-673)
+
+2020 November 4; Version 4.4.0
+       Changes to address a potential race condition when route tables
+       arrive in quick succession.  (RIC-674)
+
+2020 October 30; Version 4.3.1
+       Changes to address code analyser scans and two bug fixes identified
+       while addressing the analysis data. (RIC-673)
+
+2020 October 2; Version 4.3.0
+       Add message types for traffic steering anomaly messages
+
+2020 September 15; Version 4.2.4
+       Add man page for the rmr_set_low_latency() function (RIC-631)
+
+2020 September 15; Version 4.2.3
+       Correct arg processing bug in rmr_rpobe (RIC-645)
+
+2020 August 4; Version 4.2.2
+       Correct bug in the rmr_probe support utility when -r option is used
+       on the command line (RIC-644)
+
+2020 August 4; Version 4.2.1
+       Add additional environment variable dump if RMR_LOG_VLEVEL set to
+       4 at start.
+
+2020 August 3; Version 4.2.0
+       Add support for the RMR_RTREQ_FREQ environment variable to control
+       the request frequency for a new route table (default 5s if not
+       supplied).  (RIC-630)
+
+2020 July 21; Version 4.1.4
+       Fix bug in SI95 -- possible use of pointer after free (RIC-626).
+
+2020 July 9; version 4.1.3
+       Allow RTS messages to be sent before the arrival of the initial
+       route table. Calls to RTS (heart beat responses) prior to the
+       initial route table load could cause a crash if a framework
+       blindly assumes that RTS is valid. (RIC-589)
+
+2020 June 22; version 4.1.2
+       Fix typo in RIC Message header file.
+
+       Add document for message type constants and the scripts
+       which generate them.
+
+2020 June 22; version 4.1.1
+       Add new message types to RIC header file for
+               RIC_ALARM           (110)
+               RIC_ALARM_QUERY     (111)
+               RIC_METRICS         (120)
+               RAN_E2_RESET_REQ    (12008)
+               RAN_E2_RESET_RESP   (12009)
+
+2020 June 18; version 4.1.0
+       Bump version minor to move away from 4.0.* which will bump for any
+       patches applied back to bronze.
+
+       Add magic C++ goo to symtab header file allowing C++ xAPPs to use
+       the symbol table directly.
+
+2020 May 06; version 4.0.5
+       Fix the bug in SI95 receive message management semaphore count
+       issue. (RIC-355)
+
+2020 April 29; version 4.0.4
+       Fix the traffic steering message type constants (again) (RIC-342)
+
+2020 April 28; version 4.0.3
+       Fix sonar flagged bugs (RIC-78)
+
+2020 April 24; version 4.0.2
+       Correct bug in SI95 transport header length validation (RIC-341)
+
+2020 April 22; version 4.0.1
+       Correct message type constant for Traffic Steering predication (RIC-342)
+
+2020 April 21; version 4.0.0
+       The NNG based libraries are no longer included in the RMR packages.
+       This is considered a breaking change as NNG will not be supported by
+       default.  It is still possible to build with RMR-NNG libraries, but
+       that is the exception.  The API between 3.8.2 and 4.0.0 is the SAME.
+       Upgrading to 4.0.0 only means that the underlying transport mechanism
+       is limited only to SI95.
+
+       The rmr_rcv_specific() function has been deprecated as it was necessary
+       only for NNG and Nanomsg support.  Its use should be discontinued.
+
+2020 April 20; version 3.8.2
+       Fix bug which was preventing an instance receiving dynamic route
+       table updates. (RIC-336)
+
+2020 April 20; version 3.8.1
+       Add user guide which replaces the concatenation of man pages (RIC-328)
+
 2020 April 17; version 3.8.0
        Add safe connect to avoid potential connect bug on Linux (RIC-332)
 
        Add ability to route messages based on the MEID in a message combined
        with the message type/subscription-ID.
 
-2019 November 14; version 1.11.1 (Amber)
+2019 November 14; version 1.11.1
        Fix bug in payload reallocation function; correct length of payload
        was not always copied.
 
 2019 November 13; version 1.12.1
        New message type constants added to support A1.
 
-2019 November 4; version 1.11.0 (Amber)
+2019 November 4; version 1.11.0
        Version bump to move away from the 1.10.* to distinguish between
        release A and the trial.