… | |
… | |
126 | if (eio_init (want_poll, done_poll)) abort (); |
126 | if (eio_init (want_poll, done_poll)) abort (); |
127 | |
127 | |
128 | do |
128 | do |
129 | { |
129 | { |
130 | /* avoid relative paths yourself(!) */ |
130 | /* avoid relative paths yourself(!) */ |
131 | eio_mkdir ("eio-test-dir", 0777, res_cb) |
131 | eio_mkdir ("eio-test-dir", 0777, 0, res_cb, "mkdir"); |
132 | ->data = "mkdir"; |
|
|
133 | eio_nop (res_cb) |
132 | eio_nop (0, res_cb, "nop"); |
134 | ->data = "nop"; |
|
|
135 | event_loop (); |
133 | event_loop (); |
136 | |
134 | |
137 | eio_stat ("eio-test-dir", stat_cb); |
135 | eio_stat ("eio-test-dir", 0, stat_cb, "stat"); |
138 | eio_lstat ("eio-test-dir", stat_cb); |
136 | eio_lstat ("eio-test-dir", 0, stat_cb, "stat"); |
139 | eio_open ("eio-test-dir/eio-test-file", O_RDWR | O_CREAT, 0777, open_cb); |
137 | eio_open ("eio-test-dir/eio-test-file", O_RDWR | O_CREAT, 0777, 0, open_cb, "open"); |
140 | eio_symlink ("test", "eio-test-dir/eio-symlink", res_cb) |
138 | eio_symlink ("test", "eio-test-dir/eio-symlink", 0, res_cb, "symlink"); |
141 | ->data = "symlink"; |
|
|
142 | eio_mknod ("eio-test-dir/eio-fifo", S_IFIFO, 0, res_cb) |
139 | eio_mknod ("eio-test-dir/eio-fifo", S_IFIFO, 0, 0, res_cb, "mknod"); |
143 | ->data = "mknod"; |
|
|
144 | event_loop (); |
140 | event_loop (); |
145 | |
141 | |
146 | eio_utime ("eio-test-dir", 12345.678, 23456.789, res_cb) |
142 | eio_utime ("eio-test-dir", 12345.678, 23456.789, 0, res_cb, "utime"); |
147 | ->data = "utime"; |
|
|
148 | eio_futime (last_fd, 92345.678, 93456.789, res_cb) |
143 | eio_futime (last_fd, 92345.678, 93456.789, 0, res_cb, "futime"); |
149 | ->data = "futime"; |
|
|
150 | eio_chown ("eio-test-dir", getuid (), getgid (), res_cb) |
144 | eio_chown ("eio-test-dir", getuid (), getgid (), 0, res_cb, "chown"); |
151 | ->data = "chown"; |
|
|
152 | eio_fchown (last_fd, getuid (), getgid (), res_cb) |
145 | eio_fchown (last_fd, getuid (), getgid (), 0, res_cb, "fchown"); |
153 | ->data = "fchown"; |
|
|
154 | eio_fchmod (last_fd, 0123, res_cb) |
146 | eio_fchmod (last_fd, 0123, 0, res_cb, "fchmod"); |
155 | ->data = "fchmod"; |
|
|
156 | eio_readdir ("eio-test-dir", readdir_cb); |
147 | eio_readdir ("eio-test-dir", 0, readdir_cb, "readdir"); |
157 | eio_readdir ("/nonexistant", readdir_cb); |
148 | eio_readdir ("/nonexistant", 0, readdir_cb, "readdir"); |
158 | eio_fstat (last_fd, stat_cb); |
149 | eio_fstat (last_fd, 0, stat_cb, "stat"); |
159 | eio_write (last_fd, "test\nfail\n", 10, 4, res_cb) |
150 | eio_write (last_fd, "test\nfail\n", 10, 4, 0, res_cb, "write"); |
160 | ->data = "write"; |
|
|
161 | event_loop (); |
151 | event_loop (); |
162 | |
152 | |
163 | eio_read (last_fd, 0, 8, 0, read_cb); |
153 | eio_read (last_fd, 0, 8, 0, EIO_PRI_DEFAULT, read_cb, "read"); |
164 | eio_readlink ("eio-test-dir/eio-symlink", res_cb) |
154 | eio_readlink ("eio-test-dir/eio-symlink", 0, res_cb, "readlink"); |
165 | ->data = "readlink"; |
|
|
166 | event_loop (); |
155 | event_loop (); |
167 | |
156 | |
168 | eio_dup2 (1, 2, res_cb) // dup stdout to stderr |
157 | eio_dup2 (1, 2, EIO_PRI_DEFAULT, res_cb, "dup"); // dup stdout to stderr |
169 | ->data = "dup2"; |
|
|
170 | eio_chmod ("eio-test-dir", 0765, res_cb) |
158 | eio_chmod ("eio-test-dir", 0765, 0, res_cb, "chmod"); |
171 | ->data = "chmod"; |
|
|
172 | eio_ftruncate (last_fd, 9, res_cb) |
159 | eio_ftruncate (last_fd, 9, 0, res_cb, "ftruncate"); |
173 | ->data = "ftruncate"; |
|
|
174 | eio_fdatasync (last_fd, res_cb) |
160 | eio_fdatasync (last_fd, 0, res_cb, "fdatasync"); |
175 | ->data = "fdatasync"; |
|
|
176 | eio_fsync (last_fd, res_cb) |
161 | eio_fsync (last_fd, 0, res_cb, "fsync"); |
177 | ->data = "fsync"; |
|
|
178 | eio_sync (res_cb) |
162 | eio_sync (0, res_cb, "sync"); |
179 | ->data = "sync"; |
|
|
180 | eio_busy (0.5, res_cb) |
163 | eio_busy (0.5, 0, res_cb, "busy"); |
181 | ->data = "busy"; |
|
|
182 | event_loop (); |
164 | event_loop (); |
183 | |
165 | |
184 | eio_sendfile (1, last_fd, 4, 5, res_cb) // write "test\n" to stdout |
166 | eio_sendfile (1, last_fd, 4, 5, 0, res_cb, "sendfile"); // write "test\n" to stdout |
185 | ->data = "sendfile"; |
|
|
186 | eio_fstat (last_fd, stat_cb); |
167 | eio_fstat (last_fd, 0, stat_cb, "stat"); |
187 | event_loop (); |
168 | event_loop (); |
188 | |
169 | |
189 | eio_truncate ("eio-test-dir/eio-test-file", 6, res_cb) |
170 | eio_truncate ("eio-test-dir/eio-test-file", 6, 0, res_cb, "truncate"); |
190 | ->data = "truncate"; |
|
|
191 | eio_readahead (last_fd, 0, 64, res_cb) |
171 | eio_readahead (last_fd, 0, 64, 0, res_cb, "readahead"); |
192 | ->data = "readahead"; |
|
|
193 | event_loop (); |
172 | event_loop (); |
194 | |
173 | |
195 | eio_close (last_fd, res_cb) |
174 | eio_close (last_fd, 0, res_cb, "close"); |
196 | ->data = "close"; |
|
|
197 | eio_link ("eio-test-dir/eio-test-file", "eio-test-dir/eio-test-file-2", res_cb) |
175 | eio_link ("eio-test-dir/eio-test-file", "eio-test-dir/eio-test-file-2", 0, res_cb, "link"); |
198 | ->data = "link"; |
|
|
199 | event_loop (); |
176 | event_loop (); |
200 | |
177 | |
201 | eio_rename ("eio-test-dir/eio-test-file", "eio-test-dir/eio-test-file-renamed", res_cb) |
178 | eio_rename ("eio-test-dir/eio-test-file", "eio-test-dir/eio-test-file-renamed", 0, res_cb, "rename"); |
202 | ->data = "rename"; |
|
|
203 | event_loop (); |
179 | event_loop (); |
204 | |
180 | |
205 | eio_unlink ("eio-test-dir/eio-fifo", res_cb) |
181 | eio_unlink ("eio-test-dir/eio-fifo", 0, res_cb, "unlink"); |
206 | ->data = "unlink"; |
|
|
207 | eio_unlink ("eio-test-dir/eio-symlink", res_cb) |
182 | eio_unlink ("eio-test-dir/eio-symlink", 0, res_cb, "unlink"); |
208 | ->data = "unlink"; |
|
|
209 | eio_unlink ("eio-test-dir/eio-test-file-2", res_cb) |
183 | eio_unlink ("eio-test-dir/eio-test-file-2", 0, res_cb, "unlink"); |
210 | ->data = "unlink"; |
|
|
211 | eio_unlink ("eio-test-dir/eio-test-file-renamed", res_cb) |
184 | eio_unlink ("eio-test-dir/eio-test-file-renamed", 0, res_cb, "unlink"); |
212 | ->data = "unlink"; |
|
|
213 | event_loop (); |
185 | event_loop (); |
214 | |
186 | |
215 | eio_rmdir ("eio-test-dir", res_cb) |
187 | eio_rmdir ("eio-test-dir", 0, res_cb, "rmdir"); |
216 | ->data = "rmdir"; |
|
|
217 | event_loop (); |
188 | event_loop (); |
218 | } |
189 | } |
219 | while (0); |
190 | while (0); |
220 | |
191 | |
221 | return 0; |
192 | return 0; |