1 <h2>device_read_inband
</h2>
<hr>
<p>
<strong>Function
</strong> - Read a sequence of bytes "inband" from a device object.
<h3>SYNOPSIS
</h3>
<pre>
<strong>#include<device/device.h>
</strong>
<strong>kern_return_t device_read_inband
</strong>
<strong>(mach_port_t
</strong> <var>device
</var>,
<strong>dev_mode_t
</strong> <var>mode
</var>,
<strong>recnum_t
</strong> <var>recnum
</var>,
<strong>io_buf_len_t
</strong> <var>bytes_wanted
</var>,
<strong>io_buf_ptr_inband_t
</strong> <var>data
</var>,
<strong>mach_msg_type_number_t
</strong> <var>*data_count
</var><strong>);
</strong>
<strong>#include<device/device_request.h>
</strong>
<strong>kern_return_t device_read_request_inband
</strong>
<strong>(mach_port_t
</strong> <var>device
</var>,
<strong>mach_port_t
</strong> <var>reply_port
</var>,
<strong>dev_mode_t
</strong> <var>mode
</var>,
<strong>recnum_t
</strong> <var>recnum
</var>,
<strong>io_buf_len_t
</strong> <var>bytes_wanted
</var><strong>);
</strong>
<strong>kern_return_t ds_device_read_reply_inband
</strong>
<strong>(mach_port_t
</strong> <var>reply_port
</var>,
<strong>kern_return_t
</strong> <var>return_code
</var>,
<strong>io_buf_ptr_inband_t
</strong> <var>data
</var>,
<strong>mach_msg_type_number_t
</strong> <var>data_count
</var><strong>);
</strong>
</pre>
<h3>PARAMETERS
</h3>
<dl>
<p>
<dt> <var>device
</var>
<dd>
[in device send right]
A device port to the device to be read.
<p>
<dt> <var>reply_port
</var>
<dd>
[in reply receive (to be converted to send-once) right]
The port to
which the reply message is to be sent.
<p>
<dt> <var>mode
</var>
<dd>
[in scalar]
I/O mode value. Meaningful options are:
<dl>
<p>
<dt> <strong>D_NOWAIT
</strong>
<dd>
Do not wait if data is unavailable.
</dl>
<p>
<dt> <var>recnum
</var>
<dd>
[in scalar]
Record number to be read.
<p>
<dt> <var>bytes_wanted
</var>
<dd>
[in scalar]
Size of data transfer.
<p>
<dt> <var>return_code
</var>
<dd>
[in scalar]
The return status code from the read.
<p>
<dt> <var>data
</var>
<dd>
[out array of bytes, in for asynchronous form]
Returned data bytes.
<p>
<dt> <var>data_count
</var>
<dd>
[out scalar, in for asynchronous form]
Number of returned data bytes.
</dl>
<h3>DESCRIPTION
</h3>
<p>
The
<strong>device_read_inband
</strong> function reads a sequence of bytes
from a device object. The
meaning of
<var>recnum
</var> as well as the specific operation performed is device
dependent. This call differs from
<strong>device_read
</strong> in that
the returned bytes are returned
"inband" in the reply IPC message.
<h3>RETURN VALUES
</h3>
<p>
Only generic errors apply.
<h3>RELATED INFORMATION
</h3>
<p>
Functions:
<a href=
"device_read.html"><strong>device_read
</strong></a>,
<a href=
"device_read_overwrite.html"><strong>device_read_overwrite
</strong></a>,
<a href=
"device_reply_server.html"><strong>device_reply_server
</strong></a>.