LAUREL BRIDGE

TlsNetworkSocketInitServerTlsConnectionAndAuthenticate Method

DICOM Connectivity Framework V3.4
This method should be called to authenticate the TLS stream as a server. For a server side TlsNetworkSocket, when LAZY_SERVER_SIDE_AUTHENTICATION_MODE is false, this method is called when DCF's AssociationManager.run() calls waitForServerConnection() which then calls this instance's Accept() method. In this situation, the AssociationManager will not accept more connections until this method has completed. This method may not complete quickly, for example, if the client side does not send authentication information such as a TLS Client Hello message, which will happen if a non-TLS client connects to the SCP's TLS port. Such a situation can lead to unacceptable delays (waiting for a timeout) in accepting future associations. For a server, when LAZY_SERVER_SIDE_AUTHENTICATION_MODE is true, this method is called by AssociationManager.HandleAssociation() in a new thread, after waitForServerConnection() has completed calling Accept(). Therefore, future connections are not blocked waiting for this method to complete. Note that a consequence of handling the authentication in this manner is that the DCF AssociationManager has incremented its association count to handle this in a new thread. In case of a bad connection request, that association counter will not be decremented until a timeout or other error completes the thread's operation.

Namespace:  LaurelBridge.DCFExamples.TLS
Assemblies:   EchoSCU (in EchoSCU.exe) Version: DCF34 r12431 DCF_3_4_38_20200923 NetFramework
  VerificationSCPExtended (in VerificationSCPExtended.exe) Version: DCF34 r12431 DCF_3_4_38_20200923 NetFramework
Syntax

C#
public void InitServerTlsConnectionAndAuthenticate()
See Also

Reference