3.2.7.1 TLS Negotiation Complete
After the TLS implementation reports that negotiation has completed, the TLS Negotiation Complete MUST be set to true. The Requestor MUST do the following:
Set the Group Connect State datum to "TLS Connected".
If the local node does not have a GMC and the P2P Grouping Version is 1.0, it MUST abort the connection.
If the local node does not have a GMC and the P2P Grouping Version is 1.1, and hence is using password-based authentication, it MUST:
Build and send a message containing the Hello message and empty Password message (Password Length = 0x0)
Otherwise, if the local GMC is expired (the GMC's NotAfter time is earlier than UTC), it MUST build a Hello message and do the following:
Pass it to the TLS layer for processing.
Pass the message returned by the TLS layer to P2P Graphing to be sent.
Otherwise, it MUST do the following:
Build a message containing the Hello message and MyGMC message containing the local GMC chain.
Pass the compound message to the TLS layer for processing.
Pass the processed message returned by the TLS layer to P2P Graphing to be sent.
Set the Group Connect State datum to "Hello Sent" once the Hello message (Hello, Hello + MyGMC, or Hello + Password) is sent.
The compound message format is defined in section 2.2.2.