PERFORCE change 164416 for review

Robert Watson rwatson at FreeBSD.org
Mon Jun 15 11:19:52 UTC 2009


http://perforce.freebsd.org/chv.cgi?CH=164416

Change 164416 by rwatson at rwatson_freebsd_capabilities on 2009/06/15 11:19:11

	Complete libcapability_io.3 break-out.

Affected files ...

.. //depot/projects/trustedbsd/capabilities/src/lib/libcapability/Makefile#11 edit
.. //depot/projects/trustedbsd/capabilities/src/lib/libcapability/libcapability.3#18 edit
.. //depot/projects/trustedbsd/capabilities/src/lib/libcapability/libcapability_host.3#2 edit
.. //depot/projects/trustedbsd/capabilities/src/lib/libcapability/libcapability_sandbox.3#2 edit

Differences ...

==== //depot/projects/trustedbsd/capabilities/src/lib/libcapability/Makefile#11 (text+ko) ====

@@ -18,7 +18,8 @@
 WARNS?=	6
 
 MAN=	libcapability.3
-MAN+=	libcapability_io.3
+MAN+=	libcapability_host.3
+MAN+=	libcapability_sandbox.3
 MLINKS=	libcapability.3 libcapabilitym.3	\
 	libcapability.3 lc_limitfd.3		\
 	libcapability.3 lch_start.3		\
@@ -31,16 +32,16 @@
 	libcapability.3 lch_getprocdesc.3	\
 	libcapability.3 lcs_get.3		\
 	libcapability.3 lcs_getsock.3		\
-	libcapability_io.3 lch_recv.3		\
-	libcapability_io.3 lch_recv_rights.3	\
-	libcapability_io.3 lch_rpc.3		\
-	libcapability_io.3 lch_send.3		\
-	libcapability_io.3 lch_send_rights.3	\
-	libcapability_io.3 lcs_recv.3		\
-	libcapability_io.3 lcs_recv_rights.3	\
-	libcapability_io.3 lcs_recvrpc.3	\
-	libcapability_io.3 lcs_send.3		\
-	libcapability_io.3 lcs_send_rights.3	\
-	libcapability_io.3 lcs_sendrpc.3
+	libcapability_host.3 lch_recv.3		\
+	libcapability_host.3 lch_recv_rights.3	\
+	libcapability_host.3 lch_rpc.3		\
+	libcapability_host.3 lch_send.3		\
+	libcapability_host.3 lch_send_rights.3	\
+	libcapability_sandbox.3 lcs_recv.3	\
+	libcapability_sandbox.3 lcs_recv_rights.3	\
+	libcapability_sandbox.3 lcs_recvrpc.3	\
+	libcapability_sandbox.3 lcs_send.3	\
+	libcapability_sandbox.3 lcs_send_rights.3	\
+	libcapability_sandbox.3 lcs_sendrpc.3
 
 .include <bsd.lib.mk>

==== //depot/projects/trustedbsd/capabilities/src/lib/libcapability/libcapability.3#18 (text+ko) ====

@@ -169,7 +169,7 @@
 .Nm
 implements a number of I/O functions as part of the host API, which are
 documented in
-.Xr libcapability_io 3 .
+.Xr libcapability_host 3 .
 .Sh SANDBOX API
 The
 .Nm
@@ -189,14 +189,15 @@
 .Nm
 implements a number of I/O functions as part of the sandbox API, which are
 documented in
-.Xr libcapability_io 3 .
+.Xr libcapability_sandbox 3 .
 .Sh SEE ALSO
 .Xr rpcgen 1 ,
 .Xr cap_enter 2 ,
 .Xr cap_new 2 ,
 .Xr close 2 ,
 .Xr dup2 2 ,
-.Xr libcapability_io 3 ,
+.Xr libcapability_host 3 ,
+.Xr libcapability_sandbox 3 ,
 .Xr unix 4
 .Sh HISTORY
 Support for capabilities and capabilities mode was developed as part of the

==== //depot/projects/trustedbsd/capabilities/src/lib/libcapability/libcapability_host.3#2 (text+ko) ====

@@ -34,7 +34,7 @@
 .\"
 .Dd June 11, 2009
 .Os
-.Dt LIBCAPABILITY_IO 3
+.Dt LIBCAPABILITY_HOST 3
 .Sh NAME
 .Nm libcapability
 .Nd "library interface to capability-mode services"
@@ -56,22 +56,6 @@
 .Fn lch_send "struct lc_sandbox *lcsp" "const void *msg" "size_t len" "int flags"
 .Ft ssize_t
 .Fn lch_send_rights "struct lc_sandbox *lcsp" "const void *msg" "size_t len" "int flags" "int *fdp" "int fdcount"
-.Ft ssize_t
-.Fn lcs_recv "struct lc_host *lchp" "void *buf" "size_t len" "int flags"
-.Ft ssize_t
-.Fn lcs_recv_rights "struct lc_host *lchp" "void *buf" "size_t len" "int flags" "int *fdp" "int *fdcountp"
-.Ft int
-.Fn lcs_recvrpc "struct lc_host *lchp" "u_int32_t *opnop" "u_int32_t *seqnop" "u_char **bufferp" "size_t *lenp"
-.Ft int
-.Fn lcs_recvrpc_rights "struct lc_host *lchp" "u_int32_t *opnop" "u_int32_t *seqnop" "u_char **bufferp" "size_t *lenp" "int *fdp" "int *fdcountp"
-.Ft ssize_t
-.Fn lcs_send "struct lc_host *lchp" "const void *msg" "size_t len" "int flags"
-.Ft ssize_t
-.Fn lcs_send_rights "struct lc_host *lchp" "const void *msg" "size_t len" "int flags" "int *fdp" "int fdcount"
-.Ft int
-.Fn lcs_sendrpc "struct lc_host *lchp" "u_int32_t opno" "u_int32_t seqno" "struct iovec *rep" "int repcount"
-.Ft int
-.Fn lcs_sendrpc_rights "struct lc_host *lchp" "u_int32_t opno" "u_int32_t seqno" "struct iovec *rep" "int repcount" "int *fdp" "int fdcount"
 .Sh DESCRIPTION
 The
 .Nm
@@ -86,9 +70,11 @@
 .Xr rpcgen 1
 to build event handling and marshaling code.
 .Pp
-This man page describes these I/O facilities; information on setting up
+This man page describes host I/O facilities; information on setting up
 and managing sandboxes may be found in
-.Xr libcapability 3 .
+.Xr libcapability 3 ;
+information on sandbox I/O facilities may be found in
+.Xr libcapability_sandbox 3 .
 .Sh HOST API
 .Fn lch_recv
 and
@@ -142,50 +128,6 @@
 If the RPC fails, -1 will be returned, or 0 and the size of any reply will be
 returned by reference using
 .Va replenp .
-.Sh SANDBOX API
-.Fn lcs_recv
-and
-.Fn lcs_send
-provide simple wrappers around
-.Xr recv 2
-and
-.Xr send 2
-to avoid sandboxes having to query host socket file descriptors before use.
-.Pp
-.Fn lcs_recv_rights
-and
-.Fn lcs_send_rights
-similarly allow receiving and sending file descriptors with messages.
-.Pp
-.Fn lcs_recvrpc
-and
-.Fn lcs_sendrpc
-may be used to implement a simple RPC system, in coordination with a host
-using
-.Fn lch_rpc .
-.Fn lcs_recvrpc
-blocks awaiting the receipt of an RPC request, which will be returned in a
-buffer allocated using
-.Xr malloc 3 ,
-.Va bufferp ,
-and with a data size returned via
-.Va lenp .
-The caller will also receive an operation number and a sequence number via
-.Va opnop
-and
-.Va seqnop .
-.Pp
-When an RPC is complete, it should be returned to the host via
-.Fn lcs_sendrpc ,
-which accepts the same operation and sequence number as arguments, as well as
-reply data via the
-.Vt iovec
-.Va rep
-and
-.Va repcount .
-When the sandbox is done with the request data, it should free the memory
-using
-.Xr free 3 .
 .Sh SEE ALSO
 .Xr rpcgen 1 ,
 .Xr recv 2 ,
@@ -193,6 +135,7 @@
 .Xr writev 2 ,
 .Xr free 3 ,
 .Xr libcapability 3 ,
+.Xr libcapability_sandbox 3 ,
 .Xr malloc 3 ,
 .Xr unix 4
 .Sh HISTORY

==== //depot/projects/trustedbsd/capabilities/src/lib/libcapability/libcapability_sandbox.3#2 (text+ko) ====

@@ -34,7 +34,7 @@
 .\"
 .Dd June 11, 2009
 .Os
-.Dt LIBCAPABILITY_IO 3
+.Dt LIBCAPABILITY_SANDBOX 3
 .Sh NAME
 .Nm libcapability
 .Nd "library interface to capability-mode services"
@@ -45,18 +45,6 @@
 .In sys/capability.h
 .In libcapability.h
 .Ft ssize_t
-.Fn lch_recv "struct lc_sandbox *lcsp, void *buf" "size_t len" "int flags"
-.Ft ssize_t
-.Fn lch_recv_rights "struct lc_sandbox *lcsp" "void *buf" "size_t len" "int flags" "int *fdp" "int *fdcountp"
-.Ft int
-.Fn lch_rpc "struct lc_sandbox *lcsp" "u_int32_t opno" "struct iovec *req" "int reqcount" "struct iovec *rep" "int repcount" "size_t *replenp"
-.Ft int
-.Fn lch_rpc_rights "struct lc_sandbox *lcsp" "u_int32_t opno" "struct iovec *req" "int reqcount" "int *req_fdp" "int req_fdcount" "struct iovec *rep" "int repcount" "size_t *replenp" "int *rep_fdp" "int *rep_fdcountp"
-.Ft ssize_t
-.Fn lch_send "struct lc_sandbox *lcsp" "const void *msg" "size_t len" "int flags"
-.Ft ssize_t
-.Fn lch_send_rights "struct lc_sandbox *lcsp" "const void *msg" "size_t len" "int flags" "int *fdp" "int fdcount"
-.Ft ssize_t
 .Fn lcs_recv "struct lc_host *lchp" "void *buf" "size_t len" "int flags"
 .Ft ssize_t
 .Fn lcs_recv_rights "struct lc_host *lchp" "void *buf" "size_t len" "int flags" "int *fdp" "int *fdcountp"
@@ -86,9 +74,11 @@
 .Xr rpcgen 1
 to build event handling and marshaling code.
 .Pp
-This man page describes these I/O facilities; information on setting up
+This man page describes sandbox I/O facilities; information on setting up
 and managing sandboxes may be found in
-.Xr libcapability 3 .
+.Xr libcapability 3 ;
+information on host I/O facilities may be found in
+.Xr libcapability_host 3 .
 .Sh HOST API
 .Fn lch_recv
 and
@@ -193,6 +183,7 @@
 .Xr writev 2 ,
 .Xr free 3 ,
 .Xr libcapability 3 ,
+.Xr libcapability_host 3 ,
 .Xr malloc 3 ,
 .Xr unix 4
 .Sh HISTORY


More information about the p4-projects mailing list