PFN_SMC_VENDOR_IOCTL function pointer
Optional. Handles the request to perform a vendor-specific IOCTL operation.
Syntax
typedef NTSTATUS ( *PFN_SMC_VENDOR_IOCTL)(
_In_ WDFDEVICE FxDevice,
_In_ WDFREQUEST FxRequest
);
Parameters
FxDevice [in]
Handle to the framework device object.FxRequest [in]
Handle to the framework request object.
Return value
If the function encounters no errors, it must return STATUS_SUCCESS. Otherwise, one of the appropriate NTSTATUS values.
Remarks
The client driver must register its implementation with the smart card call extension in the driver's EvtDriverDeviceAdd callback function. For example code that shows how to register, see SmcDeviceInitConfig.
The smart card class extension invokes client driver's PFN_SMC_VENDOR_IOCTL callback function when the class extension receives a vendor-specific IOCTL code from the caller (another driver or an application). The class extension does not perform any validation check on the parameters because the values vendor-defined.
- Get input and output buffers from the framework request object by calling SmcCxGetIoRequestParams.
- Call SmcCxGetSmartcardRequestBuffer to allocate memory for request buffer that contains data to send to the card.
- Call SmcCxGetSmartcardReplyBuffer to allocate memory for reply buffer to hold data returned by the card.
- Send the data buffer.
- Call WdfRequestSetInformation to set completion status for a specified framework request object.
Requirements
Target platform |
Desktop |
Header |
SmcCx.h on Windows 10 |
See also