L_DicomSetCipherToIndexTLS

#include "ltdic.h"

L_LTDIC_API L_UINT32 L_DicomSetCipherToIndexTLS(hNet, nIndex, cipher)

HDICOMNET hNet;

/* handle to an existing DICOM Network */

L_UINT32 nIndex;

/* index into an array */

L_CIPHERSUITE cipher;

/* ciphersuite */

Sets the ciphersuite for the specified index. This function is available in the Medical Suite toolkits.

Parameter

Description

hNet

Handle to an existing DICOM Network. This is the handle returned from the L_DicomCreateNet function.

nIndex

Position in an array for which to set the specified ciphersuite. The ciphersuites in this array are those known by the client and should be ordered by preference.

cipher

Value that indicates the ciphersuite to set at the specified index. For a list of possible values, refer to L_CIPHERSUITE.

Returns

DICOM_SUCCESS

Success.

DICOM_ERROR_PARAMETER

A parameter error occurred. Refer to Return Codes.

Comments

The server chooses the first ciphersuite proposed by client, which it can understand. If the client puts the ciphersuites with reduced security first, then a ciphersuite with reduced security will most likely be selected by the server.

Required DLLs and Libraries

LTDIC
LTCRY
LTTLS

For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application

See Also

Functions:

L_DicomCreateNet, L_DicomGetCipherFromIndexTLS, L_DicomGetCiphersuiteTLS

Topics:

DICOM Net: TLS Protocol

 

Negotiating a Ciphersuite

 

General Transport Layer Secure (TLS) Information

Example

L_INT DicomSetCipherToIndexTLSExample(L_VOID)
{
   HDICOMNET hDicomNet;
   L_INT nRet;

   hDicomNet = L_DicomCreateNet (TEXT(""), DICOM_SECURE_TLS);
   nRet = L_DicomSetCipherToIndexTLS(hDicomNet, 0, TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA);
   if (nRet != DICOM_SUCCESS)
      return nRet;

   L_CIPHERSUITE test;
   test = L_DicomGetCipherFromIndexTLS (hDicomNet, 0);
   if (test == TLS_DHE_RSA_WITH_DES_CBC_SHA)
      MessageBox(NULL, TEXT("Cipher TLS_DHE_RSA_WITH_DES_CBC_SHA"), TEXT(""), MB_OK);

   return DICOM_SUCCESS;
}