L_DicomSetClientCertificateTLS

#include "ltdic.h"

L_LTDIC_API L_UINT32 L_DicomSetClientCertificateTLS(hNet, pszPathToCertificateFile, nCertType, pszPathToKeyFile)

HDICOMNET hNet;

/* handle to an existing DICOM Network */

L_TCHAR *pszPathToCertificateFile;

/* path to the file that contains the certificate */

L_UINT32 nCertType;

/* certificate type */

L_TCHAR *pszPathToKeyFile;

/* path to the file containing the private key */

Sets a certificate for the client. 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.

pszPathToCertificate

Character string that contains the path to the file that contains the certificate.

nCertType

Flag that indicates whether the certificate is binary or text. Possible values are:

 

Value

Meaning

 

L_TLS_FILETYPE_PEM

Text certificate.

 

L_TLS_FILETYPE_ASN1

Binary certificate.

pszPathToKeyFile

Character string that contains the path to the file containing the private key. This parameter is used if the private key is available in raw mode.

Returns

DICOM_SUCCESS

Success.

<>DICOM_SUCCESS

An error occurred. Refer to the Return Codes.

Comments

Usual size for RSA key is 512 and 1024 bits. There are no known export restrictions.

The nCertType can take values L_TLS_FILETYPE_PEM (text certificate) or L_TLS_FILETYPE_ASN1 (binary certificate).

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_DicomSetServerCertificateTLS

Topics:

DICOM Net: TLS Protocol

 

Adding TLS Security to a DICOM Connection

 

Negotiating a Ciphersuite

 

General Transport Layer Secure (TLS) Information

Example

L_INT DicomSetClientCertificateTLSExample(L_VOID)
{
   HDICOMNET hDicomNet = NULL;
   L_INT nRet;
   nRet = L_DicomSetClientCertificateTLS(hDicomNet, TEXT("C:\\Program Files\\LEAD Technologies\\LEADTOOLS 15\\Images\\Client.pem"), L_TLS_FILETYPE_PEM, NULL);
   if (nRet != DICOM_SUCCESS)
      return nRet;

   L_TCHAR strMsg[64];
   wsprintf(strMsg, TEXT("Loaded client certificate, result is %s"), nRet?TEXT("Error"):TEXT("Success"));
   MessageBox(NULL, strMsg, TEXT(""), MB_OK);
   return DICOM_SUCCESS;
}