Error enabling security in RTI Administration Console

18 posts / 0 new
Last post
Offline
Last seen: 2 months 3 days ago
Joined: 01/30/2020
Posts: 14
Error enabling security in RTI Administration Console

I've enabled security in RTI Administration Console, and I'm receiving the following error on load:

[CREATE Participant] RTIOsapoLibrary_open:!open library=nddssecurity.dll

(refer attachment)

I'm not able to view secured topics / data.

I've enabled security in Preferences:

Enabled Security for specified Domains: true

Domain Filter: *

Shared Secret Algorithm: Elliptic Curve Diffie-Hellman

Encryption Algorithm AES 128

I've installed the following packages via RTI Launcher > Configuration > Install RTI Packages:

rti_connext_dds-6.0.0-pro-host-x64Win64

rti_connext_dds-6.0.0-pro-target-x64Win64VS2017

rti_security_plugins-6.0.0-host-x64Win64

rti_security_plugins-6.0.0-target-x64Win64VS2017

openssl-1.0.2o-6.0.0-host-x64Win64

openssl-1.0.2o-target-x64Win64VS2017

My PATH includes:
C:\openssl-1.0.2o\x64Win64VS2017\release\bin

C:\openssl-1.0.2o\x64Win64VS2017\release\lib

C:\Program Files\rti_connext_dds-6.0.0\lib\x64Win64VS2017 (nddssecurity.dll is in this directory)

This is not a development machine, so I imagine the target packages may not be required, but they're added anyhow, as they include the required dlls.  These are the same packages installed on the development machine.  The client application built from the development machine is connecting fine when run on the client machine, but the Administration Console on the client machine reports the above error.

The key algorithm used in the certificates is RSA, which doesn't match the options available in preferences (only DH and ECDH are available), but the error doesn't appear that it's getting that far.

Question 1:

Why am I hitting the above error, unable to load security plugins

Question 2:

How do I specify RSA encryption in Preferences?

Reference:

https://community.rti.com/howto/how-configure-security-admin-console

Thanks,

Chris

r
Offline
Last seen: 1 month 3 weeks ago
Joined: 06/17/2019
Posts: 28

For your second question, I don't believe DDS uses RSA for encryption of individual samples. Public key crypto like RSA is significantly slower and often requires larger key lengths for the same "level" of protection that private key / symmetric crypto offers (like AES).

Therefore DDS and nearly every other crytpo system I've seen uses public key crypto for the participant discovery and key establishment (to exchange certificates and private keys), then it switches over to using those private keys for encrypting the larger payload.

Howard's picture
Offline
Last seen: 18 hours 47 min ago
Joined: 11/29/2012
Posts: 267

So, the Admin Console (which is usually invoked through a .bat file that modifies the PATH) uses the executable in

%INSTALLATION_PATH%\rti_connext_dds-6.0.0\resource\app\bin\x64Win64VS2010

and libraries in

%INSTALLATION_PATH%\rti_connext_dds-6.0.0\resource\app\lib\x64Win64VS2010

When you installed the rti_security_plugins-6.0.0-host-x64Win64 file, it should have installed

%INSTALLATION_PATH%\rti_connext_dds-6.0.0\resource\app\lib\x64Win64VS2010\nddssecurity.dll

However, that file won't be loadable unless it's dependencies on OpenSSL libs are loaded...the OpenSSL libs used by Admin Console should be installed when you install

openssl-1.0.2o-6.0.0-host-x64Win64.rtipkg

This should install

%INSTALLATION_PATH%\rti_connext_dds-6.0.0\resource\app\lib\x64Win64VS2010\libcrypto-1_1-x64.dll

%INSTALLATION_PATH%\rti_connext_dds-6.0.0\resource\app\lib\x64Win64VS2010\libssl-1_1-x64.dll

So please verify that all three files are installed.

The target files of the platform x64Win64VS2017 aren't used by Admin Console.

Offline
Last seen: 2 months 3 days ago
Joined: 01/30/2020
Posts: 14

Hi Howard,

I've installed openssl-1.0.2o-6.0.0-host-x64Win64.rtipkg, however, the files libcrypto-1_1-x64.dll and libssl-1_1-x64.dll were not installed.  I've got these dlls from elsewhere and dropped them in this folder, but I'm still getting the same error.  Is there a specific version of these dlls, or any idea how to correct this installation?

Thanks a lot for your help.
Chris

 

Howard's picture
Offline
Last seen: 18 hours 47 min ago
Joined: 11/29/2012
Posts: 267

So, apologies, but the files that I pointed out in my last post were actually ones expected to be installed/included for those folks using RTI Connext DDS 6.0.1...which uses openssl.1.1.1d.

For RTI Connext 6.0.0 that uses openssl.1.0.2o, the files that are installed are

%INSTALLATION_PATH%\rti_connext_dds-6.0.0\resource\app\lib\x64Win64VS2010\libeay32.dll

%INSTALLATION_PATH%\rti_connext_dds-6.0.0\resource\app\lib\x64Win64VS2010\ssleay32.dll

Can you verify that those files exist in your installation?  Assuming that they do...then, we should try to figure out where Admin Console is finding it's DLLs on your host..

How many different places can you find the files, nddssecurity.dll, ssleay32.dll, and libeay32.dll?

Anyways, I tried the following to figure out if Admin Console is finding the files where it's supposed to find them

1) Install Sysinternals from

https://docs.microsoft.com/en-us/sysinternals/downloads/

Unzip, and then there are a bunch of very useful commandline and graphical utilities

2) listdlls

a) run rtiadminconsole.bat

Use SysinternalsSuite\listdlls to find out where RTI Connext DLLS are loaded, e.g.

c:\Apps\SysinternalsSuite\listdlls javaw.exe

you may have alot of Java apps running, you need to find which one it the one for AdminConsole, or use TaskManager to use the PID instead of the task name,

 

example output is (NOTE that I'm running RTI Connext 6.0.1)

C:\Rti\rti_connext_dds-6.0.1\bin>c:\Apps\SysinternalsSuite\listdlls 11648

Listdlls v3.2 - Listdlls
Copyright (C) 1997-2016 Mark Russinovich
Sysinternals

------------------------------------------------------------------------------
javaw.exe pid: 11648
Command line: C:\Rti\rti_connext_dds-6.0.1\bin\..\resource\app\jre\x64Win64\bin\javaw.exe -Dosgi.configuration.cascaded=true -Dosgi.sharedConfiguration.area=C:\Rti\rti_connext_dds-6.0.1\bin\..\resource\app\app_support\admin_console\x64Win64\configuration -jar C:\Rti\rti_connext_dds-6.0.1\bin\..\resource\app\eclipse\plugins\org.eclipse.equinox.launcher_1.5.0.v20180512-1130.jar -os win32 -ws win32 -arch x86_64 -showsplash -launcher C:\Rti\rti_connext_dds-6.0.1\bin\..\resource\app\bin\x64Win64VS2010\RTI_AdminConsole.exe -name RTI_AdminConsole --launcher.library C:\Rti\rti_connext_dds-6.0.1\bin\..\resource\app\eclipse\plugins\org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.700.v20180518-1200\eclipse_1705.dll -startup C:\Rti\rti_connext_dds-6.0.1\bin\..\resource\app\eclipse\plugins\org.eclipse.equinox.launcher_1.5.0.v20180512-1130.jar --launcher.overrideVmargs -exitdata 3360_d8 -install C:\Rti\rti_connext_dds-6.0.1\bin\..\resource\app\eclipse -configuration C:\Users\howard\Documents\rti_workspace\6.0.1\user_config\admin_console\x64Win64\configuration -data C:\Users\howard\Documents\rti_workspace\6.0.1\user_config\admin_console\x64Win64 -vm C:\Rti\rti_connext_dds-6.0.1\bin\..\resource\app\jre\x64Win64\bin\javaw.exe -vmargs -Dosgi.configuration.cascaded=true -Dosgi.sharedConfiguration.area=C:\Rti\rti_connext_dds-6.0.1\bin\..\resource\app\app_support\admin_console\x64Win64\configuration -jar C:\Rti\rti_connext_dds-6.0.1\bin\..\resource\app\eclipse\plugins\org.eclipse.equinox.launcher_1.5.0.v20180512-1130.jar

Base                Size      Path
0x000000001c4c0000  0x37000   C:\Rti\rti_connext_dds-6.0.1\resource\app\jre\x64Win64\bin\javaw.exe
0x00000000d7650000  0x1f6000  C:\WINDOWS\SYSTEM32\ntdll.dll
0x00000000d5e90000  0xbd000   C:\WINDOWS\System32\KERNEL32.DLL

...[snip]...

0x00000000d6440000  0x115000  C:\WINDOWS\System32\MSCTF.dll
0x00000000d60f0000  0xcd000   C:\WINDOWS\System32\OLEAUT32.dll
0x00000000ba790000  0x96000   C:\Rti\rti_connext_dds-6.0.1\resource\app\lib\x64Win64VS2010\6.0.1\nddsjava.dll
0x0000000096210000  0x495000  C:\Rti\rti_connext_dds-6.0.1\resource\app\lib\x64Win64VS2010\6.0.1\nddsc.dll
0x0000000095d40000  0x4c4000  C:\Rti\rti_connext_dds-6.0.1\resource\app\lib\x64Win64VS2010\6.0.1\nddscore.dll
0x00000000b99f0000  0x17000   C:\WINDOWS\system32\napinsp.dll
0x00000000b9580000  0x1b000   C:\WINDOWS\system32\pnrpnsp.dll

...[snip]...

from which you can see that it's loading the Connext DDS libs from

C:\Rti\rti_connext_dds-6.0.1\resource\app\lib\x64Win64VS2010\6.0.1\

NOTE:  In that directory, the files: nddssecurity.dll, ssleay32.dll, and libeay32.dll, do not exist.  Instead they should be in the directory higher up:

C:\Rti\rti_connext_dds-6.0.1\resource\app\lib\x64Win64VS2010\

3) when I enable Security in my AdminConsole, the listdlls shows the dependencies on these additional files

0x00000000a7730000  0x82000   C:\Rti\rti_connext_dds-6.0.1\resource\app\lib\x64Win64VS2010\nddssecurity.dll
0x0000000095a10000  0x322000  C:\Rti\rti_connext_dds-6.0.1\resource\app\lib\x64Win64VS2010\libcrypto-1_1-x64.dll

so you can see that they are being loaded from the parent directory of where the Connext DDS libs.

 

4) I renamed

C:\Rti\rti_connext_dds-6.0.1\resource\app\lib\x64Win64VS2010\nddssecurity.dll

to

C:\Rti\rti_connext_dds-6.0.1\resource\app\lib\x64Win64VS2010\nddssecurity.dll.cxx

And then reran rtiadminconsole...now it loads a different version of nddssecurity.dll (which was compiled with VS2015 and thus also loaded it's CRuntime libs).

0x00000000a7730000  0x84000   C:\Rti\rti_connext_dds-6.0.1\lib\x64Win64VS2015\nddssecurity.dll
0x00000000b8c10000  0x16000   C:\Rti\rti_connext_dds-6.0.1\resource\app\jre\x64Win64\bin\VCRUNTIME140.dll
0x0000000095a10000  0x322000  C:\Rti\rti_connext_dds-6.0.1\resource\app\lib\x64Win64VS2010\libcrypto-1_1-x64.dll

(also it loaded the new OpenSSL lib from 1.1.1d, yours will likely be using libeay32.dll from 1.0.2o)

5) which is why I asked if you had more than one version of nddssecurity.dll loaded in your filesystem.  Try to force Admin Console to only find this one,

C:\Rti\rti_connext_dds-6.0.1\resource\app\lib\x64Win64VS2010\nddssecurity.dll

then make sure that libeay32.dll is in the same directory.  I would not copy these files...you may be getting wrong versions (i.e., 32-bit versus 64-bit).

By default, RTI Admin Console should be using the 64 bit versions since it's running 64 bit Java app.  If it finds a 32 bit version of a DLL and tries to load it, you'll see the exact same error that you're seeing.

Good luck...

 

Offline
Last seen: 2 months 3 days ago
Joined: 01/30/2020
Posts: 14

Hi Howard,

Ok, so what I'm seeing is considerably different to what we're expecting.

I ran listdlls under 2 conditions.
My initial installation, included target packages. I didn't see what I expected. I reinstalled (this time without the target packages), and tried again.

1a)
The first installation (with the x64Win64VS2017 target packages installed), I could see the following:
0x000000004fb70000 0x96000 C:\Program Files\rti_connext_dds-6.0.0\resource\app\lib\x64Win64VS2010\6.0.0\nddsjava.dll
0x0000000045920000 0x49b000 C:\Program Files\rti_connext_dds-6.0.0\resource\app\lib\x64Win64VS2010\6.0.0\nddsc.dll
0x0000000045440000 0x4dd000 C:\Program Files\rti_connext_dds-6.0.0\resource\app\lib\x64Win64VS2010\6.0.0\nddscore.dll

There is no nddssecurity.dll or openssl dependencies loaded. These files DID exist in both the C:\Program Files\rti_connext_dds-6.0.0\resource\app\lib\x64Win64VS2010\6.0.0\ folder, as well as the parent: C:\Program Files\rti_connext_dds-6.0.0\resource\app\lib\x64Win64VS2010\

1b)
I renamed these files in the ...6.0.0\ directory, and re-ran. I still had the same result, no nddssecurity.dll or openssl dependencies were loaded.

2)
I thought to re-install, in case there was something haywire with the install. This time, as I mentioned, without the target packages.

I can now see:
0x00000000456f0000 0x96000 C:\Program Files\rti_connext_dds-6.0.0\resource\app\lib\x64Win64VS2010\nddsjava.dll
0x0000000026fc0000 0x49b000 C:\Program Files\rti_connext_dds-6.0.0\resource\app\lib\x64Win64VS2010\nddsc.dll
0x000000001f8c0000 0x4dd000 C:\Program Files\rti_connext_dds-6.0.0\resource\app\lib\x64Win64VS2010\nddscore.dll

In the filesystem, the folder does NOT exist: C:\Program Files\rti_connext_dds-6.0.0\resource\app\lib\x64Win64VS2010\6.0.0\

I've attached the listdlls output.

Also, I'll add, to confirm, security is enabled in the RTI admin console, and the original error still appears, in each of the above cases. I've attached a screenshot.

Thanks again for your help.
Chris

Howard's picture
Offline
Last seen: 18 hours 47 min ago
Joined: 11/29/2012
Posts: 267

Dear Chris,

Sorry to say, I'm at a loss at what the issue is.  Unfortunately, I don't know what other possible causes are.

So, I see 3 ways to move forward:

1) Continue to try to get Admin Console from Connext 6.0.0 to work on your computer

This is where, I'm sure that there are Windows experts around who may have ideas on how to proceed, but my only thoughts are to continue to figure out which "nddssecurity.dll" it's trying to load and did it try to find/load other DLLs before it failed.

On Linux, I would have suggested to use "strace" that would have shown the "fopen" invocation with the path to the shared library.

Doing a google for "strace equivalent on Windows", I found (have never used)

https://dynamorio.org/drmemory_docs/page_drstrace.html

Maybe you can check that out or one of the other hits that you can get from an internet search...

2) Try a different version of Connext DDS.  The latest version is Connext 6.0.1.  You can try downloading and running that.

3) Try a different PC. 

That's all I can think of for now.  Assuming you're on a project that has a commercial support contract with RTI, you can submit your issue to RTI's support team and see if they have any ideas..

Good luck,

--Howard

 

Offline
Last seen: 2 months 3 days ago
Joined: 01/30/2020
Posts: 14

Thanks for your pointers, Howard.  I'll keep investigating.

Cheers, Chris

Offline
Last seen: 2 months 3 days ago
Joined: 01/30/2020
Posts: 14

Hi Howard,

FYI.  I resolved this issue by installing Admin Console on a different machine on the network.

Thanks for your help.

Chris

Howard's picture
Offline
Last seen: 18 hours 47 min ago
Joined: 11/29/2012
Posts: 267

Hey Chris,

Glad to hear that you found a way to get Admin Console running with security.  Yeah, sometimes, Windows just doesn't cooperate.  Too many dependencies that aren't obvious and difficult to determine.

--Howard

ruffsl's picture
Offline
Last seen: 6 months 1 week ago
Joined: 08/07/2017
Posts: 5

Hey Howard,

I have a simlar issue running rtiadminconsole with security enabled. I've tried running it from the RTI Connext Launcher: 

```
[21:15:41] RTI Connext Launcher 6.0.1 started
[21:15:42] Product(s) not found for XML tag: openssl_target
[21:15:42] Product(s) not found for XML tag: openssl_target
...
[21:15:51] Run: rtiadminconsole (/home/ruffsl/software/rti/rti_connext_dds-6.0.1/bin/rtiadminconsole)
...
```

As well as from the command line with the set environment:

```
$ source software/rti/rti_connext_dds-6.0.1/resource/scripts/rtisetenv_x64Linux4gcc7.3.0.bash

$ echo $NDDSHOME
/home/ruffsl/software/rti/rti_connext_dds-6.0.1

$ export PATH="$NDDSHOME/third_party/openssl-1.1.1d/x64Linux4gcc7.3.0/release/bin":$PATH

$ export LD_LIBRARY_PATH="$NDDSHOME/third_party/openssl-1.1.1d/x64Linux4gcc7.3.0/release/lib":$LD_LIBRARY_PATH

$ ls -alh $NDDSHOME/third_party/openssl-1.1.1d/x64Linux4gcc7.3.0/release/bin
total 2.6M
drwxr-xr-x 2 ruffsl ruffsl 4 Nov 17 18:49 .
drwxr-xr-x 5 ruffsl ruffsl 5 Nov 17 18:49 ..
-rwxr-xr-x 1 ruffsl ruffsl 6.1K Sep 12 2019 c_rehash
-rwxr-xr-x 1 ruffsl ruffsl 4.1M Sep 12 2019 openssl

$ ls -alh $NDDSHOME/third_party/openssl-1.1.1d/x64Linux4gcc7.3.0/release/lib
total 5.5M
drwxr-xr-x 4 ruffsl ruffsl 10 Nov 17 18:49 .
drwxr-xr-x 5 ruffsl ruffsl 5 Nov 17 18:49 ..
drwxr-xr-x 2 ruffsl ruffsl 5 Nov 17 18:49 engines-1.1
lrwxrwxrwx 1 ruffsl ruffsl 16 Nov 17 18:49 libcrypto.so -> libcrypto.so.1.1
-rwxr-xr-x 1 ruffsl ruffsl 3.3M Sep 12 2019 libcrypto.so.1.1
-rw-r--r-- 1 ruffsl ruffsl 5.5M Sep 12 2019 libcryptoz.a
lrwxrwxrwx 1 ruffsl ruffsl 13 Nov 17 18:49 libssl.so -> libssl.so.1.1
-rwxr-xr-x 1 ruffsl ruffsl 677K Sep 12 2019 libssl.so.1.1
-rw-r--r-- 1 ruffsl ruffsl 1019K Sep 12 2019 libsslz.a
drwxr-xr-x 2 ruffsl ruffsl 5 Nov 17 18:49 pkgconfig

$ rtiadminconsole
Gtk-Message: 21:41:03.328: Failed to load module "canberra-gtk-module"
Gtk-Message: 21:41:03.614: Failed to load module "canberra-gtk-module"
2021-03-16 21:41:06,344 : ERROR : com.rti.tools.console.entitymodel.util.Log4jLoggerDevice.write(Log4jLoggerDevice.java:77) : - [CREATE Participant] DDS_PropertyQosPolicy_validate_plugin_property_suffixes:Unexpected property: com.rti.serv.secure.internal_plugin_context. Closest valid property: com.rti.serv.secure.openssl_engine
2021-03-16 21:41:06,346 : ERROR : com.rti.tools.console.entitymodel.util.Log4jLoggerDevice.write(Log4jLoggerDevice.java:77) : - [CREATE Participant] RTI_Security_PluginSuite_create:Inconsistent QoS property: com.rti.serv.secure.
2021-03-16 21:41:06,346 : ERROR : com.rti.tools.console.entitymodel.util.Log4jLoggerDevice.write(Log4jLoggerDevice.java:77) : - [CREATE Participant] DDS_DomainParticipantTrustPlugins_initialize:!create security plugin
2021-03-16 21:41:06,347 : ERROR : com.rti.tools.console.entitymodel.util.Log4jLoggerDevice.write(Log4jLoggerDevice.java:77) : - [CREATE Participant] DDS_DomainParticipant_createI:!create builtin trust plugins support
2021-03-16 21:41:06,447 : ERROR : com.rti.tools.console.entitymodel.util.Log4jLoggerDevice.write(Log4jLoggerDevice.java:77) : - [CREATE Participant] DDS_DomainParticipantFactory_create_participant_disabledI:!create participant
2021-03-16 21:41:06,448 : ERROR : com.rti.tools.console.entitymodel.DdsDomainParticipantWrapperImpl.createParticipant(DdsDomainParticipantWrapperImpl.java:355) : - Trouble while trying to create DDS DomainParticipant.
com.rti.dds.infrastructure.RETCODE_ERROR: error creating entity
at com.rti.dds.util.Utilities.rethrow(Unknown Source)
at com.rti.dds.infrastructure.NativeFactoryMixin.create_entityI(Unknown Source)
at com.rti.dds.domain.DomainParticipantFactoryImpl.create_participant(Unknown Source)
at com.rti.tools.console.entitymodel.DdsDomainParticipantWrapperImpl.createParticipant(DdsDomainParticipantWrapperImpl.java:290)
at com.rti.tools.console.entitymodel.DdsDomainManager.joinDomain(DdsDomainManager.java:927)
at com.rti.tools.console.entitymodel.DdsDomainManager.joinDomain(DdsDomainManager.java:852)
at com.rti.tools.console.entitymodel.DdsDomainManager.enableAutoJoinActiveDomains(DdsDomainManager.java:620)
at com.rti.tools.console.entitymodel.DdsDomainManager.initialize(DdsDomainManager.java:308)
at com.rti.tools.console.entitymodel.DdsDomainManager.getInstance(DdsDomainManager.java:120)
at com.rti.tools.console.entitymodel.impl.Activator$2.run(Activator.java:68)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
2021-03-16 21:41:06,451 : ERROR : com.rti.tools.console.entitymodel.DdsDomainManager.getInstance(DdsDomainManager.java:124) : - error creating entity
com.rti.dds.infrastructure.RETCODE_ERROR: error creating entity
at com.rti.dds.util.Utilities.rethrow(Unknown Source)
at com.rti.dds.infrastructure.NativeFactoryMixin.create_entityI(Unknown Source)
at com.rti.dds.domain.DomainParticipantFactoryImpl.create_participant(Unknown Source)
at com.rti.tools.console.entitymodel.DdsDomainParticipantWrapperImpl.createParticipant(DdsDomainParticipantWrapperImpl.java:290)
at com.rti.tools.console.entitymodel.DdsDomainManager.joinDomain(DdsDomainManager.java:927)
at com.rti.tools.console.entitymodel.DdsDomainManager.joinDomain(DdsDomainManager.java:852)
at com.rti.tools.console.entitymodel.DdsDomainManager.enableAutoJoinActiveDomains(DdsDomainManager.java:620)
at com.rti.tools.console.entitymodel.DdsDomainManager.initialize(DdsDomainManager.java:308)
at com.rti.tools.console.entitymodel.DdsDomainManager.getInstance(DdsDomainManager.java:120)
at com.rti.tools.console.entitymodel.impl.Activator$2.run(Activator.java:68)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
```

See attached screen shot for console log messages.

Howard's picture
Offline
Last seen: 18 hours 47 min ago
Joined: 11/29/2012
Posts: 267

So, I'm guessing that you're running an evaluation version of RTI Admin Console from RTI Connext DDS 6.0.1?

If so, there's a known bug that produces that problem. 

[snip!]  I posted a workaround, but it actually doesn't work with the 6.0.1 eval version.  You'd have to get a hold of 6.0.1.3 or higher which isn't generally available.

So, I don't know how you are licensed for RTI Connext DDS.  The commercial version of RTI Connext DDS 6.0.1 doesn't have this problem...only the eval version, or the commercial version with an eval license has the problem.  An alternative is to use the 6.0.0 Eval version which didn't have the bug.

 

 

ruffsl's picture
Offline
Last seen: 6 months 1 week ago
Joined: 08/07/2017
Posts: 5

> So, I'm guessing that you're running an evaluation version of RTI Admin Console from RTI Connext DDS 6.0.1?

Correct.

> You'll have to create your own and select your modified profile to be used

Ok, so I've modified the QOS Profile to be used, but nothing seems to have improved. See attachements.

---

$ rtiadminconsole Gtk-Message: 12:53:44.962: Failed to load module "canberra-gtk-module" Gtk-Message: 12:53:45.227: Failed to load module "canberra-gtk-module" 2021-03-17 12:53:47,646 : WARN : com.rti.tools.console.entitymodel.util.Log4jLoggerDevice.write(Log4jLoggerDevice.java:77) : - DDS_XMLParser_parse_from_file:Loading : /home/ruffsl/software/rti/rti_connext_dds-6.0.1/resource/xml/admin_console_example_profiles.xml 2021-03-17 12:53:47,692 : WARN : com.rti.tools.console.entitymodel.util.Log4jLoggerDevice.write(Log4jLoggerDevice.java:77) : - [CREATE Participant] DDS_PropertyQosPolicy_validatePropertyNames:Unexpected property: com.rti.serv.secure.property_validation_action. Closest valid property: com.rti.serv.secure.create_function 2021-03-17 12:53:47,694 : ERROR : com.rti.tools.console.entitymodel.util.Log4jLoggerDevice.write(Log4jLoggerDevice.java:77) : - [CREATE Participant] DDS_PropertyQosPolicy_validate_plugin_property_suffixes:Unexpected property: com.rti.serv.secure.property_validation_action. Closest valid property: com.rti.serv.secure.create_function 2021-03-17 12:53:47,694 : ERROR : com.rti.tools.console.entitymodel.util.Log4jLoggerDevice.write(Log4jLoggerDevice.java:77) : - [CREATE Participant] RTI_Security_PluginSuite_create:Inconsistent QoS property: com.rti.serv.secure. 2021-03-17 12:53:47,694 : ERROR : com.rti.tools.console.entitymodel.util.Log4jLoggerDevice.write(Log4jLoggerDevice.java:77) : - [CREATE Participant] DDS_DomainParticipantTrustPlugins_initialize:!create security plugin 2021-03-17 12:53:47,695 : ERROR : com.rti.tools.console.entitymodel.util.Log4jLoggerDevice.write(Log4jLoggerDevice.java:77) : - [CREATE Participant] DDS_DomainParticipant_createI:!create builtin trust plugins support 2021-03-17 12:53:47,796 : ERROR : com.rti.tools.console.entitymodel.util.Log4jLoggerDevice.write(Log4jLoggerDevice.java:77) : - [CREATE Participant] DDS_DomainParticipantFactory_create_participant_disabledI:!create participant 2021-03-17 12:53:47,797 : ERROR : com.rti.tools.console.entitymodel.DdsDomainParticipantWrapperImpl.createParticipant(DdsDomainParticipantWrapperImpl.java:355) : - Trouble while trying to create DDS DomainParticipant. com.rti.dds.infrastructure.RETCODE_ERROR: error creating entity at com.rti.dds.util.Utilities.rethrow(Unknown Source) at com.rti.dds.infrastructure.NativeFactoryMixin.create_entityI(Unknown Source) at com.rti.dds.domain.DomainParticipantFactoryImpl.create_participant(Unknown Source) at com.rti.tools.console.entitymodel.DdsDomainParticipantWrapperImpl.createParticipant(DdsDomainParticipantWrapperImpl.java:290) at com.rti.tools.console.entitymodel.DdsDomainManager.joinDomain(DdsDomainManager.java:927) at com.rti.tools.console.entitymodel.DdsDomainManager.joinDomain(DdsDomainManager.java:852) at com.rti.tools.console.entitymodel.DdsDomainManager.enableAutoJoinActiveDomains(DdsDomainManager.java:620) at com.rti.tools.console.entitymodel.DdsDomainManager.initialize(DdsDomainManager.java:308) at com.rti.tools.console.entitymodel.DdsDomainManager.getInstance(DdsDomainManager.java:120) at com.rti.tools.console.entitymodel.impl.Activator$2.run(Activator.java:68) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) 2021-03-17 12:53:47,800 : ERROR : com.rti.tools.console.entitymodel.DdsDomainManager.getInstance(DdsDomainManager.java:124) : - error creating entity com.rti.dds.infrastructure.RETCODE_ERROR: error creating entity at com.rti.dds.util.Utilities.rethrow(Unknown Source) at com.rti.dds.infrastructure.NativeFactoryMixin.create_entityI(Unknown Source) at com.rti.dds.domain.DomainParticipantFactoryImpl.create_participant(Unknown Source) at com.rti.tools.console.entitymodel.DdsDomainParticipantWrapperImpl.createParticipant(DdsDomainParticipantWrapperImpl.java:290) at com.rti.tools.console.entitymodel.DdsDomainManager.joinDomain(DdsDomainManager.java:927) at com.rti.tools.console.entitymodel.DdsDomainManager.joinDomain(DdsDomainManager.java:852) at com.rti.tools.console.entitymodel.DdsDomainManager.enableAutoJoinActiveDomains(DdsDomainManager.java:620) at com.rti.tools.console.entitymodel.DdsDomainManager.initialize(DdsDomainManager.java:308) at com.rti.tools.console.entitymodel.DdsDomainManager.getInstance(DdsDomainManager.java:120) at com.rti.tools.console.entitymodel.impl.Activator$2.run(Activator.java:68) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)

 

Howard's picture
Offline
Last seen: 18 hours 47 min ago
Joined: 11/29/2012
Posts: 267

Sorry for the red herring...please see my corrected response above...

ruffsl's picture
Offline
Last seen: 6 months 1 week ago
Joined: 08/07/2017
Posts: 5

Ok, so after reverting to the v6.0.0 Eval, I was successfully able to use the RTI Admin Console with ROS2 Foxy and DDS security.
Thanks for the support.

Howard's picture
Offline
Last seen: 18 hours 47 min ago
Joined: 11/29/2012
Posts: 267

Great to know, thanks!  Our upcoming release in April will also have the fix.

Offline
Last seen: 4 months 5 days ago
Joined: 02/22/2021
Posts: 4

Hi, I had the same issue as ruffsl, however my issue happened in Windows Environment and my license is not eval license. Would the fix in April also help to solve this issue?

Could not show screenshot but this is the error I have seen in administration console console log when I tried to join domain manually with security:

DDS_PropertyQosPolicy_validate_plugin_property_suffixes:Unexpected property: com.rti.serv.secure.internal_plugin_context. Closest valid property: com.rti.serv.secure.openssl_engine

Howard's picture
Offline
Last seen: 18 hours 47 min ago
Joined: 11/29/2012
Posts: 267

Hmm, if you are using a permanent license, then you shouldn't be seeing this problem. 

I would first make sure that you're actually using the non-evaluation version of RTI Connext DDS.  If you installed the evaluation version and then just changed your license, you still may see the problem.  You should download and install the commercial version of RTI Connext DDS, after uninstalling the evaluation version.

If you think that you have installed the commercial version...make sure that you don't still have evaluation version installed.  If you have the environment variable NDDSHOME defined, make sure it's pointing at the installation directory of the commercial version.  And then make sure that the license.dat file that is being used is actually a permanent one.

If you still can't get it to work, then I assume if you have permanent license, then your project has a support contract?  If so, you should get in touch with RTI's support team via the developer on the project that is enabled to submit support requests.