Available in LEADTOOLS Medical Imaging toolkits. |
#include "ltdic.h"
L_LTDIC_API L_UINT32 L_DicomSetAuthDataISCL(hNet, pBuffer, nLength)
HDICOMNET hNet; |
/* handle to an existing DICOM Network */ |
L_VOID *pBuffer; |
/* pointer to the authentication data */ |
L_UINT32 nLength; |
/* the size of the authentication data */ |
Sets the authentication data used during the mutual authentication process. This function is available in PACS Imaging toolkits.
Parameter |
Description |
hNet |
Handle to an existing DICOM Network. This is the handle returned from the L_DicomCreateNet function. |
pBuffer |
Pointer to an array containing the authentication data. |
nLength |
Length of the authentication data, in bytes. |
Returns
DICOM_SUCCESS |
The function was successful. |
DICOM_ERROR_PARAMETER |
A parameter error occurred. The authentication data could not be set. (pBuffer is NULL, or nLength is not in the range 1 128.). Refer to Return Codes. |
Comments
Every ISCL-compliant entity must have between 1 and 128 bytes of authentication data. These authentication data are exchanged between client and server during the mutual authentication process. This function sets an array of 1 to 128 bytes that contains authentication data.
The authentication data is data exchanged in plain text. After the mutual authentication process, the communication entities can verify the authentication data of the other entity (client or server) and, if the authentication data is wrong, can close the connection.
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 |
Win32, x64
See Also
Example
L_INT DicomSetAuthDataISCLExample(L_VOID) { HDICOMNET hNet1, hNet2; L_INT nRet; nRet = L_DicomStartUp(); if (nRet != DICOM_SUCCESS) return nRet; hNet1 = L_DicomCreateNet (TEXT(""), DICOM_SECURE_ISCL); hNet2 = L_DicomCreateNet(TEXT(""), DICOM_SECURE_ISCL); nRet = L_DicomSetAuthDataISCL(hNet1, TEXT("Server LEAD ISCL"), 13); if (nRet != DICOM_SUCCESS) { L_DicomFreeNet(hNet1); L_DicomFreeNet(hNet2); L_DicomShutDown(); return nRet; } char data[5] = {0x21, 0x14, 0x00, 0x45, 0x0F}; nRet = L_DicomSetAuthDataISCL(hNet2, data, 5); // authentication data can be binary data // delete hNet1, hNet2 and shutdown the DICOM network L_DicomFreeNet(hNet1); L_DicomFreeNet(hNet2); L_DicomShutDown(); return nRet; }