Skip to content

[24372] Assert liveliness with periodic heartbeats in secure participants (backport #6411)#6414

Open
mergify[bot] wants to merge 1 commit into
2.14.xfrom
mergify/bp/2.14.x/pr-6411
Open

[24372] Assert liveliness with periodic heartbeats in secure participants (backport #6411)#6414
mergify[bot] wants to merge 1 commit into
2.14.xfrom
mergify/bp/2.14.x/pr-6411

Conversation

@mergify
Copy link
Copy Markdown
Contributor

@mergify mergify Bot commented Jun 1, 2026

Description

When two secure participants discover each other, they drop the non-secure channel used for PDP, and establish instead a secure connection through their SimplePDPEndpointsSecure. But since in the secure case TRANSIENT_LOCAL durability is used to share data Ps, there is no periodic data transmission which can be used to assert liveliness. As a consequence, liveliness is lost if there is no (user) data traffic between the participants.

With changes introduced in this PR, it is attempted to solve the issue by sending heartbeats periodically, with the same period data Ps are sent in the non-secure case.

@Mergifyio backport 3.4.x 3.2.x 2.14.x

Contributor Checklist

  • Commit messages follow the project guidelines.

  • The code follows the style guidelines of this project.

  • Tests that thoroughly check the new feature have been added/Regression tests checking the bug and its fix have been added; the added tests pass locally

  • Any new/modified methods have been properly documented using Doxygen.

  • N/A: Any new configuration API has an equivalent XML API (with the corresponding XSD extension)

  • Changes are backport compatible: they do NOT break ABI nor change library core behavior.

  • Changes are API compatible.

  • N/A: New feature has been added to the versions.md file (if applicable).

  • N/A: New feature has been documented/Current behavior is correctly described in the documentation.

  • Applicable backports have been included in the description.

Reviewer Checklist

  • The PR has a milestone assigned.
  • The title and description correctly express the PR's purpose.
  • Check contributor checklist is correct.
  • If this is a critical bug fix, backports to the critical-only supported branches have been requested.
  • Check CI results: changes do not issue any warning.
  • Check CI results: failing tests are unrelated with the changes.

This is an automatic backport of pull request #6411 done by [Mergify](https://mergify.com).

)

* Refs #24372. Assert liveliness with periodic heartbeats in secure participants.

Signed-off-by: Juan Lopez Fernandez <juanlopez@eprosima.com>

* Refs #24372. Added regression test.

Signed-off-by: danipiza <dpizarrogallego@gmail.com>

* Refs #24372. Revert change in returned value.

Signed-off-by: Miguel Company <miguelcompany@eprosima.com>

* Refs #24372. Improve null pointer checks.

Signed-off-by: Miguel Company <miguelcompany@eprosima.com>

* Refs #24372. Uncrustify.

Signed-off-by: Miguel Company <miguelcompany@eprosima.com>

---------

Signed-off-by: Juan Lopez Fernandez <juanlopez@eprosima.com>
Signed-off-by: danipiza <dpizarrogallego@gmail.com>
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
Co-authored-by: Juan Lopez Fernandez <juanlopez@eprosima.com>
Co-authored-by: danipiza <dpizarrogallego@gmail.com>
(cherry picked from commit 910ac99)

# Conflicts:
#	src/cpp/rtps/builtin/discovery/participant/PDPSimple.cpp
@mergify
Copy link
Copy Markdown
Contributor Author

mergify Bot commented Jun 1, 2026

Cherry-pick of 910ac99 has failed:

On branch mergify/bp/2.14.x/pr-6411
Your branch is up to date with 'origin/2.14.x'.

You are currently cherry-picking commit 910ac9907.
  (fix conflicts and run "git cherry-pick --continue")
  (use "git cherry-pick --skip" to skip this patch)
  (use "git cherry-pick --abort" to cancel the cherry-pick operation)

Changes to be committed:
	modified:   test/blackbox/common/BlackboxTestsSecurity.cpp

Unmerged paths:
  (use "git add <file>..." to mark resolution)
	both modified:   src/cpp/rtps/builtin/discovery/participant/PDPSimple.cpp

To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally

@mergify mergify Bot added the conflicts Backport PR wich git cherry pick failed label Jun 1, 2026
@MiguelCompany MiguelCompany added this to the v2.14.7 milestone Jun 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

conflicts Backport PR wich git cherry pick failed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant