1*3ff48bf5SDavid du Colombier #include <u.h>
2*3ff48bf5SDavid du Colombier #include <libc.h>
3*3ff48bf5SDavid du Colombier #include <thread.h>
4*3ff48bf5SDavid du Colombier #include "threadimpl.h"
5*3ff48bf5SDavid du Colombier
6*3ff48bf5SDavid du Colombier static long
_ioreadn(va_list * arg)7*3ff48bf5SDavid du Colombier _ioreadn(va_list *arg)
8*3ff48bf5SDavid du Colombier {
9*3ff48bf5SDavid du Colombier int fd;
10*3ff48bf5SDavid du Colombier void *a;
11*3ff48bf5SDavid du Colombier long n;
12*3ff48bf5SDavid du Colombier
13*3ff48bf5SDavid du Colombier fd = va_arg(*arg, int);
14*3ff48bf5SDavid du Colombier a = va_arg(*arg, void*);
15*3ff48bf5SDavid du Colombier n = va_arg(*arg, long);
16*3ff48bf5SDavid du Colombier return readn(fd, a, n);
17*3ff48bf5SDavid du Colombier }
18*3ff48bf5SDavid du Colombier
19*3ff48bf5SDavid du Colombier long
ioreadn(Ioproc * io,int fd,void * a,long n)20*3ff48bf5SDavid du Colombier ioreadn(Ioproc *io, int fd, void *a, long n)
21*3ff48bf5SDavid du Colombier {
22*3ff48bf5SDavid du Colombier return iocall(io, _ioreadn, fd, a, n);
23*3ff48bf5SDavid du Colombier }
24