Discovery and Authentication
============================

.. Release Notes from this point.

:critical:`[Critical]` Unable to communicate with DomainParticipants that propagate a different authentication class_id version
-------------------------------------------------------------------------------------------------------------------------------
Secure *DomainParticipants* that had different versions in the
**class_id** of their Authentication plugin failed to communicate.

For example, if a *DomainParticipant* following the 1.0 DDS Security
specification discovered and tried to authenticate a remote
*DomainParticipant* following version 1.2 of the specification, you
would see a log message similar to the following:

::

   RTI_Security_Authentication_begin_handshake_reply: received unexpected 
   handshake message, probably from a participant that this one lost liveliness
   with before ongoing authentication completed. Once this participant sends an
   authentication request, communication should be restored.
   ERROR [[...]|RECEIVE SAMPLE|PROCESS HANDSHAKE|BEGIN HANDSHAKE REPLY|LC:Security] 
   DDS_DomainParticipantTrustPlugins_forwardBeginHandshakeReply:FAILED TO VALIDATE 
   | begin_handshake_reply returned VALIDATION_FAILED.

This release fixes the issue, so a difference in the minor version of
the **class_id** doesn't prevent communication.

Note that the *Builtin Security Plugins* 7.4.0 (and later releases)
propagate the older ``DDS:Auth:PKI-DH:1.0`` **class_id** to former RTI
releases. This ensures interoperability between RTI releases, even if
the older ones are affected by the **class_id** bug. Interoperability is
only broken between releases affected by this bug and other vendors that
propagate the newer ``DDS:Auth:PKI-DH:1.2`` **class_id**.


[RTI Issue ID SEC-2473]


