L_DicomSetDefaultSigningISCL

#include "ltdic.h"

L_LTDIC_API L_UINT32 L_DicomSetDefaultSigningISCL(hNet, SignMode)

HDICOMNET hNet;

/* handle to an existing DICOM Network */

L_UINT32 SignMode;

/* type of message authentication code */

Sets the current message authentication code. 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.

SignMode

Flag that indicates the type of message authentication code to be used. Possible values are:

 

Value

Meaning

 

DICOM_ISCL_MAC_NONE

[0x00000000]No message authentication code will be used.

 

DICOM_ISCL_MAC_MD5

[0x00001441]A 128 bit MD5 message authentication code is transmitted with the message.

 

DICOM_ISCL_MAC_DESMAC

[0x00004001]A 64 bit DESMAC authentication code is transmitted with the message.

Returns

DICOM_SUCCESS

The function was successful.

DICOM_ERROR_PARAMETER

A parameter error occurred. The message authentication code will be of type DICOM_ISCL_MAC_MD5. Refer to Return Codes.

Comments

The message authentication code is encrypted using the current encryption mode before being sent and decrypted after being received. The current encryption mode is set using the L_DicomSetDefaultEncryptionISCL function.

The encryption mode and the message authentication code type must be the same for both the sender and the receiver.

Required DLLs and Libraries

LTDIC

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

Platforms

Win32, x64

See Also

Functions:

L_DicomCreateNet, L_DicomSetDefaultEncryptionISCL, L_DicomSetAuthDataISCL, L_DicomSetMaxCommBlockLengthISCL, L_DicomSetMaxMessageLengthISCL, L_DicomSetMutualAuthAlgISCL, L_DicomSetMutualAuthKeyISCL, L_DicomSetIndexForMutualAuthISCL, L_DicomSetEncryptKeyISCL, L_DicomSetIndexForEncryptISCL

Topics:

DICOM Net: Encryption mode

 

Adding Security to a DICOM Connection

 

General Integrated Secure Communication Layer (ISCL) Information

Example

L_INT DicomSetDefaultSigningISCLExample(L_VOID)
{
   L_INT nRet;
   HDICOMNET hNet = NULL;
   
   nRet = L_DicomStartUp();
   if (nRet != DICOM_SUCCESS)
      return nRet;
   hNet = L_DicomCreateNet (TEXT(""), DICOM_SECURE_NONE);
   // other initialisations
   nRet = L_DicomSetDefaultSigningISCL(hNet, DICOM_ISCL_ENCRYPT_DESCBC);
   L_DicomShutDown();
   return nRet;
}