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. @@ -2689,7 +2689,7 @@ would be padded by Nul bytes. - Unix domain sockets are not available on windows. + Unix domain sockets are not available on Windows. Server Address Format @@ -2806,7 +2806,7 @@ over a network is unsecure. - 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. @@ -2924,6 +2924,67 @@ + + Executed Subprocesses on Unix + + 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. + + + The forked process will inherit the standard error output and + process group from the parent process. + + + Executed subprocesses are not available on Windows. + + + Server Address Format + + Executed subprocess addresses are identified by the "unixexec:" prefix + and support the following key/value pairs: + + + + + + Name + Values + Description + + + + + path + (path) + 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. + + + argv0 + (string) + 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(). + + + argv1, argv2, ... + (string) + 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. + + + + + + Meta Transports