summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>2000-12-21 21:11:32 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>2000-12-21 21:11:32 +0000
commitd78dad9f69f12b5a24bbb16f0c33247d149d5526 (patch)
treed9cc3033617b475532fc47f60801f3d61f5be4f2
parentb9b6b965e68e89b6ca50f9f928ba04db6ca84ee5 (diff)
document svc_getreqset2(), a non-standard interface
-rw-r--r--lib/libc/rpc/Makefile.inc3
-rw-r--r--lib/libc/rpc/rpc.328
2 files changed, 29 insertions, 2 deletions
diff --git a/lib/libc/rpc/Makefile.inc b/lib/libc/rpc/Makefile.inc
index 3a3b3599939..afcec0471c5 100644
--- a/lib/libc/rpc/Makefile.inc
+++ b/lib/libc/rpc/Makefile.inc
@@ -1,4 +1,4 @@
-# $OpenBSD: Makefile.inc,v 1.10 2000/01/26 06:22:54 deraadt Exp $
+# $OpenBSD: Makefile.inc,v 1.11 2000/12/21 21:11:31 deraadt Exp $
# librpc sources
.PATH: ${LIBCSRCDIR}/arch/${MACHINE}/rpc ${LIBCSRCDIR}/rpc
@@ -56,6 +56,7 @@ MLINKS+= bindresvport.3 bindresvport_sa.3 \
rpc.3 svc_getcaller.3 \
rpc.3 svc_getreq.3 \
rpc.3 svc_getreqset.3 \
+ rpc.3 svc_getreqset2.3 \
rpc.3 svc_register.3 \
rpc.3 svc_run.3 \
rpc.3 svc_sendreply.3 \
diff --git a/lib/libc/rpc/rpc.3 b/lib/libc/rpc/rpc.3
index 5fd530bd0c9..dcb48497576 100644
--- a/lib/libc/rpc/rpc.3
+++ b/lib/libc/rpc/rpc.3
@@ -1,4 +1,4 @@
-.\" $OpenBSD: rpc.3,v 1.24 2000/11/09 23:00:52 deraadt Exp $
+.\" $OpenBSD: rpc.3,v 1.25 2000/12/21 21:11:31 deraadt Exp $
.\" Mostly converted to mandoc by Theo de Raadt, Tue Feb 24 04:04:46 MST 1998
.\"
.Dd February 16, 1988
@@ -38,6 +38,7 @@
.Nm svc_getcaller ,
.Nm svc_getreq ,
.Nm svc_getreqset ,
+.Nm svc_getreqset2 ,
.Nm svc_register ,
.Nm svc_sendreply ,
.Nm svc_unregister ,
@@ -137,6 +138,8 @@
.Ft int
.Fn svc_getreqset "fd_set *rdfds"
.Ft int
+.Fn svc_getreqset2 "fd_set *rdfds, int width"
+.Ft int
.Fn svc_getreq "int rdfds"
.Ft int
.Fn svc_register "SVCXPRT *xprt" "u_long prognum" "u_long versnum" "void (*dispatch)()" "u_long protocol"
@@ -868,6 +871,29 @@ value of
.Fa rdfds
have been serviced.
.Pp
+.Fn svc_getreqset2
+is a non-standard routine which is only of interest if a service
+implementor does not call
+.Fn svc_run ,
+but instead implements custom asynchronous event processing.
+It is called when the
+.Xr select 2
+system call has determined that an
+.Tn RPC
+request has arrived on some
+.Tn RPC
+.Fa socket(s) ;
+.Fa rdfds
+is the resultant read file descriptor bit mask.
+The routine returns when all sockets associated with the
+value of
+.Fa rdfds
+have been serviced.
+This interface is non-portable, but provided for applications which
+need to deal with large fd_set sizes.
+.Tn RPC
+internals use it.
+.Pp
.Fn svc_getreq
is similar to
.Fa svc_getreqset ,