E. Scott Daniels [Fri, 24 Apr 2020 17:26:21 +0000 (13:26 -0400)]
Fix SI95 transport header length bug
A bug in the buffer length extraction from the SI95 transport
header was causing failures when communicating with an application
using a backlevel version of RMR. Symptoms were dropped return
to sender messages, and a flood of messages with type 0. This
fix corrects this problem.
Issue-ID: RIC-341
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I0223608c26917a5f94378fd83e1bb71be93999fe
E. Scott Daniels [Fri, 24 Apr 2020 01:20:54 +0000 (21:20 -0400)]
Fix message type constant name for TS_QUE_PREDICTION
The constant for message type 30002 was not correct.
Issue-ID: RIC-342
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I4286f96f650ad77811c76cccef0eeca52592ad34
Scott Daniels [Wed, 22 Apr 2020 18:16:10 +0000 (18:16 +0000)]
Merge "Release RMR packages at version 3.8.2"
Lott, Christopher (cl778h) [Wed, 22 Apr 2020 18:01:20 +0000 (14:01 -0400)]
Drop release files for RMR python bindings
The binding code left this repo so the control files are useless.
Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: Ie030e54b6647d448cfa1110c03d0f49f107d2cd5
Lott, Christopher (cl778h) [Wed, 22 Apr 2020 17:27:13 +0000 (13:27 -0400)]
Release RMR packages at version 3.8.2
Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: I4c49a99c7b01e9a38f491dfd07458271da73b1e8
E. Scott Daniels [Tue, 21 Apr 2020 16:51:05 +0000 (12:51 -0400)]
Remove NNG libraries from packages
The default build process will no longer include the NNG
libraries (librmr_nng.*) by default. It is still possible
to enable them with a CMake build flag (-DBUILD_NNG=1).
The NNG specific unit tests have been disabled.
Some SI95 specific unit tests have been enhanced in an effort
to work toward full coverage of the SI95 code.
This change is in a major version bump as the package contents
change. However, there is NOT an API change; all existing
applications will be able to use the new version without any
modification (other than possibly removing references to the
NNG based libraries).
Issue-ID: RIC-337
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ic9854b1ffc1e82c765692a11724d8086d24cceed
E. Scott Daniels [Mon, 20 Apr 2020 17:17:04 +0000 (13:17 -0400)]
Fix block of dynamic route table load
A bug in the initialisation of RMR beginning with 3.7.2
was causing the dynamic update of routes to be blocked.
This change corrects that bug.
Issue-ID: RIC-336
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I517b0ba65808bb4853983f92bc57e93a22792014
E. Scott Daniels [Fri, 17 Apr 2020 21:07:06 +0000 (17:07 -0400)]
Documentation fixes and revamp user guide
The user guide is now a real document and no longer a collection
of the RMR manual pages (which now exist on their own).
This change also corrects some minor typos in the manual pages.
Issue-ID: RIC-328
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I4eb915ca029ab20d3ceb9d56247f30fde4e04766
E. Scott Daniels [Fri, 17 Apr 2020 17:00:28 +0000 (13:00 -0400)]
Add safe connect, fix possible seg fault in RTC
This change adds "safe connect" to the SI95 code which avoids
the connect to even port bug in Linux which could potentially
result in a successful connection when the remote process is
not running or listening on the attempted port.
Issue-ID: RIC-332
This change also includes a change to the level 2 debugging
in the route table collector (RTC) code which could have
resulted in a segment fault.
Issue-ID: RIC-335
Several of the man pages are updated with typo corrections.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ib6045f36850bd2a4b07a19bf11839ce3e9824b6a
E. Scott Daniels [Wed, 15 Apr 2020 15:28:11 +0000 (11:28 -0400)]
Add missing mc report message type to header
The type 30010 was not defined in the header file; it now is.
Issue-ID: RIC-334
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I9cbf576ac04d134f2d8e40c634fe0bc332125735
Matti Hiltunen [Tue, 14 Apr 2020 20:55:32 +0000 (20:55 +0000)]
Merge "Fix rmr_call() parameter checking bug"
E. Scott Daniels [Tue, 14 Apr 2020 19:55:13 +0000 (15:55 -0400)]
Fix rmr_call() parameter checking bug
When RMR was extended to add wormhole support for
a rmr_wh_call() function, the main call code was broken
into an inward facing funciton. A parameter check which
applies only to the outward facing rmr_call() API function
was accidentally moved to the internal funciton. This change
moves the check back into the rmr_call() funciton.
Issue-ID: RIC-333
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Iab0c8cc33e8a9970c53b9248021a1273559f82f8
E. Scott Daniels [Fri, 10 Apr 2020 21:17:02 +0000 (17:17 -0400)]
Add manual pages to RTD as individual files
This change introduces the code to generate man pages
as individual .rst files and the first set of those
into the scrapable docs directory.
Issue-ID: RIC-328
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I8d0b7b84b0b4fcadf9767d0ba69db64078a38d69
E. Scott Daniels [Fri, 10 Apr 2020 16:11:30 +0000 (12:11 -0400)]
Fix failure when in static only route table mode
When the RMR_RTG_SVC environment variable is set to -1, RMR
should enter static route table only mode and not attempt to
listen for dynamic updates from the route manager. There was
a misinterpretation of the environment variable name when
checking for this value which was causing the initialisation
to fail.
Man pages were also updated to remove references to the
deprecated RMR_MAX_RCV_BYTES constant. The constant was
marked as being deprecated.
Issue-ID: RIC-331
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I7b0b82397f3ad4f223682727213504d3fbdae518
E. Scott Daniels [Wed, 8 Apr 2020 19:44:40 +0000 (15:44 -0400)]
Eliminate the SI receive buffer length requirement
This change eliminates the need to enforce a receive
buffer maximum length as specified by the user application.
The length supplied will be assumed to be the "normal"
maximum and used as the default receive buffer size,
but when messages larger than this are received RMR will
now allocate a larger buffer to use.
Issue-ID: RIC-309
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I9dacadea40b982fde604b78789568b8118a89b35
Scott Daniels [Thu, 9 Apr 2020 16:23:40 +0000 (16:23 +0000)]
Merge "Add missing man pages to doc build list"
Lott, Christopher (cl778h) [Thu, 9 Apr 2020 15:56:06 +0000 (11:56 -0400)]
Add missing man pages to doc build list
Add rmr_close and rmr_set_fack; sort the list
Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: Id27559cca0da7921478be4df9281ec26917560a8
Tommy Carpenter [Wed, 8 Apr 2020 16:40:22 +0000 (12:40 -0400)]
RMR Python has been moved to xapp frame.
Issue-ID: RIC-228
Change-Id: I527179f3cd9c717789d4d1289728a15597af98aa
Signed-off-by: Tommy Carpenter <tc677g@att.com>
E. Scott Daniels [Fri, 3 Apr 2020 14:14:44 +0000 (10:14 -0400)]
Rename health_ck support binary to rmr_probe
The health_ck name was determed to be too generic
and has been replaced with rmr_probe. The application
performs the same health check function, and may at some
point in the futre be extended to provide other RMR
delivered probes.
This change also adds a useage message which was missing
Issue-ID: RIC-308
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I98f9dd7f9598b6a5682e4fb0d62c4146e8577e97
Lott, Christopher (cl778h) [Tue, 7 Apr 2020 00:31:32 +0000 (20:31 -0400)]
Fix minor typos in RMR man pages
Remove some spaces within invocations of &bold() and other
formatting macros to placate the RST/Sphinx formatter.
Remove tab characters entirely, which cleans up code examples.
Change text "NULL pointer" to "nil pointer".
Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: Ic9ab6304831c0b1db21f62159da4f02f0442bb98
Matti Hiltunen [Tue, 7 Apr 2020 14:45:24 +0000 (14:45 +0000)]
Merge "Fix SI address and initialistion bugs"
E. Scott Daniels [Mon, 6 Apr 2020 20:42:32 +0000 (16:42 -0400)]
Fix SI address and initialistion bugs
The SI95 address translation between an address struct and
human readable string had a function call with reversed
parameter constants.
The SI initialisation could excite an NPE if the v6 "listen
all" string (::) was given instead of 0.0.0.0.
Issue-ID: RIC-327
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ifa673aca7ceaa7e47fbd9158340f0f825ac0fae8
Lott, Christopher (cl778h) [Mon, 6 Apr 2020 19:05:22 +0000 (15:05 -0400)]
Add SI95 transport library to doc
Also clean up a few minor typos
Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: I275dc89012b7f5b6f460a3267ddcc9193a9d2ef2
E. Scott Daniels [Wed, 1 Apr 2020 18:01:02 +0000 (14:01 -0400)]
Fix possible nil pointer deref in interface check
This change address a potential nil pointer dereference when
building a list of interface names that might be used for
connection listening.
Issue-ID: RIC-307
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I3b63bebe31afc61073bd4d4093f1fb42d018963e
Matti Hiltunen [Thu, 2 Apr 2020 15:05:28 +0000 (15:05 +0000)]
Merge "Fix potential nil ptr seg fault and CI test issue"
E. Scott Daniels [Wed, 1 Apr 2020 16:39:47 +0000 (12:39 -0400)]
Fix potential nil ptr seg fault and CI test issue
This change corrects two problems that the "dockerless"
CI build process was encountering:
- Include and link paths set in the CMake config
were not always honoured by the application test
scripts
- Building packges to install in the test environment
as a non-root user was causing non-standard install
prefixes to be added to the packages.
This change also corrects a typo in the NNG module which
potentially could have allowed a nil pointer to be
dereferenced. This bug was discovered while makeing the
changes for the CI jobs.
Issue-ID: RIC-303
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I30150950dd186e72f8c822ec3fbe5b07369cb4ce
E. Scott Daniels [Mon, 30 Mar 2020 16:23:13 +0000 (12:23 -0400)]
Release commit to push 3.6.3 in package cloud
This change will cause the push job to promote the 3.6.3
fix to the release area of package cloud. There are
no changes in this commit.
Issue-ID: RIC-301
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I85eece74fa4b8fcbe94a47fd0f97c25df9b23b51
E. Scott Daniels [Mon, 30 Mar 2020 15:05:45 +0000 (11:05 -0400)]
Correct the max receive message constant
The max receive size constant (a user programme only
constant) still reflected the original limit of 4k.
While internally this was not used and/or enforced, the
incorrect setting could cause some wrapper implementations
to incorrectly limit the max receive size.
This change sets this constant to the acknowledged max
receive size for all transports (64K).
Issue-ID: RIC-301
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I214b9d9dd67a00232e57bab8327dcb76f891b517
E. Scott Daniels [Wed, 25 Mar 2020 14:02:53 +0000 (10:02 -0400)]
Set release file for RMR core package
This change sets the release file for RMR's core package
such that 3.6.2 should be promoted in the package cloud
environment.
Issue-ID: RIC-295
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I36623d829fb2816d75ff47773c98b6451ba31e22
E. Scott Daniels [Mon, 23 Mar 2020 18:37:16 +0000 (14:37 -0400)]
Fix msg init bug when pulling msg from the poo2
When reusing a message from the message pool the flags were
not being properly reset before the message was returned
Issue-ID: RIC-295
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I5924e162ca9e1835807785e2401a871f1fcd36b2
Tommy Carpenter [Thu, 19 Mar 2020 12:58:30 +0000 (08:58 -0400)]
Release 400
Issue-ID: RIC-256
Change-Id: I3dbf31ebc86b039ded8ae6e689459647e16f1839
Signed-off-by: Tommy Carpenter <tc677g@att.com>
Tommy Carpenter [Thu, 19 Mar 2020 12:30:39 +0000 (08:30 -0400)]
Switch to SI95.
Issue-ID: RIC-156
Change-Id: I31868eac8abfde19be820dcabe630c0f75aecdfd
Signed-off-by: Tommy Carpenter <tc677g@att.com>
E. Scott Daniels [Thu, 19 Mar 2020 03:50:57 +0000 (23:50 -0400)]
Fix problem with RPM install
The additon of the health check supplemental application was
causing the RPM install to fail because of a misconception that
a library in the package wasn't already installed. This change
attempts to address this by hard linking the RMR library (.a)
into the supplemental applicaiton such that RPM won't assume
a depenendency.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: If9b70bed14a7994c517dc514c7963488301c8206
E. Scott Daniels [Wed, 18 Mar 2020 12:41:07 +0000 (08:41 -0400)]
Additional message types added for TS and E2
Message types added in RIC message types header
for E2_RESET and TS (traffic steering).
This change also includes additional constants in
rmr.h to help framework code improve readability.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I3e0f358b4f34f461ea09dfe7d823c6251d4e398b
E. Scott Daniels [Mon, 16 Mar 2020 17:12:59 +0000 (13:12 -0400)]
Correct meid table parse bug
The MEID table parser was not ack/nacking to route manager
when the end of the table was recognised.
Issue-ID: RIC-273
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I2272005301bb376942cb4be262406846f98270ef
E. Scott Daniels [Fri, 13 Mar 2020 15:10:34 +0000 (11:10 -0400)]
Break changes for easier doc generation
Because the repo houses both the core RMR and python
wrappers the changes file was messy. This change breaks
the changes file into one for wrappers and one for the
core RMR code. The RTD release notes is generated by
combining these changes files with meaningful section
headers.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I5cac1f601c9e5c71e6ab14c34751100410882688
E. Scott Daniels [Tue, 10 Mar 2020 12:28:37 +0000 (08:28 -0400)]
Add health check mesage types
This change adds the health check message types to the main
RIC message type list.
Issue-ID: RICAPP-25
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I9010ae719c27ff5a6271fa8fe05e2499eb83759f
E. Scott Daniels [Mon, 9 Mar 2020 17:57:39 +0000 (13:57 -0400)]
Add the wormhole call function
This change adds the rmr_wh_call() function to provide a
wormhole send which blocks until a response is received.
Issue-ID: RICAPP-80
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ic97001db8a9fb177c70045fc3d0326805b9fb17b
E. Scott Daniels [Fri, 6 Mar 2020 18:40:33 +0000 (13:40 -0500)]
Correct CMake document reference typo
The man page build CMake file had a typo which was
preventing it from building in the merge environment.
Issue-ID: RICAPP-79
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I91676b688ddbac1833e552008ce40f68904ce792
E. Scott Daniels [Fri, 6 Mar 2020 17:29:28 +0000 (12:29 -0500)]
Add wormhole state check function
This change adds a new function allowing the state of a wormhole
to be checked by the user programme.
Issue-ID: RICAPP-79
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Id685dcb163f7266aa40f04317bee2b23fade4f43
E. Scott Daniels [Fri, 6 Mar 2020 14:13:06 +0000 (09:13 -0500)]
Add missing changes and CMake from last change
The CHANGES and CMakefile needed to bump the version on
the last change were omitted. This adds those files.
Issue-ID: RICAPP-78
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Id37dc89fb2f33d6cce0bf4b7661bdf6c70bcddbe
Matti Hiltunen [Fri, 6 Mar 2020 13:57:50 +0000 (13:57 +0000)]
Merge "Address code analysis issues"
E. Scott Daniels [Thu, 5 Mar 2020 21:16:09 +0000 (16:16 -0500)]
Address code analysis issues
This change addresses the bugs which Sonar identified on
5 March 2020. These were identified as Reliability bugs
two of which were found to be true issues; all were
addressed in hopes of keeping sonar quiet.
Issue-ID: RICAPP-78
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Id575817686395bbad9683b1df476e3e1e7fbd2b2
Lott, Christopher (cl778h) [Thu, 5 Mar 2020 15:19:50 +0000 (10:19 -0500)]
Add option for xml coverage to pytest
Also add invocation of coverage tool
Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: I61d188c72cec0b36f059825246fa99732da715a5
E. Scott Daniels [Fri, 21 Feb 2020 18:24:29 +0000 (13:24 -0500)]
Add first set of SI95 unit tests and health check
This change adds the first series of unit tests for
the RMR SI95 code. It also bundles the running of
the unit tests and the application level tests into
the CMake description such that "make test" will
run them all.
The health check application (health_ck) is now built
from the "support" source and added to the RMR run-time
package in /usr/local/bin.
Issue-ID: RIC-151
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I72804452afa5a972aa4ca0ded7b68131e16f5955
Tommy Carpenter [Tue, 3 Mar 2020 22:04:55 +0000 (22:04 +0000)]
Release 221
Issue-ID: RICAPP-74
Change-Id: I156f1e0d584e62b3f5670cc3b09d9c9c31075034
Signed-off-by: Tommy Carpenter <tc677g@att.com>
E. Scott Daniels [Tue, 3 Mar 2020 20:30:59 +0000 (15:30 -0500)]
Fix MEID unit test, catch init failure
The RMR change to support routing based on the MEID (
190665fe)
broke the related unit tests. This change fixes the unit test.
This change also adds a check to the init wrapper function to
ensure that an error is generated if RMR is unable to initialise
the underlying transport.
Issue-ID: RICAPP-74
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I1f3ca3f8e821cd1356fb5247404b8cafd22a6119
E. Scott Daniels [Fri, 28 Feb 2020 15:21:09 +0000 (10:21 -0500)]
Fix bug preventing table ID from being sent on ack
When RMR acks the receipt of a route table to Rt. Mgr. it
was failing to send the table ID. This change fixes this
problem.
Issue-ID: RIC-232
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I363df4d2b1ecc8432ed7767edfabbf78c575838d
E. Scott Daniels [Wed, 26 Feb 2020 19:28:54 +0000 (14:28 -0500)]
Fix message marker for src reset on send/rts
The SI95 receive function was not properly causing a
message buffer to be marked as "receive generated" and
if the msg buffer was subsequently used to send a message
(e.g. return to sender) the correct source address was
not placed into the message before sending. This change
ensures that the message buffer received via SI95 are
marked so that a send will set the source address when
needed.
Issue-ID: RIC-227
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ic9c49834e5f066420463fa4568cfdf6f722f81cb
E. Scott Daniels [Wed, 26 Feb 2020 14:20:45 +0000 (09:20 -0500)]
Changes to fd2ep for locking and disconnect locking
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I4c3d9d4191d0c994246c076861b52973413404a6
E. Scott Daniels [Tue, 25 Feb 2020 15:40:20 +0000 (10:40 -0500)]
Address multi-threading issues in SI95
There are potential issues when a uer application is multi-threaded
and disconnections are noticed. This change addresses these issues.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ie586cfe6294429b299e0044b2f6bf315d78104ce
E. Scott Daniels [Mon, 24 Feb 2020 15:14:56 +0000 (10:14 -0500)]
Fix meid related core dump
This change fixes a bug in rtable_nng_static and rtable_si_static
modules. The caller's reference to the discovered endpoint was
not always being set correctly.
The change also corrects the unit test which missed the problem.
Issue-ID: RIC-220
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I11a5e89638845b1f31953c16bb584108c0f88850
E. Scott Daniels [Fri, 21 Feb 2020 18:58:19 +0000 (13:58 -0500)]
Revert RTS to use unidirectional connection
Because of potential performance impacts it was decided to
revert return to sender messages to NOT use the same
connection that the message was received on. This applies
only to the SI95; RTS has always been on uni-directional
connections with NNG.
This change also enables the MEID routing in the SI95 code.
Issue-ID: RIC-153
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I6415effb3283f5961aa0098f1ff0d1380d7aa197
E. Scott Daniels [Thu, 20 Feb 2020 19:43:35 +0000 (14:43 -0500)]
Fix crash under SI95 with multiple receive threads
When the user application was using multiple threads to receive
messages it was alsmost certain to crash with a segfault.
This change corrects a bug in the ring handler which was
allowing a premature release of the ring lock.
A verification cookie has been added to the msg buffer to
facilitate validation of a message buffer when examining
crash output.
Issue-ID: RIC-218
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Iaa6519e415dcf7f8c52312e8e02d8cf4dca5866f
E. Scott Daniels [Wed, 19 Feb 2020 14:47:06 +0000 (09:47 -0500)]
Add message types for E2 setup
Issue-ID: RIC-214
Message types added to the RIC header in rmr.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I38612fd7915090a515da07986df830f3a72bf8e9
E. Scott Daniels [Fri, 14 Feb 2020 14:23:59 +0000 (09:23 -0500)]
Add ability for RMR to request route table
The route table collector has been extended to allow RMR to send
a request to have the route manager deliver a new table. This
change also provides for an ack/nack to be sent back to route
manager to indicate the state of a route table update.
There is also a small wormhole bug fix:
Wormhole send was not clearing the call ID and some message
were being treated as call response on the other side.
Issue-ID: RIC-92
Issue-ID: RIC-91
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I8ffa7919b42412e4604130885b968f32b5448294
E. Scott Daniels [Fri, 14 Feb 2020 14:31:48 +0000 (09:31 -0500)]
Fix SI bug causing core dump sending to closed fd
The SIsendt function was not properly checking the file descriptor
and could core dump when an attempt was made to send on a connection
that was closed.
Issue-ID: RIC-207
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I09b33bf1185aef609bfff058b272e1895eb1a29d
Matti Hiltunen [Thu, 6 Feb 2020 19:16:34 +0000 (19:16 +0000)]
Merge "Cmake, change files missing from previous commit"
E. Scott Daniels [Thu, 6 Feb 2020 18:46:34 +0000 (13:46 -0500)]
Cmake, change files missing from previous commit
The cmake and changes files were accidentally omitted from the
previous commit.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ib6cbe254816305d83acf65207a1682ac6668afab
E. Scott Daniels [Thu, 6 Feb 2020 18:05:25 +0000 (13:05 -0500)]
Fix session discconnect bug in interface to SI95
The disconnect of a session wasn't being properly recorded
and thus was preventing a reconnection attempt on the next
send attempt by the user application.
The warning about dropping messsages when the application cannot
keep up was also changed to be an error so that it is visible
at the default logging level.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ib07e4d0f9bf0d2b6436bb0b49be4ea37455509d3
E. Scott Daniels [Fri, 31 Jan 2020 21:10:34 +0000 (16:10 -0500)]
Ensure route table thread logging can be disabled
The messages written by the route table collector thread are
not affected by the verbose level that the user application
can set. This change allows the complete squelching of the
messages from this thread when all messages are turned off.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Iddea13591f28a96f0cfc4630924a9fc11fadd809
E. Scott Daniels [Tue, 28 Jan 2020 21:50:27 +0000 (16:50 -0500)]
Allow user programme to set RMR verbosity level
This change centralises the writing of messages to the standard
error device which allows the user programme to have control over
the verbosity level. Introduces the new rmr_set_vlevel() function.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I0c4b4b3af94d34b480622ec1f65a9da65cabf2b5
E. Scott Daniels [Fri, 24 Jan 2020 21:00:11 +0000 (16:00 -0500)]
Fix large message bug in SI95 data callback
The receive buffer was not being allocated correctly and in some
cases would cause a segment fault when a large buffer was received.
The fix also includes dropping a message which is larger than the
allocated message. The rmr_init() manual page has been updated to
better define the meaning of the max message length pararmeter which
is passed.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I20eb0d7ed8ba914b380807d9b3142d51d4f9f0b6
E. Scott Daniels [Thu, 23 Jan 2020 21:20:12 +0000 (16:20 -0500)]
Correct bug in SIwait causing excessive CPU use
The select timer in SIwait was not being reset correctly
and after a few loops the timer was set such that the
thread was using 100% of a CPU.
Also eliminated the build poll list from cache as this
turned out to be slower than the original method.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ic606f19aaf522ff7c7146a6fc62c76ec9f8de3a9
E. Scott Daniels [Wed, 22 Jan 2020 17:31:07 +0000 (12:31 -0500)]
Enable multi-thread receiver support
This change implements locking on the receive and free
message rings such that multiple user threads can concurrently
invoke rmr receive functions.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: If012c5699e071f1d85f604c79baf8c4e8b77e94a
E. Scott Daniels [Tue, 21 Jan 2020 18:22:55 +0000 (13:22 -0500)]
Remove bad includes from SI code
Code was referencing NNG headers which breaks when building on a
"clean" environment.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ic9501e8c70a0425b96d18c1c22e29cdd7eef601b
E. Scott Daniels [Tue, 21 Jan 2020 17:23:28 +0000 (12:23 -0500)]
Fix missing realloc function in SI
The realloc payload function was missing in the SI port.
This change also adds the ability to build and run SI95
test applications in the test_app directory. NNG tests
are still run by default (this will be changed eventually).
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ie8a453a009767afcf23eac610dc5f976b880d0aa
E. Scott Daniels [Mon, 20 Jan 2020 15:31:44 +0000 (10:31 -0500)]
Add dynamic route table update to SI95 support
The initial SI95 support did not include dynamic route table
update capabilities. The library will now support the receipt
of route table generator messages via an RMR session over the
RTG service port.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I02e9f72e049152abd9ef516cccb7705eca4aa7bd
E. Scott Daniels [Wed, 13 Nov 2019 14:40:22 +0000 (09:40 -0500)]
Add SI95 transport support
The SI95 transport library provides an alternate transport
layer to NNG. The API presented by RMR on top of SI95
is exactly the same; only a link with rmr_si is needed to
make use of the alternate transport mechanism.
SI95 is NOT compatable with NNG and thus all RMR based
applications which must communicate must use the same
underlying transport library.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I0a971fa0f5de2dbb2fb7a95d5428e709b630f730
E. Scott Daniels [Fri, 3 Jan 2020 15:57:01 +0000 (10:57 -0500)]
Beef up tests to the extended header functions
This change adds some additional application level
tests which tests the copy and clone funcitons by
driving them from complete applications (sender and
receiver).
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I7113d061eada41d394d957079b0e81b3211fc591
E. Scott Daniels [Thu, 2 Jan 2020 17:35:05 +0000 (12:35 -0500)]
Add clarification to rmr_send_msg manual page
The man page for rm_send_msg() did not emphisize the need for
the user programme to use the returned message pointer for
all future references. This change adds the clarification in
the text of the return value and adds a comment to the example
code.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I14c21636eafb7b936ad0ba62b3ae621e6f74c50b
E. Scott Daniels [Mon, 9 Dec 2019 14:05:22 +0000 (09:05 -0500)]
Correct documentation for MEID
The MEID acronym was incorrectly documented as "managed equipment"
and not "manage entity". This change fixes this.
The RTD relase nodes were not being updated from the change log in
the repo root, and thus were not updated on the RTD site. This
change adds the needed Makefile changes to ensure that all generated
docs for RTD are updated and published.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I2e3d741451221211a8abe49b7eca70dd6f935cbb
E. Scott Daniels [Wed, 4 Dec 2019 20:20:16 +0000 (15:20 -0500)]
Allow endpoint selection based on meid in message
This change allows the route table to specify message types which
should route based on the MEID (managed equipment ID) in the message
buffer rather than a round-robin list. The special group entry of
%meid in the routing table causes this, and requires the route
generator to suppy RMR with a map of endpoints which currently
manage each ME.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I6023cc0363222c85b1b7893c573d6e3f65edd221
Tommy Carpenter [Fri, 6 Dec 2019 14:28:10 +0000 (09:28 -0500)]
Release 2.2.0
Change-Id: Iad4bdc3a5126ed430700636d0ef4aabcb4b8b1ac
Signed-off-by: Tommy Carpenter <tc677g@att.com>
Tommy Carpenter [Thu, 5 Dec 2019 15:27:21 +0000 (10:27 -0500)]
Add ability to set xaction deterministically, bug fixes
Change-Id: I0a3aa99f1a793b7f16fe0a5314a2529715690c01
Signed-off-by: Tommy Carpenter <tc677g@att.com>
Tommy Carpenter [Wed, 4 Dec 2019 20:01:01 +0000 (15:01 -0500)]
Release 2.1.0
Change-Id: I769773e40c16000914e2e8111821d7570b57bcd9
Signed-off-by: Tommy Carpenter <tc677g@att.com>
Tommy Carpenter [Wed, 4 Dec 2019 18:26:58 +0000 (13:26 -0500)]
Add new func, update rts
Signed-off-by: Tommy Carpenter <tc677g@att.com>
Change-Id: I2e0830eefe425d268045af6c2e5d1a1231fe8d56
Tommy Carpenter [Wed, 4 Dec 2019 18:28:44 +0000 (13:28 -0500)]
Release 2.0.0
Change-Id: Ibaac2a1cfa6b51a61d64eedbc5b595e9fa0dbd1e
Signed-off-by: Tommy Carpenter <tc677g@att.com>
E. Scott Daniels [Tue, 3 Dec 2019 19:26:03 +0000 (14:26 -0500)]
Fix whitespace issues in readme
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ibd1f37e855e65506c342e356bc9dedbca56567c0
Tommy Carpenter [Mon, 2 Dec 2019 20:04:45 +0000 (15:04 -0500)]
Version bump, release ready when dev-b is merged back.
Change-Id: I43be2ce9535d454e95c9c9a042bfde0a35031eb6
Signed-off-by: Tommy Carpenter <tc677g@att.com>
E. Scott Daniels [Wed, 13 Nov 2019 15:02:37 +0000 (10:02 -0500)]
Add new message types for A1
A small vetting script was also added to help verify that
message types and constant names are not duplicated in the
header file.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ia7577842d94afd413665e84f248f860afa199045
Tommy Carpenter [Mon, 11 Nov 2019 16:06:49 +0000 (16:06 +0000)]
Add subscription id setting/testing
Issue-ID: RICPLT-2630
Change-Id: Ia89ba3af2647b0e41538112cda7715aa4be77a7b
Signed-off-by: Tommy Carpenter <tc677g@att.com>
E. Scott Daniels [Fri, 1 Nov 2019 13:24:08 +0000 (09:24 -0400)]
Prevent message truncation by populate function
An attempt to write a payload to a received message in prep
for returning the response to sender could result in the
response message being truncated if it is longer than the
payload in the received message. The populate and set length
function was modified to ensure that the target message has
a payload length which is not less than the message being
added; if it does the message payload is reallocated through
RMR.
This change requires RMR version 1.10.2 or later.
CP: dev-b
Cherry-Id: I8fa26eaace814344481c2df715c7c2486a38f6df duplicated CID from an abandoned change
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Iaf032cb0b5feb14c714077430e1962107eae8a42
E. Scott Daniels [Thu, 7 Nov 2019 13:41:07 +0000 (08:41 -0500)]
Add mtypes for multiple e2-term instances
New message type constants added to support efforts for multiple
active instances of e2-term.
CP: dev-b
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: If4b3997e0b4c2b8fe2f66cd48d4ed29fc9caa487
Houa Yang [Tue, 3 Dec 2019 21:18:14 +0000 (15:18 -0600)]
Add packagecloud release file
Add packagecloud release file for rmr packages, which trigger
packagecloud verify and merge jobs. Verify checks to see if the
package is in staging repository and merge promotes packages from
staging into release repository.
Issue-Id: RELENG-2130, IT-18339
Signed-off-by: Houa Yang <hyang@contractor.linuxfoundation.org>
Change-Id: I020a84afaa63f3e00d7e1f52d5d69c5e8ae9e612
E. Scott Daniels [Fri, 22 Nov 2019 19:25:40 +0000 (14:25 -0500)]
Bump version to force a package build for release
Bloody release process depends on logs of past jobs which
are not available. This is forcing another, unchanged,
package to be pushed so that a ticket can be opened with a
link to the job output :(
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I6007fb1e347ef083cfebb89dab46cd3525fe15e7
E. Scott Daniels [Thu, 14 Nov 2019 21:03:51 +0000 (16:03 -0500)]
Correct bug in payload reallocation function
When using the rmr_realloc_payload() function with the copy
flag set, it was possible to copy a short length of data,
or none at all. This change corrects the miscomputed length
to copy.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I01a98fa66ab69d5f11a792463bc04b73209f098b
Aric Gardner [Fri, 8 Nov 2019 15:59:41 +0000 (15:59 +0000)]
Automation adds INFO.yaml
Change-Id: If07da6c4d13cfbc4d2382613e1aa644fdaa89fd0
Signed-off-by: Aric Gardner <agardner@linuxfoundation.org>
E. Scott Daniels [Fri, 8 Nov 2019 13:30:44 +0000 (08:30 -0500)]
Fix table of contents in the RTD generated stuff
The table of contents has been shortened to list only
document names and not a hammering of section titles.
The release notes is the only exception, and they have
been broken out into a second list.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I04fa2af21b78bf4eb28f920c29bb5b1bd8a74d35
E. Scott Daniels [Thu, 7 Nov 2019 20:35:17 +0000 (15:35 -0500)]
Add root level docs control files
Several control files must exist at the repo root, not in
docs, in order to vet and push the documentation out to some
remote site. This changes adds those files, and fixes the
formatting issues that RST vetting is complaining about.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ibeda532f0524d5f5d4d138ece4e9265429fa322b
E. Scott Daniels [Wed, 6 Nov 2019 20:12:38 +0000 (15:12 -0500)]
Documentation changes needed to support RTD
Changes which are necessary to support a docs directory that
is scraped for "read the docs." Changes include:
Tweaks to manual pages to allow them to be combined into a
large "user's guide" (removed the final quit command).
Addition of an rtd subidrectory under source and the needed
.xfm source to generate the various .rst files in the top
level docs (plural).
Moved the top level readme to the main source directory as
it was out of place at the top; created a new top level README.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I708a750e3c58df4d0446eb3a5706c10bf65bed1d
E. Scott Daniels [Mon, 4 Nov 2019 16:00:49 +0000 (11:00 -0500)]
Minor version bump to move forward from trial ver
All changes required to fix bugs during the fall 2019
trial of RIC software will be applied to the previous
version number with only patch level version number changes.
This change advances the minor version number so as to
avoid any artifact naming conflict as the names don't
allow for disambiguation based on branch and/or release.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I8112c215e7508c5500bbb0b255ee141b354ed1d4
E. Scott Daniels [Thu, 31 Oct 2019 13:20:33 +0000 (09:20 -0400)]
Correct inability to extend payload for rts msg
This change allows the application to increase the payload size
of an existing message buffer. This is needed when and application
must use the return to sender (rts) function to send a payload which
is larger than the payload in the received message.
Changes include a new RMR function: rmr_realloc_payload() and
changes to the python wrapper which will resize the payload if
the python application attempts to populate a message buffer which
does not have sufficent size.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ia55c0ff1d5ab3ce73292c00264df7bc16e229d3a
Tommy Carpenter [Thu, 24 Oct 2019 18:14:04 +0000 (14:14 -0400)]
Release 1.0.0:
* It's been past due to bump this to 1.0.0 since people depend on it!
* Add the ability to set sbuf attributes in the same call that it is allocated
* (breaking) removes bytes2meid
* (breaking) rmr_set_meid now infers length
* (breaking) rmr_get_meid now returns bytes, to be symmetric with set_meid
Change-Id: I8519293af6dd30be56c0a7956f31da105c78085d
Signed-off-by: Tommy Carpenter <tc677g@att.com>
Tommy Carpenter [Wed, 23 Oct 2019 11:58:43 +0000 (07:58 -0400)]
Raise an exception on bad buffer allocations
Change-Id: Iddf9d17b9ce2b2b4f6b3fa52d0cfe617dd3a8c13
Signed-off-by: Tommy Carpenter <tc677g@att.com>
Tommy Carpenter [Wed, 23 Oct 2019 00:06:16 +0000 (00:06 +0000)]
Merge "Correct bug in timeout receive"
E. Scott Daniels [Tue, 22 Oct 2019 20:23:36 +0000 (16:23 -0400)]
Correct bug in timeout receive
It was possible for the timeout receive function to return a
nil message buffer pointer, even if the calling function passed
a pointer in for reuse. The exposure was limited only to when
the epoll environment could not be initialised which we believe
has never been observed.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I259a5e5a0a18e53ffb03cc4c47d171e77e998835
Tommy Carpenter [Tue, 22 Oct 2019 13:09:54 +0000 (09:09 -0400)]
Release 0.13.4
Change-Id: I2cc397ca9b55b094958dc39c42cab002e2b646de
Signed-off-by: Tommy Carpenter <tc677g@att.com>
E. Scott Daniels [Mon, 21 Oct 2019 19:58:22 +0000 (15:58 -0400)]
Correct cause of NPE in python wrapper
The message summary funciton was attempting to reference
a payload when RMR left it as a null pointer.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Id1e6da44c9f79d8f69f5266b9bed1f25dd8af0d9
Lott, Christopher (cl778h) [Wed, 16 Oct 2019 12:45:26 +0000 (08:45 -0400)]
Repeat the release process for 0.13.3
Apologies for cluttering up the git history.
Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: Ie50047e9c72cc64537b5aeadee2c5d4094e35cb2