diff options
author | Lennart Poettering <lennart@poettering.net> | 2012-02-02 05:46:09 +0100 |
---|---|---|
committer | Simon McVittie <simon.mcvittie@collabora.co.uk> | 2012-03-12 16:38:36 +0000 |
commit | 552ca4d0ce8a59617db16b78698e80897b8b33e4 (patch) | |
tree | 05d781b88b7ce3e4ac35ec00552c1fe3ede9bb6a /doc | |
parent | b328fee69b9e91b79008276d4e1ddc9111c0359e (diff) | |
download | dbus-552ca4d0ce8a59617db16b78698e80897b8b33e4.tar.gz |
spec: document unixexec transports
This adds a specification text for the new unixexec: transport.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35230
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Diffstat (limited to 'doc')
-rw-r--r-- | doc/dbus-specification.xml | 67 |
1 files changed, 64 insertions, 3 deletions
diff --git a/doc/dbus-specification.xml b/doc/dbus-specification.xml index 2ac82128..d806b8ea 100644 --- a/doc/dbus-specification.xml +++ b/doc/dbus-specification.xml @@ -2667,7 +2667,7 @@ [FIXME we need to specify in detail each transport and its possible arguments] Current transports include: unix domain sockets (including - abstract namespace on linux), launchd, systemd, TCP/IP, and a debug/testing transport + abstract namespace on linux), launchd, systemd, TCP/IP, an executed subprocess and a debug/testing transport using in-process pipes. Future possible transports include one that tunnels over X11 protocol. </para> @@ -2689,7 +2689,7 @@ would be padded by Nul bytes. </para> <para> - Unix domain sockets are not available on windows. + Unix domain sockets are not available on Windows. </para> <sect3 id="transports-unix-domain-sockets-addresses"> <title>Server Address Format</title> @@ -2806,7 +2806,7 @@ over a network is unsecure. </para> <para> - Windows notes: Because of the tcp stack on windows does not provide sending + Windows notes: Because of the tcp stack on Windows does not provide sending credentials over a tcp connection, the EXTERNAL authentification mechanismus does not work. </para> @@ -2924,6 +2924,67 @@ </informaltable> </sect3> </sect2> + <sect2 id="transports-exec"> + <title>Executed Subprocesses on Unix</title> + <para> + This transport forks off a process and connects its standard + input and standard output with an anonymous Unix domain + socket. This socket is then used for communication by the + transport. This transport may be used to use out-of-process + forwarder programs as basis for the D-Bus protocol. + </para> + <para> + The forked process will inherit the standard error output and + process group from the parent process. + </para> + <para> + Executed subprocesses are not available on Windows. + </para> + <sect3 id="transports-exec-addresses"> + <title>Server Address Format</title> + <para> + Executed subprocess addresses are identified by the "unixexec:" prefix + and support the following key/value pairs: + </para> + <informaltable> + <tgroup cols="3"> + <thead> + <row> + <entry>Name</entry> + <entry>Values</entry> + <entry>Description</entry> + </row> + </thead> + <tbody> + <row> + <entry>path</entry> + <entry>(path)</entry> + <entry>Path of the binary to execute, either an absolute + path or a binary name that is searched for in the default + search path of the OS. This corresponds to the first + argument of execlp(). This key is mandatory.</entry> + </row> + <row> + <entry>argv0</entry> + <entry>(string)</entry> + <entry>The program name to use when executing the + binary. If omitted the same value as specified for path= + will be used. This corresponds to the second argument of + execlp().</entry> + </row> + <row> + <entry>argv1, argv2, ...</entry> + <entry>(string)</entry> + <entry>Arguments to pass to the binary. This corresponds + to the third and later arguments of execlp(). If a + specific argvX is not specified no further argvY for Y > X + are taken into account.</entry> + </row> + </tbody> + </tgroup> + </informaltable> + </sect3> + </sect2> </sect1> <sect1 id="meta-transports"> <title>Meta Transports</title> |