1 |
/* Definitions for generic IO interface |
/* Definitions for generic IO interface |
2 |
Copyright (C) 1991,93,94,95,96,99,2001 Free Software Foundation, Inc. |
Copyright (C) 1991,93,94,95,96,99,2001,02 Free Software Foundation, Inc. |
3 |
|
|
4 |
This file is part of the GNU Hurd. |
This file is part of the GNU Hurd. |
5 |
|
|
43 |
io_object: io_t; |
io_object: io_t; |
44 |
RPT |
RPT |
45 |
data: data_t SCP; |
data: data_t SCP; |
46 |
offset: off_t; |
offset: loff_t; |
47 |
out amount: size_t); |
out amount: vm_size_t); |
48 |
|
|
49 |
/* Read data from an IO object. If offset if -1, read from the object |
/* Read data from an IO object. If offset if -1, read from the object |
50 |
maintained file pointer. If the object is not seekable, offset is |
maintained file pointer. If the object is not seekable, offset is |
53 |
io_object: io_t; |
io_object: io_t; |
54 |
RPT |
RPT |
55 |
out data: data_t, dealloc; |
out data: data_t, dealloc; |
56 |
offset: off_t; |
offset: loff_t; |
57 |
amount: size_t); |
amount: vm_size_t); |
58 |
|
|
59 |
/* Change current read/write offset */ |
/* Change current read/write offset */ |
60 |
routine io_seek ( |
routine io_seek ( |
61 |
io_object: io_t; |
io_object: io_t; |
62 |
RPT |
RPT |
63 |
offset: off_t; |
offset: loff_t; |
64 |
whence: int; |
whence: int; |
65 |
out newp: off_t); |
out newp: loff_t); |
66 |
|
|
67 |
/* Tell how much data can be read from the object without blocking for |
/* Tell how much data can be read from the object without blocking for |
68 |
a "long time" (this should be the same meaning of "long time" used |
a "long time" (this should be the same meaning of "long time" used |
70 |
routine io_readable ( |
routine io_readable ( |
71 |
io_object: io_t; |
io_object: io_t; |
72 |
RPT |
RPT |
73 |
out amount: size_t); |
out amount: vm_size_t); |
74 |
|
|
75 |
/* These four routines modify the O_APPEND, O_ASYNC, O_FSYNC, and |
/* These four routines modify the O_APPEND, O_ASYNC, O_FSYNC, and |
76 |
O_NONBLOCK bits for the IO object. In addition, io_get_openmodes |
O_NONBLOCK bits for the IO object. In addition, io_get_openmodes |
316 |
RPT |
RPT |
317 |
out idport: mach_port_send_t; |
out idport: mach_port_send_t; |
318 |
out fsidport: mach_port_send_t; |
out fsidport: mach_port_send_t; |
319 |
out fileno: int); |
out fileno: ino64_t); |
320 |
|
|
321 |
/* Revoke the access of all descriptors except this one currently open |
/* Revoke the access of all descriptors except this one currently open |
322 |
on the specified object. */ |
on the specified object. */ |