#include "ltdic.h"
L_UINT32 pEXT_CALLBACK Your_Function(hNet, nChallenge, nResponse, nParameter, pUserData)
HDICOMNET hNet;  | 
handle to an existing DICOM Network  | 
L_UINT64 nChallenge;  | 
challenge code  | 
L_UINT64 *nResponse;  | 
pointer to a variable to be updated  | 
L_UINT64 nParameter;  | 
key  | 
L_VOID * pUserData;  | 
optional pointer to more parameters for the callback  | 
Generates a response code, based on the specified challenge code. This function is available in PACS Imaging.
Parameter  | 
Description  | 
hNet  | 
Handle to an existing DICOM Network. This is the handle returned from the L_DicomCreateNet function.  | 
nChallenge  | 
Challenge code received by the callback function. This challenge code will be used in the generation of the response code. This value is similar to a time stamp.  | 
nResponse  | 
Pointer to a variable to be updated with the response code generated by the callback function.  | 
nParameter  | 
Value that indicates the current mutual authentication key.  | 
pUserData  | 
Void pointer that you can use to pass one or more additional parameters that the callback function needs. To use this feature, assign a value to a variable or create a structure that contains as many fields as you need. Then, in this parameter, pass the address of the variable or structure, casting it to L_VOID *. The callback function, which receives the address in its own pUserData parameter, can cast it to a pointer of the appropriate data type to access your variable or structure. If the additional parameters are not needed, you can pass NULL in this parameter.  | 
DICOM_SUCCESS  | 
The generation of the response code was successful.  | 
<> DICOM_SUCCESS  | 
The generation of the response code was not successful.  | 
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
Functions:  | 
|
Topics:  | 
|
  | 
|
  | 
General Integrated Secure Communication Layer (ISCL) Information  | 
L_UINT64 * nResponse;L_UINT64 GetRandom(){L_UINT64 nRet;nRet = ((L_UINT64)(rand())<<48) + ((L_UINT64)(rand())<<32) + (rand()<<16) + (rand()<<8) + rand();return nRet;}// Definitions of the ISCL callbacks.L_UINT32 EXT_CALLBACK exGetChallengeISCL(HDICOMNET hNet, L_UINT64 *nChallenge, L_UINT64 nParameter, L_VOID * pUserData){UNREFERENCED_PARAMETER(pUserData);UNREFERENCED_PARAMETER(hNet);nResponse = nChallenge + nParameter;return 0;}L_UINT32 EXT_CALLBACK exInternalAuthenticateISCL (HDICOMNET hNet, L_UINT64 nChallenge, L_UINT64 *nResponse, L_UINT64 nParameter, L_VOID * pUserData){UNREFERENCED_PARAMETER(pUserData);UNREFERENCED_PARAMETER(hNet);*nResponse = nChallenge + nParameter;return 0;}L_UINT32 EXT_CALLBACK exExternalAuthenticateISCL (HDICOMNET hNet, L_UINT64 nChallenge, L_UINT64 nResponse, L_UINT64 nParameter, L_VOID * pUserData){UNREFERENCED_PARAMETER(pUserData);UNREFERENCED_PARAMETER(hNet);if (nResponse == nChallenge + nParameter)return 0;elsereturn 1;}L_INT InternalAuthenticateCBExample(HDICOMNET hNet){DICOMNETCALLBACK cb;//…//…cb.pfnGetChallenge = exGetChallengeISCL;cb.pfnInternalAuthenticate = exInternalAuthenticateISCL;cb.pfnExternalAuthenticate = exExternalAuthenticateISCL;L_DicomSetCallback (hNet, &cb);return DICOM_SUCCESS;}
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET
