Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Secure communication between two nodes fails after exchanging multiple messages. #271

Open
squizz617 opened this issue Jul 2, 2021 · 1 comment

Comments

@squizz617
Copy link

Bug report

Required Info:

  • Operating System: Ubuntu 20.04.2
  • Installation type: Debian packages
  • Version or commit hash: foxy
  • DDS implementation: Fast-RTPS
  • Client library (if applicable): both rclcpp and rclpy

Steps to reproduce issue

Two nodes are requried; a main node and a relay node.

  • The main node (1) launches the relay node and (2) publishes a random String message to topic input, and then kills the relay node. It remains persistent and repeats (1), (2), and (3).
  • The relay node simply relays the messages from the input topic to output topic, by subscribing to the input topic and publishing the same message to the output topic in the callback function registered to the subscription.
  • Let the main node run for several minutes. One could monitor the messages published to the output topic, but it is optional.

Expected behavior

Relay node is launched, and relays the message delivered to input topic.

Actual behavior

At one point, the relay node stops working, i.e., doesn't publish to topic output, and Fast-RTPS starts emitting the following error messages whenever the relay node is launched and a message is published to topic input:

2021-07-02 00:11:37.310 [SECURITY Error] WriterHistory cannot add the CacheChange_t -> Function exchange_participant_crypto
2021-07-02 00:11:37.310 [SECURITY Error] WriterHistory cannot add the CacheChange_t -> Function discovered_writer
2021-07-02 00:11:37.310 [RTPS_EDP Error] Security manager returns an error for writer ca.b4.f2.33.81.aa.bd.5d.96.42.1f.9|ff.0.3.c7 -> Function assignRemoteEndpoints
2021-07-02 00:11:37.310 [SECURITY Error] WriterHistory cannot add the CacheChange_t -> Function discovered_reader
2021-07-02 00:11:37.310 [RTPS_EDP Error] Security manager returns an error for writer ca.b4.f2.33.81.aa.bd.5d.96.42.1f.9|ff.0.3.c2 -> Function assignRemoteEndpoints
2021-07-02 00:11:37.310 [SECURITY Error] WriterHistory cannot add the CacheChange_t -> Function discovered_writer
2021-07-02 00:11:37.310 [RTPS_EDP Error] Security manager returns an error for writer ca.b4.f2.33.81.aa.bd.5d.96.42.1f.9|ff.0.4.c7 -> Function assignRemoteEndpoints
2021-07-02 00:11:37.310 [SECURITY Error] WriterHistory cannot add the CacheChange_t -> Function discovered_reader
2021-07-02 00:11:37.310 [RTPS_EDP Error] Security manager returns an error for writer ca.b4.f2.33.81.aa.bd.5d.96.42.1f.9|ff.0.4.c2 -> Function assignRemoteEndpoints
2021-07-02 00:11:37.310 [SECURITY Error] WriterHistory cannot add the CacheChange_t -> Function discovered_writer
2021-07-02 00:11:37.310 [RTPS_EDP Error] Security manager returns an error for reader ca.b4.f2.33.81.aa.bd.5d.96.42.1f.9|ff.2.0.c7 -> Function assignRemoteEndpoints
2021-07-02 00:11:37.310 [SECURITY Error] WriterHistory cannot add the CacheChange_t -> Function discovered_reader
2021-07-02 00:11:37.310 [RTPS_EDP Error] Security manager returns an error for writer ca.b4.f2.33.81.aa.bd.5d.96.42.1f.9|ff.2.0.c2 -> Function assignRemoteEndpoints

Even though the time required for this error to occur is random, it consistently happens across multiple runs of the main node.

@clalancette
Copy link
Contributor

Sorry that we haven't gotten back to you on this. A few questions for you:

  1. Is it possible to share the code for the main node and relay node? That would make reproducing this easier.
  2. Does this happen with CycloneDDS on Foxy?
  3. Does this happen with Fast-RTPS or CycloneDDS on the latest Rolling packages?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants