X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=userv.git;a=blobdiff_plain;f=spec.html%2Fch-ipass.html;h=a3a11606c904b7228c1c7eb6ad17409dffd14284;hp=1a527a863a35221f4f0de64c0c84a2cdf67656b4;hb=80bd586772a9f17d9235801b4727136d94a96862;hpb=a58ad23a44f5f3f0210dff9cd8d1da8f392ea2ae diff --git a/spec.html/ch-ipass.html b/spec.html/ch-ipass.html index 1a527a8..a3a1160 100644 --- a/spec.html/ch-ipass.html +++ b/spec.html/ch-ipass.html @@ -1,143 +1,184 @@ - +
+ +-The information described below is the only information which passes -between the caller and the service. +
+The information described below is the only information which passes between +the caller and the service.
service
parameter, and is used by the
+service
parameter, and is used by the
execute-from-directory
and execute-from-path
-configuration directives. It is usually used to select which service
-program to invoke. It is also passed to the service program in the
+configuration directives. It is usually used to select which service program
+to invoke. It is also passed to the service program in the
USERV_SERVICE
environment variable.
+SIGPIPE
(or EPIPE
if
-SIGPIPE
is caught or ignored) in the service.
-
-Likewise, the service can close filedescriptors specified for reading,
-which will cause the corresponding filedescriptors passed by the
-caller to be closed, so that if these are pipes processes which write
-to them will receive SIGPIPE
or EPIPE
.
-
-no-suppress-args
is set then arguments passed to the client
-by its caller will be passed on, verbatim, to the service.
-
-disconnect-hup
is set then the service will also be sent a
-SIGHUP
.
-
-LOGNAME
(or USER
) environment variable
-as passed to the client will be used as the login name of the calling
-user if the uid of the calling process matches the uid corresponding
-to that login name. Otherwise the calling uid's password entry will
-be used to determine the calling user's login name.
-
-This login name and the calling uid are available in the configuration
-language in the calling-user
parameter and are passed to the
-service program in environment variables USERV_USER
and
-USERV_UID
.
-
-The shell corresponding to that login name (according to the password
-entry) is available as in the configuration language's
-calling-user-shell
parameter.
-
-If no relevant password entry can be found then no service will be
-invoked.
++Data may be passed into the service through reading pipes and out of it through +writing pipes. These pipes can remain open only until the service and client +have terminated, or can be made to stay open after the client has terminated +and (if the service program forks) the main service process has exited; the +behaviour is controlled by options passed to the client by its caller. -
calling-group
parameter and are passed to the service in
-environment variables.
+
+The caller can arrange that a writing pipe be connected to a pipe or similar
+object and cause attempts to write to that descriptor by the service to
+generate a SIGPIPE
(or EPIPE
if SIGPIPE
+is caught or ignored) in the service.
-If no name can be found for a numeric group to which the calling
-process belongs then no service will be invoked.
+
+Likewise, the service can close filedescriptors specified for reading, which
+will cause the corresponding filedescriptors passed by the caller to be closed,
+so that if these are pipes processes which write to them will receive
+SIGPIPE
or EPIPE
.
+
no-suppress-args
is set then arguments passed to the client by
+its caller will be passed on, verbatim, to the service.
+disconnect-hup
+is set then the service will also be sent a SIGHUP
.
+LOGNAME
(or USER
) environment
+variable as passed to the client will be used as the login name of the calling
+user if the uid of the calling process matches the uid corresponding to that
+login name. Otherwise the calling uid's password entry will be used to
+determine the calling user's login name.
---hidecwd
,
-to the service program in the USERV_CWD
variable. This grants no
-special access to that directory unless it is a subdirectory of a
-directory which is executable (searchable) but not readable by the
-service user.
+
+This login name and the calling uid are available in the configuration language
+in the calling-user
parameter and are passed to the service
+program in environment variables USERV_USER
and
+USERV_UID
.
-
+The shell corresponding to that login name (according to the password entry) is
+available as in the configuration language's calling-user-shell
+parameter.
-
+If no relevant password entry can be found then no service will be invoked. +
calling-group
parameter and are passed to the service in
+environment variables.
++If no name can be found for a numeric group to which the calling process +belongs then no service will be invoked. +
--hidecwd
, to the
+service program in the USERV_CWD
variable. This grants no special
+access to that directory unless it is a subdirectory of a directory which is
+executable (searchable) but not readable by the service user.
++User service daemon and client specification
-0.95.0ian@davenant.greenend.org.uk
+