]> git.lizzy.rs Git - plan9front.git/blobdiff - sys/man/2/ioproc
tinc(8): add history section
[plan9front.git] / sys / man / 2 / ioproc
index b20ba034b9c5848e939900b83eccf65c1536d7c5..4b69bdba8826359bbf01335e1e805c50cdbe0283 100644 (file)
@@ -3,12 +3,14 @@
 closeioproc,
 iocall,
 ioclose,
+ioflush,
 iointerrupt,
 iodial,
 ioopen,
 ioproc,
 ioread,
 ioreadn,
+iosleep,
 iowrite \- slave I/O processes for threaded programs
 .SH SYNOPSIS
 .PP
@@ -31,8 +33,10 @@ int  ioclose(Ioproc *io, int fd);
 long   ioread(Ioproc *io, int fd, void *a, long n);
 long   ioreadn(Ioproc *io, int fd, void *a, long n);
 long   iowrite(Ioproc *io, int fd, void *a, long n);
-int    iodial(Ioproc *io, char *addr, char *local, char *dir, char *cdfp);
+int    iodial(Ioproc *io, char *addr, char *local, char *dir, int *cdfp);
+int    iosleep(Ioproc *io, long n);
 .XX
+int    ioflush(Ioproc *io);
 void   iointerrupt(Ioproc *io);
 void   closeioproc(Ioproc *io);
 .XX
@@ -63,6 +67,7 @@ rather than return an error.
 .IR ioread ,
 .IR ioreadn ,
 .IR iowrite ,
+.IR iosleep ,
 and
 .IR iodial
 execute the
@@ -74,14 +79,16 @@ and
 .IR dial (2))
 in the slave process associated with
 .IR io .
-It is an error to execute more than one call
-at a time in an I/O proc.
 .PP
 .I Iointerrupt
-interrupts the call currently executing in the I/O proc.
-If no call is executing,
+interrupts the next or currently executing call in the I/O proc.  If
+there was no call executing, the interrupt will stay pending and the
+next I/O call will get interrupted.
+.PP
+.I Ioflush
+executes a non-op in the I/O proc. It is commonly called after
 .IR iointerrupt
-is a no-op.
+to clear a pending interrupt.
 .PP
 .I Closeioproc
 terminates the I/O proc and frees the associated
@@ -174,5 +181,6 @@ ioread(Ioproc *io, int fd, void *a, long n)
 .IR dial (2),
 .IR open (2),
 .IR read (2),
+.IR sleep (2),
 .IR thread (2)