ric-plt/lib/rmr.git
4 years agoCorrect inability to extend payload for rts msg 94/1294/4 r2-temp 1.10.2
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

4 years agoRelease 1.0.0: 23/1223/3 python-1.0.0
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>
4 years agoRaise an exception on bad buffer allocations 09/1209/1 python-0.13.5
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>
4 years agoMerge "Correct bug in timeout receive"
Tommy Carpenter [Wed, 23 Oct 2019 00:06:16 +0000 (00:06 +0000)]
Merge "Correct bug in timeout receive"

4 years agoCorrect bug in timeout receive 98/1198/1 1.10.1
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

4 years agoRelease 0.13.4 94/1194/1 python-0.13.4
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>
4 years agoCorrect cause of NPE in python wrapper 91/1191/4
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

4 years agoRepeat the release process for 0.13.3 71/1171/1 python-0.13.3
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

4 years agoRelease version 0.13.3 of rmr-python 04/1004/4
Lott, Christopher (cl778h) [Mon, 23 Sep 2019 17:36:23 +0000 (13:36 -0400)]
Release version 0.13.3 of rmr-python

Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: Ide23b0d25ea13ac46e36829262a5e4691ff01706

4 years agoMerge "Correct summary bug in python wrapper"
Tommy Carpenter [Thu, 10 Oct 2019 18:45:41 +0000 (18:45 +0000)]
Merge "Correct summary bug in python wrapper"

4 years agoCorrect summary bug in python wrapper 33/1133/5
E. Scott Daniels [Thu, 10 Oct 2019 17:13:27 +0000 (13:13 -0400)]
Correct summary bug in python wrapper

The summary funciton in the python wrapper could have returned
a value which was not a dict type.

Added unit test to validate the receive all funciton in helpers.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ibed078b2a171fd3f8bd8bec51d4724e735337282

4 years agoMerge "Add content type for long description for twine"
Tommy Carpenter [Mon, 7 Oct 2019 17:20:45 +0000 (17:20 +0000)]
Merge "Add content type for long description for twine"

4 years agoMerge "Add ability to track send counts for an endpoint"
Matti Hiltunen [Mon, 7 Oct 2019 13:35:22 +0000 (13:35 +0000)]
Merge "Add ability to track send counts for an endpoint"

4 years agoAdd ability to track send counts for an endpoint 76/1076/1 1.10.0
E. Scott Daniels [Wed, 2 Oct 2019 14:21:24 +0000 (10:21 -0400)]
Add ability to track send counts for an endpoint

Send counts, success, failure and transient failure, are being
collected for each endpoint. The route table collector thread
will write counts to standard error on a periodic basis.

Enabled forced minimum retry.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I3c315d86e6db79cb1404788ef954a0a664084631

Fix context used for RTC epoll

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ie4883e98237eb87b53b24f68bd434edcf533c92f

Fix bug when table received from RTG

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I66dd44ab7cde715d6daf144253ff5a2bd5861ae3

After stress testing and tweaks

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I0e814bf25844c19ab9f9f6c38eca50a1a66db309

Update unit tests and resulting fixes

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ifd780cfaaf924e202407f822551ca3e61c84c63d

Set minimum retry

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I17f1c096106c96d31b919bef6af759b3f4ec72c3

4 years agoAdd content type for long description for twine 60/1060/2
Lott, Christopher (cl778h) [Thu, 3 Oct 2019 15:39:33 +0000 (11:39 -0400)]
Add content type for long description for twine

Extend setup.py with the following to silence twine warning:
  long_description_content_type="text/x-rst",

Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: I831e38f56a42d9ff46da9b1b2aa47eee26e4ecd2

4 years agoFix a constant name 53/1053/1
Tommy Carpenter [Wed, 2 Oct 2019 14:52:14 +0000 (10:52 -0400)]
Fix a constant name

Change-Id: I0f8f53b2f8debd68ae74acb732cfe577aa725235
Signed-off-by: Tommy Carpenter <tc677g@att.com>
4 years agoCorrect unit test bug in rmr-python 51/1051/1
E. Scott Daniels [Wed, 2 Oct 2019 12:28:58 +0000 (08:28 -0400)]
Correct unit test bug in rmr-python

With RMR 1.8.x connections are forced to be asynch by default to
prevent kubernetes blocking the attempt for minutes. However, the
asynch nature of connections makes unit tests concerned with the
ability to send and receive messages non-deterministic as some
connections are established before the first message is sent, and
others are not.

This change ensures that unit tests establish connections in a
synchronous manner which ensures that the first send will not be
rejected by NNG due to a pending connection.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ic72c48480d68e0aa8ba1bc0110b6222c3707ceaa

4 years agoAdd ability to set debug via CMake (1.9.1) 44/1044/7 1.9.1
E. Scott Daniels [Mon, 30 Sep 2019 17:05:12 +0000 (13:05 -0400)]
Add ability to set debug via CMake (1.9.1)

This change allows the DEBUG flag to be supplied on the CMake command
line, and adds instructions on how to do so in BUILD.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ie5c6185a3016778c7e9c0d51c074c7592c114765

4 years agoAdd YAML file with RMR version dependency for CI 37/1037/2
Lott, Christopher (cl778h) [Mon, 30 Sep 2019 14:30:09 +0000 (10:30 -0400)]
Add YAML file with RMR version dependency for CI

Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: Iad96b8b42bc7e25be86e9bfc8c61f2069e4c3e5b

4 years agoAdd helpers module to python wrapper 32/1032/7 1.9.0
E. Scott Daniels [Fri, 27 Sep 2019 16:45:31 +0000 (12:45 -0400)]
Add helpers module to python wrapper

The helpers module in the python bindings allows for
extensions and convenience functions. Initially this
contains a "receive all" function that collects all
queued messages and returns an array of message summaries
to the caller.

This change also modifies the expected constants test
such that it includes a check for the MTCALL flag, and
does not fail if RMR produces more constants than
expected and/or needed.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I862edd045c30bc4c81e13664acea6b91c229fb58

4 years agoPoint external nng reference for reconnect fix 10/1010/1 1.8.3
E. Scott Daniels [Wed, 25 Sep 2019 17:02:30 +0000 (13:02 -0400)]
Point external nng reference for reconnect fix

Begin using NNG commit e618abf8f3db2a94269a79c8901a51148d48fcc2
in order to pick up the fix for NNG bug:
  #970 TCP connections through docker-proxy do not reconnect

Change-Id: I367ea489ff86519c17a357ff9415a873e14e1f1e

Changes to incorporate new NNG conn shut error

NNG added a connection shut error when the reconnection through
proxy bug was fixed.  This change catches the new state and
sets the status in the message accordingly.

Small tweak to application tests to prvent timing issues
when running in jenkins verification environment.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Idaf98feb6c7b5724f1cceab8ba051bb5fccd7a7e

4 years agoCorrect bug in mt call mode receive with timeout 09/1009/1 1.8.2
E. Scott Daniels [Wed, 25 Sep 2019 15:06:07 +0000 (11:06 -0400)]
Correct bug in mt call mode receive with timeout

The rmr_torcv_msg() function was improperly interpreting
the timeout setting with a value of 0 was given. The
expected behaviour is to return immediately if no messages
are waiting, but blocking was happening when used in
conjunction with the MT-CALL mode.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Icbbd5705e1d631f3c78dc0c27a392f681dad8737

4 years agoAdd missing constant for wrappers 81/981/1 1.8.1
E. Scott Daniels [Thu, 19 Sep 2019 15:09:40 +0000 (11:09 -0400)]
Add missing constant for wrappers

The RMRFL_MTCALL constant (rmr_init flag) was not being set in
the list of constants made avalable for wrapper scripts.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I6d5329677bd0492711f368e0c9d2f38ccc418e44

4 years agoAdd new message types 79/979/1 1.8.0
E. Scott Daniels [Thu, 19 Sep 2019 12:40:39 +0000 (08:40 -0400)]
Add new message types

Specifically:
RAN_CONNECTED
RAN_RESTARTED
RAN_RECONFIGURED

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I77cc3cf0a33161ee6020537653e837df7bd9b1b1

4 years agoChange connection mode to asynchronous 67/967/2 1.7.0
E. Scott Daniels [Tue, 17 Sep 2019 17:58:33 +0000 (13:58 -0400)]
Change connection mode to asynchronous

The default mode for NNG is to make TCP connections in
a synchronous or blocking manner (opposite of Nanomsg).
This change causes RMR to invoke the NNG connection function
(dialer) with the non-blocking flag set.  This will likely
result in soft failures (retries) on message send attempts
until the connection is completed.

The original blocking mode can be enabled by setting the
RMR_ASYNC_CONN environment variable to 0 which will turn
this off and cause connections to block. Absense of the
variable, or setting it to 1, causes asynch mode to be on.

This addresses the issue described in RICPLT-2215.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I4f544d772227b784efd1f7146a18921b91ae7f8e

4 years agoThe change to fix a bug2 78/878/2 1.6.0
E. Scott Daniels [Tue, 3 Sep 2019 14:52:41 +0000 (10:52 -0400)]
The change to fix a bug2
Fix return to sender retry bug; add env rts id

change 1: fix rts retry bug
The source IP address was not being restored properly after
a return to sender failure and subsequent retries were being
"reflected" rather than being sent to the message source.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I065e4b6b17896ee0de87e62916f72d2fc3067940

Support env var to define return to sender name

The host name in all environments cannot always be trusted to
be used as the message source from a "return to sender"
point of view.  This change allows the RMR_SRC_ID environment
variable to supply the "hostname" that is placed in a message
as the source and thus used when an application needs to
respond to the sender.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ie55c3147d6fc423c71315a43d23c88abc7e3c8d2

Tweak unit tests for better coverage

A warning was added if the multi-threaded receive process
drops messages. This tweak ensures it it tested during
unit test.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I380d58177cbc73eb1a10bbc52286922db7ead0b7

Bump version in CMake

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I2d4b19a5cfd1e2c9ecd196b0af2532788414e565

4 years agoRemove nanomsg support from app test scripts 46/846/1
E. Scott Daniels [Fri, 30 Aug 2019 16:58:54 +0000 (12:58 -0400)]
Remove nanomsg support from app test scripts

Nanomsg is no longer supported and this change drops the
attempt to build and test on top of the nanomsg library.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I3e167e28779e27115f2ccd732081ee69771f7f62

4 years agoAddress potential error state after good send 41/841/2 1.5.0
E. Scott Daniels [Tue, 27 Aug 2019 14:17:21 +0000 (10:17 -0400)]
Address potential error state after good send

This change addresses the potential to "hide" the good
status of a send in the case where there are multiple
round-robin groups for a message type. The send algorithm
was modified to eliminate the potential edge case and
to report a successful result if the message was accepted
for delivery to at least one group.

Two issues identified by valgrind (use of a potentially
uninitialised variable in a jump) were also corrected.

Intermediate commits:
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Add error tag to msg

Missing ERR on failure message.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Prevent NPE in symtab

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Adjust unit tests, fix valgrind inddicated issues

Unit tests were added to verify the new get rte function.
Valgrind indicated several places where a conditional was
using a potentially uninitialised variable; these were fixed.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I7c0a49713ab3d6fbb8f66e3d286049762433dc58

4 years agoAdd new message types 05/805/2 1.4.0
E. Scott Daniels [Mon, 26 Aug 2019 14:50:52 +0000 (10:50 -0400)]
Add new message types

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I4cafc3c0c84fdc857226cf7da3dda07bb560a3e7

4 years agoComplete rmr test coverage, restructure get_meid to be correct. 92/792/3
Tommy Carpenter [Fri, 23 Aug 2019 18:24:40 +0000 (14:24 -0400)]
Complete rmr test coverage, restructure get_meid to be correct.

Change-Id: I5d327d58f3059189d357e5c890c016ec3279811b
Signed-off-by: Tommy Carpenter <tommy@research.att.com>
4 years agoGreatly improve test coverage 70/770/2
Tommy Carpenter [Thu, 22 Aug 2019 13:34:57 +0000 (09:34 -0400)]
Greatly improve test coverage

Change-Id: Iaddc5fb3a365b34b91c3ae15649b4bb43f7f69a7
Signed-off-by: Tommy Carpenter <tommy@research.att.com>
4 years agoCorrect function name to repair infinite recursion 60/760/1
Lott, Christopher (cl778h) [Tue, 20 Aug 2019 18:35:35 +0000 (14:35 -0400)]
Correct function name to repair infinite recursion

Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: Ic92b2943ba953d2d624b42485f55ba3e41aadb51

4 years agoMerge "Added new message type constants"
Matti Hiltunen [Fri, 16 Aug 2019 14:14:28 +0000 (14:14 +0000)]
Merge "Added new message type constants"

4 years agoAdded new message type constants 35/735/3 1.3.0
E. Scott Daniels [Fri, 16 Aug 2019 12:30:20 +0000 (08:30 -0400)]
Added new message type constants

New message type constants were aded, and the constants were
organised in numerical order for easier visual inspection for
duplications.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: If2c50b5ea51254d418020c5a12aa47404083a54f

4 years agoFinish sphinx documentation 10/710/5
Tommy Carpenter [Wed, 14 Aug 2019 15:03:25 +0000 (11:03 -0400)]
Finish sphinx documentation

Issue-ID: RICPLT-1611
Change-Id: I842d5e34f1dbf662bdacc21ff65d06afa793632c
Signed-off-by: Tommy Carpenter <tommy@research.att.com>
4 years agoAdd sphinx documentation generation 02/702/4
Tommy Carpenter [Tue, 13 Aug 2019 20:02:42 +0000 (16:02 -0400)]
Add sphinx documentation generation

This is part 1 of 2 of a change. Part 1 adds a generation process.
Part 2 will make the docstrings more complaint so the generated docs
look nice.

Issue-ID: RICPLT-1611
Change-Id: Ie065affe5a4e2d44182e536f71287b666263de0d
Signed-off-by: Tommy Carpenter <tommy@research.att.com>
4 years agoAdd rmr_get_xact function 98/698/1 1.2.0
E. Scott Daniels [Tue, 13 Aug 2019 15:35:04 +0000 (11:35 -0400)]
Add rmr_get_xact function

The rmr_get_xact function can be used to extract the transaction
information from a message. This is a convenience function.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I303478df3e9558740b2c193c99416c2dfa9b9475

4 years agoMake the PYPI page for rmr look nicer. 96/696/3
Tommy Carpenter [Tue, 13 Aug 2019 14:53:29 +0000 (10:53 -0400)]
Make the PYPI page for rmr look nicer.

Change-Id: I6d2c42e7e348e25016cb706267b7065446ae3886
Signed-off-by: Tommy Carpenter <tommy@research.att.com>
4 years agoAdd example health check example programmes 76/676/1 1.1.1
E. Scott Daniels [Fri, 9 Aug 2019 19:37:48 +0000 (15:37 -0400)]
Add example health check example programmes

The example programs health check, and msg echo illustrate
how a simple RMR based health check application might be
implemented.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I4962db7f65c650c00b2a74e1e3c5e71a27cdedfc

4 years agoAdd user manual source 69/669/2
E. Scott Daniels [Tue, 6 Aug 2019 20:29:00 +0000 (16:29 -0400)]
Add user manual source

Template (.im) changes to support the user manual and
the user manual source (new). Readme files were added
to describe current, and future, directory organisation
of the doc portion of the repo.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I5d7e7b59a73e9c06dc139f419086f1b2f6b45bc2

Add user manual source

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I2c072128ad5ceede9d0329aa4a00b4d60ca5d0eb

Add CMake changes for the user manual

Just a version update; user manual not automatically generated
during build.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I33ca9dc275e66f5593e84a452d07f3cea50a8543

4 years agoAdd transport provider status to message buffer 66/666/2 1.1.0
E. Scott Daniels [Thu, 8 Aug 2019 14:15:43 +0000 (10:15 -0400)]
Add transport provider status to message buffer

This change adds a new field to the message buffer: tp_status.
The field allows the underlying "errno" value set by the
transport provider to be returned, in addition to the RMR
status, as a part of the overall message. In some environments
wrapper code (bindings) does not hav access to the errno value
and thus was unable to have the additional information on
send and receive failures.

The new field constitutes a backwards compatable change to RMR's
API, however the python wrapper API does not change. Minor version
bump, but the wrapper will see only a patch level bump.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I1b8a863318e2b2515441f7339b41c2856e46c1e4

4 years agoCorrect spelling mistakes 49/649/2 1.0.45
E. Scott Daniels [Tue, 6 Aug 2019 20:24:20 +0000 (16:24 -0400)]
Correct spelling mistakes

Several spelling errors not corrected before last merge.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I181a8d34f51005ee3f1fe64b4d685c189f4673de

4 years agoRemove Nanomsg library generation 48/648/7
E. Scott Daniels [Tue, 6 Aug 2019 17:26:12 +0000 (13:26 -0400)]
Remove Nanomsg library generation

Nanomsg has reached end of life, and as NNG has proven to
be a viable replacement, with extra features, support for
nanomessage has been dropped. This change is to the CMake
configuration to remove the build and inclusion of libnng
from packages.

RMR libraries will also now be installed in the system
preferred library directory by default, and not blindly
into the lib directory.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ie7bba044f8e2e06fd7920ae581bc35d7e0e42677

4 years agoAdd new message type 44/644/3 1.0.44
E. Scott Daniels [Tue, 6 Aug 2019 12:36:50 +0000 (08:36 -0400)]
Add new message type

The message type E2_TERM_INIT was added.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I2be5fc7de8cd46c083146b7308eac4620825a3dd

4 years agoTemplate changes for user manual 43/643/3
E. Scott Daniels [Thu, 1 Aug 2019 14:36:14 +0000 (10:36 -0400)]
Template changes for user manual

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Idb8704abdebe55c36d5e703155248338ed2dc39b

4 years agoMerge "Correctly include license info"
Scott Daniels [Wed, 31 Jul 2019 16:51:22 +0000 (16:51 +0000)]
Merge "Correctly include license info"

4 years agoCorrectly include license info 06/606/1
Tommy Carpenter [Wed, 31 Jul 2019 16:44:00 +0000 (12:44 -0400)]
Correctly include license info

Issue-ID: RICPLT-1855
Change-Id: Ica21a054b4b1797e6d73368954882eb2b07c0ab8
Signed-off-by: Tommy Carpenter <tommy@research.att.com>
4 years agoMerge "Add license here so shows up in pypi"
Scott Daniels [Wed, 31 Jul 2019 16:19:52 +0000 (16:19 +0000)]
Merge "Add license here so shows up in pypi"

4 years agoAdd license here so shows up in pypi 04/604/1
Tommy Carpenter [Wed, 31 Jul 2019 15:08:25 +0000 (11:08 -0400)]
Add license here so shows up in pypi

Issue-ID: RICPLT-1855
Change-Id: Iadb3858d31b4b3549ad74b9335b8b7ab05a427d8
Signed-off-by: Tommy Carpenter <tommy@research.att.com>
4 years agoAdd publish script to the CI environment 92/592/8
E. Scott Daniels [Tue, 30 Jul 2019 16:37:48 +0000 (12:37 -0400)]
Add publish script to the CI environment

The docker file will now set an entrypoint such that when the
container is run the ci/publish.ksh script is executed. The purpose
of the script is to copy the packages built into the image to a
mounted volume (/export by default). This eliminated the need for
an external process to extract files from the container.

Change-Id: I45ce98143bb84d2a802e1823ff003396bda6c9fe
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
4 years agoAdd lsender test programme 89/589/1
E. Scott Daniels [Mon, 29 Jul 2019 20:02:11 +0000 (16:02 -0400)]
Add lsender test programme

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I92bb7162363033ded245f118d6a3071288f325c4

4 years agoAdd support to generate man pages in txt and md 84/584/4
E. Scott Daniels [Mon, 29 Jul 2019 18:28:00 +0000 (14:28 -0400)]
Add support to generate man pages in txt and md

Manual pages can now be generated in plain ASCII text as
well as in markdown. This is in addition to the prviously
generated postscript, troff and rst.  All output types are
generated when the build doc CMake configuration variable
is set high.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ib98e6df65c32944807a99a6c5b80859182038c4d
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
4 years agoAdd missing send timeout man page 21/521/1
E. Scott Daniels [Tue, 16 Jul 2019 16:03:45 +0000 (12:03 -0400)]
Add missing send timeout man page

Manual page for the rmr_set_stimeout function was added and
other man page and documentation references were updated.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ie1b29a4db6456e6f5034ecfa4dd218952f1ff722

4 years agoPrevent unneeded usleep after send retries 15/515/1
E. Scott Daniels [Mon, 15 Jul 2019 14:31:42 +0000 (10:31 -0400)]
Prevent unneeded usleep after send retries

If retries were enabled, an extra usleep for 1mu-sec was being
unnecessarily executed after the last retry attempt.

Doc related to retries modifided in main rmr_nng module.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: If8032a86bba5df63231c6dd5e50f262c64875c13

4 years agoAdd new message types to header file 10/510/1
E. Scott Daniels [Fri, 12 Jul 2019 19:00:28 +0000 (15:00 -0400)]
Add new message types to header file

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I4d3a89029d2ad33da6d4737aab4abc0f308a574f

4 years agogenerate Add mbuf api funcion to reference to trace dat1 99/499/2
E. Scott Daniels [Thu, 11 Jul 2019 14:24:01 +0000 (10:24 -0400)]
generate Add mbuf api funcion to reference to trace dat1

The rmr_trace_ref() function has been added to allow the user
programme the ability to obtain a direct reference to the
trace data in a message buffer.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I2450dc4473b815460a8f011897f4b0a16d45fc51
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
4 years agoUpdate BUILD to reflect the dev package option 90/390/1 1.0.36
E. Scott Daniels [Thu, 20 Jun 2019 12:23:11 +0000 (08:23 -0400)]
Update BUILD to reflect the dev package option

The -DDEV_PKG option was not described in the BUILD file.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I4a109fdaa603f6b0ede6c4a3254b2288b53e8ff1

4 years agofix(ci): Correctly set internal package name 84/384/1
E. Scott Daniels [Wed, 19 Jun 2019 14:59:18 +0000 (10:59 -0400)]
fix(ci): Correctly set internal package name

The package name placed inside of the package was the
generic project name, and not the specially crafted -dev
or -devel name needed for the development packages to
be different from the run-time packages. This change
captures the correct name interally when a development
package is created.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ia5139ba682c4c24f94becea55860ac9083a2d8c2

4 years agofix(ci): Remove duplicate info from dev pkg 79/379/5
E. Scott Daniels [Tue, 18 Jun 2019 20:02:17 +0000 (16:02 -0400)]
fix(ci): Remove duplicate info from dev pkg

The dev package was including the library (.so) files
which seems not to be standard custom.  The dev package
now includes only the header, man pages, and archive (.a)
files.   The build_packages.yml file was also simplified.

Change-Id: Ib06eabcdc33a27345492b52a46a9bcaa50aa8176
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
4 years agofix(build): Set the submodule refs correctly 77/377/2
E. Scott Daniels [Tue, 18 Jun 2019 17:14:32 +0000 (13:14 -0400)]
fix(build): Set the submodule refs correctly

When code was moved to LF the submodule references were
not set to NNG 1.1.1 and Nanomsg 1.1.5.  This change
sets the reference points to the desired spots.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I13582b6601cf58c035b9069a80a2f94ba6003d26

4 years agoenhance(ci): Add multiple package build 54/354/6
E. Scott Daniels [Mon, 17 Jun 2019 19:08:17 +0000 (15:08 -0400)]
enhance(ci): Add multiple package build

The CI docker file now drives a CI build script which
will execute the unit and application based tests, and
if successful will build run-time and development .deb
and .rpm packages.  Packages are left in /tmp by default
and are indexed by build_packages.yml which is also left
in /tmp.

Change-Id: Ieaa97e1cab1d9cbb721e19d667192e336becec08
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
4 years agoMerge "enhance(test): Add route generation simulator"
Matti Hiltunen [Mon, 17 Jun 2019 17:01:00 +0000 (17:01 +0000)]
Merge "enhance(test): Add route generation simulator"

4 years agoenhance(test): Add route generation simulator 49/349/3
E. Scott Daniels [Mon, 17 Jun 2019 14:09:14 +0000 (10:09 -0400)]
enhance(test): Add route generation simulator

The simulator provids the means to generate one or more
route tables which are delivered through the RMr route table
collector thread.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I95d73ad5a0dc28c380bed2b9cb314a8b646429d8
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
4 years agofix(build): Correct var retention bug in cmake 45/345/1
E. Scott Daniels [Fri, 14 Jun 2019 16:30:21 +0000 (12:30 -0400)]
fix(build): Correct var retention bug in cmake

The PACK_EXTERNAL flag was not being removed from the
cache after configuring the Makefile. This was causing
the pack external flag to remain set for all subsequent
executions of cmake even if the flag was not given (and
the default of 0 expected).

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I308e5bf64248d9107760ce0669be282437e5d06b

4 years agoenhance(ci): Add ability to generate RPM package 31/331/7
E. Scott Daniels [Wed, 12 Jun 2019 17:48:25 +0000 (13:48 -0400)]
enhance(ci): Add ability to generate RPM package

The CMake configuration was enhanced to add the ability to
generate an RPM package in addition to a Debian package
provided the rpmbuild command is available in the current
environment.   The packages generated are now added to
the /tmp/build_output.yml file as fully qualified paths.

By default, the geneated package is a run-time package which
includes only the rmr libraries (no header files, and no
external libraries used to build RMr).  If the cmake
option -DDEV_PKG=1 is given at configure time, a dev package
will be generated which includes the header files, and
will have -dev added following the version info in the
package name (e.g. rmr-1.0.34.x86_64-dev.deb).

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ifb606e1f8b1ad0f08b3c4bd8b4012c0382947e04
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
4 years agoenhance(build): Add deb refernce file for ci/cd 07/307/1
E. Scott Daniels [Tue, 11 Jun 2019 19:57:02 +0000 (15:57 -0400)]
enhance(build): Add deb refernce file for ci/cd

The CMake configure process will create a file in /tmp
which provides a fully qualified path to the deb file
which is generated when 'make package' is executed.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I5b21230f13e63403493e3344cf1d56a847406122

4 years agofix(test): Fix command line opt in run all script 02/302/1
E. Scott Daniels [Tue, 11 Jun 2019 17:51:37 +0000 (13:51 -0400)]
fix(test): Fix command line opt in run all script

The end to end run all test script was inavertently
setting the installed flag to test agains the installed
libraries rather than the current source libraries by
default.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ic11b01a425897bce4cf0a47234f5fd398a7cad74

4 years agofix(test): Remove unit_test dependency on install 01/301/1
E. Scott Daniels [Tue, 11 Jun 2019 17:35:39 +0000 (13:35 -0400)]
fix(test): Remove unit_test dependency on install

The unit tests were accidentally dependent on the nanomsg
and nng libraries being installed on the system. Change
references them from the build envionment as intended.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I3ebee18a796e535eb20d39e06be7f6def7a603e5

4 years agoenhance(API): Add new message type 00/300/1
E. Scott Daniels [Tue, 11 Jun 2019 17:23:55 +0000 (13:23 -0400)]
enhance(API): Add new message type

The message type 1090 was added.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I2d3f95fe580660749ad0c6a0a4374adbbbf9a165

4 years agofix(man): Add missing man page 99/299/1
E. Scott Daniels [Tue, 11 Jun 2019 17:19:19 +0000 (13:19 -0400)]
fix(man): Add missing man page

The get_srcip man page was never committed.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ic4a2a818711f871ec33df1e9f810fbc499900020

4 years agoSimplify continuous-integration build 89/289/2
Lott, Christopher (cl778h) [Mon, 10 Jun 2019 20:53:39 +0000 (16:53 -0400)]
Simplify continuous-integration build

Extend dockerfile to call make package.
Move dockerfile to new ci subdirectory.
Remove the (now unneeded) container tag file.
Document the docker-based build process.

Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: I94f9cb9eaabd797b76011aa9c6229345a799d4f9

4 years agofix(doc): Correct typo on wh_open man page 84/284/1 1.0.31
E. Scott Daniels [Mon, 10 Jun 2019 14:34:51 +0000 (14:34 +0000)]
fix(doc): Correct typo on wh_open man page

The prototype and example on the rmr_wh_open man page
incorrectly reference rmr_open() and not rmr_wh_open().

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I667da2e5976ece04952d34e9110832f30f51e68e

4 years agodoc(log): Make err/cri/wrn tags consistent 77/277/1
E. Scott Daniels [Fri, 7 Jun 2019 17:19:27 +0000 (17:19 +0000)]
doc(log): Make err/cri/wrn tags consistent

Tags in error messages were inconsistent.  They are now
all one of: ERR, CRI, or WRN to make it easier to search
stderr.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I83a1d95e29296eadb3749885e1ac7f6ff0da7826

4 years agofix(rtable): Prevent direct send hairpins 76/276/3
E. Scott Daniels [Thu, 6 Jun 2019 16:44:33 +0000 (16:44 +0000)]
fix(rtable): Prevent direct send hairpins

If the current node is listed as an endpoint for a message type
that this process would add to the route table a hair-pin loop
back to the node can happen. This isn't desireable and this
change will prevent the current node from being added as a
recipient endpoint to any route table entry.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I5a1b2bdaad2eab499ae5a1c7430238c1da2f3256

Add latency call/receive test support

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I70be670d063adfdf6505431a4a2ce72e846df0a4

Actual mods to implement hairpin loop avodiance

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ieead4fbf69ade58db1f37d1949cf0f03683c64de
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
4 years agoenhance(rtc): Tolerate missing newline in rtable 72/272/1
E. Scott Daniels [Thu, 6 Jun 2019 16:21:24 +0000 (16:21 +0000)]
enhance(rtc): Tolerate missing newline in rtable

If the final record in a static route table does not have
a final newline (\n) this will be tolerated and the table
will be parsed as if the newline was present.  On some
systems it is not possible for the user to control when a
final newline is added (or not).

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I5627bd2a0b59a628a20757428df7960149c8229b

4 years agofix(rtc): Prevent core dump if \r used in rt file 69/269/1
E. Scott Daniels [Thu, 6 Jun 2019 12:10:26 +0000 (12:10 +0000)]
fix(rtc): Prevent core dump if \r used in rt file

Some operating systems, and/or filesystems, insist on using \r
as record termination (newline) indication rather than the
standard \n.  RMr was dependent on only finding \n as record
termination when parsing the route table entries, however as
it may be out of the user control to generate a static file with
the proper termination this change allows \r to be in the static
file.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ic18d5828f5a4b6855492b03718d105b57406431e

4 years agoenhance(API): Add source IP support to msg header 50/250/6
E. Scott Daniels [Mon, 3 Jun 2019 19:45:12 +0000 (19:45 +0000)]
enhance(API): Add source IP support to msg header

The message header now carries both the hostname and IP
address of the source process.  The return to sender function
will use the IP address instead of the host name. It is possible
to set RMR_SRC_NAMEONLY=1 in the environment, or for the user
application to set this flag, to force only the use of the
hostname in the header.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Id6305fab79fabbffffb343af1094e48fbf662b5d
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
4 years agoAdd Dockerfile to compile and test RMR 44/244/4
Lott, Christopher (cl778h) [Mon, 3 Jun 2019 20:53:52 +0000 (16:53 -0400)]
Add Dockerfile to compile and test RMR

For use by Jenkins verify job.
Add a few words in README about it.

Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: I31522003b5dc0cc1a2530a7734f022e5327c9a0c

4 years agofix(internal): Correct potential nil pointer err 34/234/1
E. Scott Daniels [Fri, 31 May 2019 18:50:57 +0000 (18:50 +0000)]
fix(internal): Correct potential nil pointer err

With multiple user threads, if concurrently sending to the same
round robin group, there was a potential for a nil pointer
to be selected representing an endpoint.

Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I1ee57ff5d17998a5d097e583d497158f19eb300b

4 years agofix(test): Correct unit test bugs 05/205/1
E. Scott Daniels [Wed, 29 May 2019 13:38:43 +0000 (13:38 +0000)]
fix(test): Correct unit test bugs

Return in mbuf_api_test.c was missing causing occasional
report of failed test when all tests passed.

unit_test.ksh wasn't properly searching for build directory
on systems which support lib64 naming conventions.

Change-Id: Idc208ef796c8dabf70c039e38fafab2a34db4df9
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
4 years agoenhance(API): Add multi-threaded call 97/197/3
E. Scott Daniels [Mon, 20 May 2019 20:00:52 +0000 (20:00 +0000)]
enhance(API): Add multi-threaded call

Change-Id: I2d7c9abd2aabe4c2f05ba0935acaeb4f3fd8bb94
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
 Tweaks to call based on testing

Change-Id: I2cda8652ba045bf411bda77e64d2a92de8d2c0f2
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
 Add nng call static module

Change-Id: I5e964078ae346b25cc283ea32239271ea69fa55e
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
 Add locking round connect

Change-Id: Icf7a9c691385f199107b746c34c32f8f83b1ef04
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
 Tweaks based on testing; move mtrcv to static module

Change-Id: I75c38a9eeb34991da92fdb6f655b11d7f600d8a8
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
 Unit test changes

Change-Id: I7c1d3dcbe8802ce459a63b762c3ad3b8abeb7a61
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
 Beef up unit tests to passing after discount, all >70% before discount

Change-Id: I0e34052c142cfea77053512aac68008c3af49694
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
 Update application oriented tests to include mt-call

Change-Id: I0939abf96008ed7fde9640a070d09e683c0d5dea
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
 Fix possible nil pointer problem

Change-Id: I55e911761d54b9fc7500c121de018b485913763e
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
 Tweaks resulting from testing

Change-Id: Iaa6fb4d2719a39dbe209e17cc793c2341a477043
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
 Add info message to make it obvious when mt-receive is enabled

Change-Id: I6dd3cd5ad01d5cf2a09dda87ce6fdd0bc5a4670c
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
 Add man pages for new mt functions

Change-Id: Ia52e5d71502bcebe6af65024602dc32ca8877b52
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
 Add man pages to CMake

Change-Id: I60ff3a753d9249c8797d9141dd3ce2b5b55752b8
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
 Update CM version

Change-Id: I9e0f031f4e8a0ccba8ae7c788a6d9bc6dcb0f15b
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
5 years agoenhance(header): Add message type 81/181/1
E. Scott Daniels [Mon, 20 May 2019 20:04:03 +0000 (20:04 +0000)]
enhance(header): Add message type

Change-Id: I71b25c7eb5fc375d69581ad6545403fd6aca0d56
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
5 years agoFix python README URLs 79/179/1
Tommy Carpenter [Mon, 20 May 2019 17:30:42 +0000 (17:30 +0000)]
Fix python README URLs

Change-Id: I0f8211c920fc258073413be28876010ec7fb6278
Signed-off-by: Tommy Carpenter <tommy@research.att.com>
5 years agoAdd rmr-python 78/178/1
Tommy Carpenter [Mon, 20 May 2019 15:12:30 +0000 (15:12 +0000)]
Add rmr-python

Change-Id: I416259fa1164d5848c37eecf15117debffb9a25f
Signed-off-by: Tommy Carpenter <tommy@research.att.com>
5 years agomaint(dirs): prep for adding bindings 72/172/1
E. Scott Daniels [Fri, 17 May 2019 17:50:59 +0000 (17:50 +0000)]
maint(dirs): prep for adding bindings

Source tree has been reorganised making way for language
wrappers (bindings) to be added.  RMr soruce is now in
src/rmr, and language specific wrappers will be placed into
subdirectories under src/bindings (e.g. rmr-python).

Change-Id: I2cac4e476e9c803b96cee2640ee2267434009cb1
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
5 years agotest(e2e): Add return to sender app based test 67/167/1
E. Scott Daniels [Thu, 16 May 2019 17:04:34 +0000 (17:04 +0000)]
test(e2e): Add return to sender app based test

Change-Id: Idb460369c4210a614dfba961efa3a8df8f5ee51a
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
5 years agofeature(routes): Add rtable update 64/164/1
E. Scott Daniels [Wed, 15 May 2019 14:46:17 +0000 (14:46 +0000)]
feature(routes): Add rtable update

RMr now supports the ability to update entries in the route
table throught the updatert request.

Change-Id: I49c7a1875017e36359044399cf99aacc93e15dc7
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Fix bug in symtab numeric key del

Numeric key was being truncated because of an incorrect
cast (int, instead of int64_t).

Change-Id: I854a2b39e3c890a992ec390879e3a7d2418f6e53
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Add route table update test

Change-Id: I1737219cbadf15c5214a2b54d15f74225c781242
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Fix whitespace things

Change-Id: Ibd5e14ad8c7930d386e407ad92d2e903da6eac86
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
5 years agotest(unit): Fix warning in unit test script 63/163/1
E. Scott Daniels [Tue, 14 May 2019 20:07:36 +0000 (20:07 +0000)]
test(unit): Fix warning in unit test script

Eliminated error/warning message if attempt to delete .gcov
files fails when there are none to delete.

Change-Id: Ib552c3e73161ca5572d220f03498aba878a3bfc8
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
5 years agofix(rtable): Potential memory leak in rte replace 51/151/1
E. Scott Daniels [Tue, 14 May 2019 14:14:20 +0000 (14:14 +0000)]
fix(rtable): Potential memory leak in rte replace

If a route table entry was overlaid during the loading of
a new table there was a potential for leaking. Added unit
tests to better verify results of symtab cloning.

Change-Id: I6afecf52e9a48b36da3a06fa01867956a1a52261
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
5 years agofix(send): Add second key lookup if sub-id is set 44/144/2
E. Scott Daniels [Mon, 13 May 2019 17:28:39 +0000 (17:28 +0000)]
fix(send): Add second key lookup if sub-id is set

When finding an endpoint based on mtype+sub_id a second lookup
using just mtype is now performed if the mtype/sub_id combination
did not map to an endpoint.  This allows for "auto correction"
if the user application does not reset (clear) the sub_id when a
mtype should not be sent with one.

Fixed broken unit test for rmr_call()

Change-Id: I5056e3d0a477d5a4272031ad8b2046e3ffca7c8a
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
5 years agotest(unit): Skip deb check if dpkg not installed 43/143/1
E. Scott Daniels [Mon, 13 May 2019 15:06:46 +0000 (15:06 +0000)]
test(unit): Skip deb check if dpkg not installed

Some systems do not use dpkg and thus it might not be installed
by default. The unit test will not verify the .deb file after
creation if dpkg is not installed/supported by the underlying
flavour of Linux.

Change-Id: Ia28f43a09a88a4410bcbf94dd6704ea261ebbc07
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
5 years agotest(app): Support lib64 based Linix flavours 42/142/1
E. Scott Daniels [Mon, 13 May 2019 15:03:36 +0000 (15:03 +0000)]
test(app): Support lib64 based Linix flavours

Some flavours of Linux default to installing libraries
in lib64 rather than using lib as the default hardware
type and libXX as alternate architecture formats. These
changes allow the application oriented test scripts to
find the RMr libraries in the build directory regardless
of the choice of the underlying system.

Change-Id: I74aa982d7934f9c7dc7a5e86bbd1fa678c8dec61
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
5 years agofix(build): Capture lib dir info on all flavours 31/131/1
E. Scott Daniels [Thu, 9 May 2019 14:39:19 +0000 (14:39 +0000)]
fix(build): Capture lib dir info on all flavours

For some flavours of Linux (arch, alpine, SuSE) the use of
lib64 as the installation directory made it difficult to
find the nano/nng libraries during the RMr build and install
process.  This change pulls the lib dir info as the nano/nng
CMake files do and thus is able to find the libraries
without needing a specific command line -D option on these
systems.

Change-Id: I70527865a47774ab446f6924788f5b864a776156
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
5 years agoenhance(API): Add constant passthru for wrappers 16/116/1
E. Scott Daniels [Mon, 6 May 2019 20:19:59 +0000 (20:19 +0000)]
enhance(API): Add constant passthru for wrappers

Change-Id: I3c417e0b74514d1f86bc1930b507f49f0b14baab
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
5 years agoUpdate RIC message type constants 11/111/1
E. Scott Daniels [Fri, 3 May 2019 19:38:48 +0000 (19:38 +0000)]
Update RIC message type constants

Change-Id: I6879bdb0dca9171ccd1e88e34aac2829cad999e4
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
5 years agodoc(manpage): Correct typo in man page 10/110/1
E. Scott Daniels [Fri, 3 May 2019 19:24:04 +0000 (19:24 +0000)]
doc(manpage): Correct typo in man page

Change-Id: Id428e2b645d5ddf6a3fb2e5b58ccd3e52e6ad56c
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
5 years agotest(unit): Add nanomsg unit tests 03/103/3
E. Scott Daniels [Thu, 2 May 2019 17:09:35 +0000 (17:09 +0000)]
test(unit): Add nanomsg unit tests

This adds unit tests which drive the nanomsg portion of the
library. The unit test script also now merges coverage
reports so that common portions of the library do not need
to be tested by both nano and nng tests in order to show
accurate coverage information.

Change-Id: Id852d46272972f481d4f37d8a60681228b4bc0ff
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
5 years agofix(API): Add missing trace init function 01/101/1
E. Scott Daniels [Thu, 2 May 2019 15:44:16 +0000 (15:44 +0000)]
fix(API): Add missing trace init function

The trace init funciton was missing from the nanomsg support
in the library.

Change-Id: I4afae697c32e1d7eb99685f10843890fd98be73c
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
5 years agotest(unit): Fix broken unit test for rmr_call 87/87/1
E. Scott Daniels [Fri, 26 Apr 2019 12:01:54 +0000 (12:01 +0000)]
test(unit): Fix broken unit test for rmr_call

Change-Id: I62dae74a6047144f209b7de80a9d03a3f6e6d397
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
5 years agofeat(routing): Support session based routing 84/84/1
E. Scott Daniels [Tue, 23 Apr 2019 18:24:25 +0000 (18:24 +0000)]
feat(routing): Support session based routing

The session id field in a message buffer is now used
directly for routing.

Change-Id: I3634c97588b11172db964b2d06c96c317d8b8ae3
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Routing table entry changes to pick up subid

Change-Id: If08dc21aae4acaab350ba75a8854ad2f24007b03
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Fix unit test for rmr_call

It was not properly setting message type and now that RMr
ensures that invalid message type is set by default on a newly
created message this was causing unit test to fail.

Change-Id: I50f08d1038ea7fca2a070cdd949657bfbc25f3fd
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Add application level tests

Added round robin and multi group application level
test scripts.

Change-Id: Ic6aebaf3bc1edb763decc7fd0aebb09df116f20c
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
NNG based sub-id support added

Change-Id: I0d36b55bb90a315ba94c9476df88e2c7eac6c383
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Correct bug in app test script

Change-Id: I5b4a9f32aa1bc2907f320b8ad4628e0948062904
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Nano sub-id changes and unit test updates

Change-Id: Ia69f2fb33de3bbee2f33f9a4c5def779c872e52c
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change nil-sub_id key to high order key

If there is no sub-id, then the key is based only on the
message type, but to allow for a sub-id == 0 the key
when there is no subscription id must be set to
0xffffffff00000000 + msg type.

New version for deb is 1.0.19

Change-Id: I55f89d368466a0137fdea99410c76ba72e1923ab
Signed-off-by: E. Scott Daniels <daniels@research.att.com>