|
Definition at line 34 of file io/devctrl.c.
References Event(), IopXxxControlFile(), and TRUE.
Referenced by IopCacheNetbiosNameForIpAddress(), IopStartNetworkForRemoteBoot(), IopStartTcpIpForRemoteBoot(), IopTCPQueryInformationEx(), IopTCPSetInformationEx(), VdmFlushPrinterWriteData(), VdmPrinterStatus(), and Win32CommandChannelThread().
00049 :
00050
00051 This service builds descriptors or MDLs for the supplied buffer(s) and
00052 passes the untyped data to the device driver associated with the file
00053 handle. It is up to the driver to check the input data and function
00054 IoControlCode for validity, as well as to make the appropriate access
00055 checks.
00056
00057 Arguments:
00058
00059 FileHandle - Supplies a handle to the file on which the service is being
00060 performed.
00061
00062 Event - Supplies an optional event to be set to the Signaled state when
00063 the service is complete.
00064
00065 ApcRoutine - Supplies an optional APC routine to be executed when the
00066 service is complete.
00067
00068 ApcContext - Supplies a context parameter to be passed to the ApcRoutine,
00069 if an ApcRoutine was specified.
00070
00071 IoStatusBlock - Address of the caller's I/O status block.
00072
00073 IoControlCode - Subfunction code to determine exactly what operation is
00074 being performed.
00075
00076 InputBuffer - Optionally supplies an input buffer to be passed to the
00077 device driver. Whether or not the buffer is actually optional is
00078 dependent on the IoControlCode.
00079
00080 InputBufferLength - Length of the InputBuffer in bytes.
00081
00082 OutputBuffer - Optionally supplies an output buffer to receive information
00083 from the device driver. Whether or not the buffer is actually optional
00084 is dependent on the IoControlCode.
00085
00086 OutputBufferLength - Length of the OutputBuffer in bytes.
00087
00088 Return Value:
00089
00090 The status returned is success if the control operation was properly
00091 queued to the I/O system. Once the operation completes, the status
00092 can be determined by examining the Status field of the I/O status block.
00093
00094 --*/
00095
00096 {
00097
00098
00099
00100
00101
00102 return IopXxxControlFile( FileHandle,
00103 Event,
00104 ApcRoutine,
00105 ApcContext,
00106 IoStatusBlock,
00107 IoControlCode,
00108 InputBuffer,
00109 InputBufferLength,
00110 OutputBuffer,
00111 OutputBufferLength,
00112 TRUE );
00113 }
}
|