1 # this file should contain ONLY the changes related to the
2 # core RMR code and doc. Other change files exist for other
5 # API and build change and fix summaries. Doc correctsions
6 # and/or changes are not mentioned here; see the commit messages.
8 2020 July 9; version 4.1.3
9 Allow RTS messages to be sent before the arrival of the initial
10 route table. Calls to RTS (heart beat responses) prior to the
11 initial route table load could cause a crash if a framework
12 blindly assumes that RTS is valid. (RIC-589)
14 2020 June 22; version 4.1.2
15 Fix typo in RIC Message header file.
17 Add document for message type constants and the scripts
20 2020 June 22; version 4.1.1
21 Add new message types to RIC header file for
25 RAN_E2_RESET_REQ (12008)
26 RAN_E2_RESET_RESP (12009)
28 2020 June 18; version 4.1.0
29 Bump version minor to move away from 4.0.* which will bump for any
30 patches applied back to bronze.
32 Add magic C++ goo to symtab header file allowing C++ xAPPs to use
33 the symbol table directly.
35 2020 May 06; version 4.0.5
36 Fix the bug in SI95 receive message management semaphore count
39 2020 April 29; version 4.0.4
40 Fix the traffic steering message type constants (again) (RIC-342)
42 2020 April 28; version 4.0.3
43 Fix sonar flagged bugs (RIC-78)
45 2020 April 24; version 4.0.2
46 Correct bug in SI95 transport header length validation (RIC-341)
48 2020 April 22; version 4.0.1
49 Correct message type constant for Traffic Steering predication (RIC-342)
51 2020 April 21; version 4.0.0
52 The NNG based libraries are no longer included in the RMR packages.
53 This is considered a breaking change as NNG will not be supported by
54 default. It is still possible to build with RMR-NNG libraries, but
55 that is the exception. The API between 3.8.2 and 4.0.0 is the SAME.
56 Upgrading to 4.0.0 only means that the underlying transport mechanism
57 is limited only to SI95.
59 The rmr_rcv_specific() function has been deprecated as it was necessary
60 only for NNG and Nanomsg support. Its use should be discontinued.
62 2020 April 20; version 3.8.2
63 Fix bug which was preventing an instance receiving dynamic route
64 table updates. (RIC-336)
66 2020 April 20; version 3.8.1
67 Add user guide which replaces the concatenation of man pages (RIC-328)
69 2020 April 17; version 3.8.0
70 Add safe connect to avoid potential connect bug on Linux (RIC-332)
72 Change debugging in route table collector to avoid possible
73 segment fault when in level 2 debug (RIC-335)
75 2020 April 15; version 3.7.4
76 Add missing message type to header file (RIC-334)
78 2020 April 14; version 3.7.3
79 Fix bug in rmr_call() when using SI95 (RIC-333)
81 2020 April 10; version 3.7.2
82 Fix bug related to static route table only mode (RIC-331)
84 2020 April 9; version 3.7.1
85 The max length restriction for receiving messages when using SI95 has
86 been removed. The length supplied during initialisation is used as
87 the "normal maximum" and default buffer allocation size, but messages
88 arriving which are larger are accepted. (RIC-309)
90 2020 April 7; version 3.7.0
91 The health check support programme was renamed to rmr_probe (RIC-308).
93 2020 April 6; version 3.6.6
94 Correct bug in SI95 address conversion module (RIC-327)
95 Correct bug in SI initialisation module
97 2020 April 2; version 3.6.5
98 Correct potential nil pointer use when examining interfaces for
99 use as a listen target (RIC-307)
101 2020 April 1; version 3.6.4
102 Correct potential nil pointer use in the NNG interface (RIC-303)
103 Correct issue preventing CI build without a container
105 2020 March 30; version 3.6.3
106 Correct the max receive message size constant in rmr.h (RIC-301)
108 2020 March 23; version 3.6.2
109 Fix message initialisation bug when pulling a message from
112 2020 March 19; version 3.6.1
113 Fix problem with RPM package install
115 2020 March 18; version 3.6.0
116 Add message types to support traffic steering
118 2020 March 16; version 3.5.2
119 Correct bug in the meid table parser that prevented the
120 ack/nack of meid tables (RIC-273)
122 2020 March 10; version 3.5.1
123 Add missing health check message types.
125 2020 March 9; version 3.5.0
126 Added new wormhole send function: rmr_wh_call().
128 2020 March 6; version 3.4.0
129 Add new wormhole state function: rmr_wh_state().
131 2020 March 5; Version 3.3.1
132 Correct several "bugs" identified by automatic code analysis.
134 2020 March 4; Version 3.3.0
135 Add SI95 based unit testing
136 Health check support binary added (reason for minor bump)
138 2020 February 26; version 3.2.5
139 Fix source address bug in SI95 receive/send funcitons.
140 Fix threading issues involving session disconnection in SI95
141 Remove unused SI95 status variable.
143 2020 February 24; version 3.2.4
144 Fix meid bug (RIC-220) causing core dump.
146 2020 February 21; version 3.2.3
147 Add meid routing support to the SI95 interface.
149 2020 February 20; version 3.2.2
150 Fix receive thread related core dump (ring early unlock).
152 2020 February 19; version 3.2.1
153 Added missing message types (E2-Setup)
155 2020 February 18; version 3.2.0
156 Added support for new Route Manager and it's ability to accept
157 a request for table update.
159 2020 February 14; version 3.1.3
160 Fix bug in SIsend which was causing a core dump in some cases
161 where the application attempted to send on a connection that
162 had disconnected. (RIC-207).
164 2020 February 6; version 3.1.2
165 Fix disconnection detection bug in interface to SI95.
167 2020 January 31; verison 3.1.1
168 Allow route table thread logging to be completely disabled
169 when logging is turned off.
171 2020 January 26; verison 3.1.0
172 First step to allowing the user programme to control messages
173 written to standard error. Introduces the rmr_set_vlevel()
174 function, and related environment variable.
176 2020 January 24; verison 3.0.5
177 Fix bug in SI95 with receive buffer allocation.
179 2020 January 23; verison 3.0.4
180 Fix bug in SI95 causing excessive CPU usage on poll.
182 2020 January 22; verison 3.0.3
183 Enable thread support for multiple receive threads.
185 2020 January 21; verison 3.0.2
186 Fix bug in SI95 (missing reallocate payload function).
188 2020 January 20; verison 3.0.1
189 Enable support for dynamic route table updates via RMR session.
191 2020 January 16; version 3.0.0
192 Introduce support for SI95 transport library to replace NNG.
193 (RMR library versions will use leading odd numbers to avoid tag collisions
194 with the wrapper tags which will use even numbers.)
196 2019 December 9; version 1.13.1
197 Correct documentation and missing rel-notes update for RTD.
199 2019 December 6; version 1.13.0
200 Add ability to route messages based on the MEID in a message combined
201 with the message type/subscription-ID.
203 2019 November 14; version 1.11.1
204 Fix bug in payload reallocation function; correct length of payload
205 was not always copied.
207 2019 November 13; version 1.12.1
208 New message type constants added to support A1.
210 2019 November 4; version 1.11.0
211 Version bump to move away from the 1.10.* to distinguish between
212 release A and the trial.
214 2019 November 7; version 1.12.0
215 Version cut to support continued development for next release
216 preserving the 1.11.* versions for release 1 (Amber) and
219 2019 October 31; version 1.10.2
220 Provide the means to increase the payload size of a received message
221 without losing the data needed to use the rmr_rts_msg() funciton.
223 2019 October 21; version 1.10.1
224 Fix to prevent null message buffer from being returned by the timeout
225 receive function if the function is passed one to reuse.
227 2019 October 21; version 1.10.1
228 Add periodic dump of send count info to stderr.
230 2019 September 27; version 1.9.0
231 Python bindings added receive all queued function and corrected a unit test
233 2019 September 25; version 1.8.3
234 Correct application level test issue causing timing problems during
235 jenkins verification testing at command and merge
237 Handle the NNG connection shutdown status which may now be
238 generated when a connection throug a proxy is reset.
240 2019 September 25; version 1.8.2
241 Correct bug in rmr_torcv_msg() when timeout set to zero (0).
243 2019 September 19; version 1.8.1
244 Correct missing constant for wrappers.
246 2019 September 19; version 1.8.0
247 New message types added:
248 RAN_CONNECTED, RAN_RESTARTED, RAN_RECONFIGURED
250 2019 September 17; version 1.7.0
251 Initial connection mode now defaults to asynchronous. Set RMR_ASYNC_CONN=0
252 in the environment before rmr_init() is invoked to revert to
253 synchronous first TCP connections. (Recovery connection attempts
254 have always been asynchronous).
256 2019 September 3; version 1.6.0
257 Fix bug in the rmr_rts_msg() function. If a return to sender message
258 failed, the source IP address was not correctly adjusted and could
259 cause the message to be "reflected" back to the sender on a retry.
261 Added the ability to set the source "ID" via an environment var
262 (RMR_SRC_ID). When present in the environment, the string will
263 be placed in to the message header as the source and thus be used
264 by an application calling rmr_rts_smg() to return a response to
265 the sender. If this environment variable is not present, the host
266 name (original behaviour) is used.
268 2019 August 26; version 1.4.0
269 New message types were added.
271 2019 August 16; version 1.3.0
272 New mesage types added.
274 2019 August 13; version 1.2.0 (API change, non-breaking)
275 The function rmr_get_xact() was added to proide a convenient
276 way to extract the transaction field from a message.
278 2019 August 8; version 1.1.0 (API change)
279 This change should be backward compatable/non-breaking
280 A new field has been added to the message buffer (rmr_mbuf_t).
281 This field (tp_state) is used to communicate the errno value
282 that the transport mechanism might set during send and/or
283 receive operations. C programmes should continue to use
284 errno directly, but in some environments wrappers may not be
285 able to access errno and this provides the value to them.
286 See the rmr_alloc_msg manual page for more details.
288 2019 August 6; version 1.0.45 (build changes)
289 Support for the Nanomsg transport library has been dropped.
290 The library librmr.* will no longer be included in packages.
292 Packages will install RMR libraries into the system preferred
293 target directory. On some systems this is /usr/local/lib
294 and on others it is /usr/local/lib64. The diretory is
295 determined by the sytem on which the package is built and
296 NOT by the system installing the package, so it's possible
297 that the RMR libraries end up in a strange location if the
298 .deb or .rpm file was generated on a Linux flavour that
299 has a different preference than the one where the package
302 2019 August 6; version 1.0.44 (API change)
303 Added a new message type constant.
305 2019 July 15; Version 1.0.39 (bug fix)
306 Prevent unnecessary usleep in retry loop.
308 2019 July 12; Version 1.0.38 (API change)
309 Added new message types to RIC_message_types.h.
311 2019 July 11; Version 1.0.37
313 librmr and librmr_nng
314 - Add message buffer API function rmr_trace_ref()
315 (see rmr_trace_ref.3 manual page in dev package).