manpages/man1/dbus-daemon.1
author yippi
Wed, 20 Aug 2008 07:06:44 +0000
changeset 13189 836ff5d12ba2
child 15190 6995a6236181
permissions -rwxr-xr-x
2008-08-20 Brian Cameron <[email protected]> * base-specs/libwnck.spec, base-specs/pyspi.spec patches/libwnck-02-no-x11-dependency.diff, patches/pyspi-01-solaris.diff: Remove unneeded patches now that the x11.pc file is delivered into the OS. * SUNWdbus.spec, ext-sources/dbus.xml, manpages/Makefile, manpages/man1/dbus-daemon.1: Move dbus-daemon manpage from section 3 to section 1. * manpages/man1/*dbus*.1, manpages/man3/libdbus-glib-1.3: Update SEE ALSO sections to refer to dbus-daemon as a section 1 manpage.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
13189
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
     1
<!DOCTYPE REFENTRY PUBLIC "-//Sun Microsystems//DTD DocBook V3.0-Based SolBook Subset V2.0//EN" [
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
     2
<!--ArborText, Inc., 1988-1999, v.4002-->
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
     3
<!ENTITY cmd "dbus-daemon">
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
     4
<!ENTITY % commonents SYSTEM "smancommon.ent">
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
     5
%commonents;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
     6
<!ENTITY % booktitles SYSTEM "booktitles.ent">
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
     7
%booktitles;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
     8
<!ENTITY suncopy "Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.">
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
     9
]>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    10
<?Pub UDT _bookmark _target>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    11
<?Pub Inc>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    12
<refentry id="dbus-daemon-1">
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    13
<!-- %Z%%M% %I% %E% SMI; -->
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    14
<refmeta><refentrytitle>&cmd;</refentrytitle><manvolnum>3</manvolnum>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    15
<refmiscinfo class="date">19 Nov 2007</refmiscinfo>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    16
<refmiscinfo class="sectdesc">&man3;</refmiscinfo>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    17
<refmiscinfo class="software">&release;</refmiscinfo>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    18
<refmiscinfo class="arch">generic</refmiscinfo>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    19
<refmiscinfo class="copyright">&suncopy;</refmiscinfo>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    20
</refmeta>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    21
<indexterm><primary>&cmd;</primary></indexterm><indexterm><primary>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    22
Message bus daemon
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    23
</primary></indexterm><refnamediv id="dbus-daemon-1-name">
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    24
<refname>&cmd;</refname><refpurpose>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    25
Message bus daemon
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    26
</refpurpose></refnamediv>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    27
<refsynopsisdiv id="dbus-daemon-1-synp"><title>&synp-tt;</title>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    28
<cmdsynopsis><command>&cmd;</command>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    29
<arg choice="opt"><option>-config-file=<replaceable>file</replaceable></option></arg>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    30
<arg choice="opt"><option>-fork</option> | <option>-nofork</option></arg>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    31
<arg choice="opt"><option>-introspect</option></arg>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    32
<arg choice="opt"><option>-print-address[=<replaceable>descriptor</replaceable>]</option></arg>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    33
<arg choice="opt"><option>-print-pid[=<replaceable>descriptor</replaceable>]</option></arg>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    34
<arg choice="opt"><option>-session</option></arg>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    35
<arg choice="opt"><option>-system</option></arg>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    36
<arg choice="opt"><option>-version</option></arg>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    37
</cmdsynopsis></refsynopsisdiv>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    38
<refsect1 id="dbus-daemon-1-desc"><title>&desc-tt;</title>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    39
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    40
&cmd; is the D\-Bus message bus daemon.  See
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    41
<literal>http://www.freedesktop.org/software/dbus/</literal>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    42
for more information.  D\-Bus is first a library that provides one\-to\-one
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    43
communication between any two applications; &cmd; is an application that uses
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    44
this library to implement a message bus daemon.  Multiple programs connect to
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    45
the message bus daemon and can exchange messages with one another.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    46
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    47
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    48
There are two standard message bus instances.  &cmd; is used for both of these
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    49
instances, but with a different configuration file.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    50
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    51
<itemizedlist>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    52
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    53
systemwide message bus - Disabled and not supported on Solaris, but installed
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    54
on many systems as the "messagebus" init service.  Note that the
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    55
<option>-system</option> option is equivalent to:
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    56
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    57
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    58
"<option>-config\-file=/etc/dbus\-1/system.conf</option>"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    59
</para></listitem>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    60
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    61
per-user-login-session message bus - Enabled and supported on Solaris, and
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    62
started each time a user logs in.  Note that the 
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    63
<option>-session</option> option is equivalent to:
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    64
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    65
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    66
"<option>-config\-file=/etc/dbus\-1/session.conf</option>"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    67
</para></listitem>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    68
</itemizedlist>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    69
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    70
By creating additional configuration files and using the
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    71
<option>-config\-file</option> option, additional special-purpose message bus
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    72
daemons could be created.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    73
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    74
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    75
On Solaris, D\-Bus is configured with the systemwide message bus disabled.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    76
The systemwide message bus is not used by any applications that are currently
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    77
shipped with Solaris.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    78
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    79
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    80
The systemwide daemon is normally launched by an init script, standardly called
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    81
simply "messagebus".
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    82
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    83
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    84
The systemwide daemon is largely used for broadcasting system events, such as
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    85
changes to the printer queue, or adding/removing devices.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    86
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    87
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    88
The per-session daemon is used for various interprocess communication among
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    89
desktop applications (however, it is not tied to X or the GUI in any way).
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    90
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    91
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    92
SIGHUP will cause the D\-Bus daemon to PARTIALLY reload its configuration file
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    93
and to flush its user/group information caches.  Some configuration changes
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    94
would require kicking all apps off the bus; so they will only take effect if
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    95
you restart the daemon. Policy changes should take effect with SIGHUP.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    96
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    97
</refsect1>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    98
<refsect1 id="dbus-daemon-1-opts"><title>&opts-tt;</title>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
    99
<para>The following options are supported:</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   100
<variablelist termlength="wholescreen">
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   101
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   102
<term><option>-config-file=<replaceable>file</replaceable></option></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   103
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   104
Use the given configuration <replaceable>file</replaceable>.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   105
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   106
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   107
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   108
<term><option>-fork</option></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   109
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   110
Force the message bus to fork and become a daemon, regardless of configuration
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   111
file settings.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   112
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   113
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   114
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   115
<term><option>-introspect</option></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   116
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   117
Print introspect data and exit.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   118
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   119
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   120
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   121
<term><option>-nofork</option></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   122
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   123
Avoid running the message bus as a daemon, regardless of configuration file
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   124
settings.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   125
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   126
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   127
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   128
<term><option>-print-address[=<replaceable>descriptor</replaceable>]</option></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   129
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   130
Print the address of the message bus to standard output, or to the given file
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   131
<replaceable>descriptor</replaceable>.  This is used by programs that launch
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   132
the message bus.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   133
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   134
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   135
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   136
<term><option>-print-pid[=<replaceable>descriptor</replaceable>]</option></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   137
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   138
Print the process ID of the message bus to standard output, or to the given
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   139
file <replaceable>descriptor</replaceable>.  This is used by programs that
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   140
launch the message bus.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   141
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   142
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   143
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   144
<term><option>-session</option></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   145
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   146
Use the standard configuration file for the per-login-session message bus.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   147
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   148
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   149
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   150
<term><option>-system</option></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   151
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   152
Use the standard configuration file for the systemwide message bus.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   153
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   154
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   155
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   156
<term><option>-version</option></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   157
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   158
Print the version of the daemon.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   159
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   160
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   161
</variablelist></refsect1>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   162
<refsect1 id="dbus-daemon-1-exde"><title>&exde-tt;</title>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   163
<refsect2>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   164
<title>CONFIGURATION FILE</title>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   165
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   166
A message bus daemon has a configuration file that specializes it for a
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   167
particular application. For example, one configuration file might set up the
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   168
message bus to be a systemwide message bus, while another might set it
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   169
up to be a per-user-login-session bus.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   170
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   171
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   172
The configuration file also establishes resource limits, security parameters,
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   173
and so forth.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   174
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   175
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   176
The configuration file is not part of any interoperability specification and
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   177
its backward compatibility is not guaranteed; this document is documentation,
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   178
not specification.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   179
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   180
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   181
The standard systemwide and per-session message bus setups are configured in
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   182
the files "<filename>/etc/dbus-1/system.conf</filename>" and
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   183
"<filename>/etc/dbus-1/session.conf</filename>".  These files normally
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   184
&lt;include&gt; a <filename>system-local.conf</filename> or
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   185
<filename>session-local.conf</filename>; you can put local overrides in those
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   186
files to avoid modifying the primary configuration files.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   187
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   188
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   189
The configuration file is an XML document.  It must have the following doctype
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   190
declaration:
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   191
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   192
<screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   193
   &lt;!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D\-Bus Bus Configuration 1.0//EN"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   194
    "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd"&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   195
</screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   196
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   197
The following elements may be present in the configuration file.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   198
Note that some configuration file options are only meaningful with 
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   199
the systemwide message bus, which is disabled on Solaris.  Such options
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   200
are only documented for reference.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   201
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   202
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   203
&lt;busconfig&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   204
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   205
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   206
Root element.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   207
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   208
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   209
&lt;type&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   210
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   211
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   212
The well-known type of the message bus.  Currently known values are "system"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   213
and "session"; if other values are set, they should be either added to the
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   214
D\-Bus specification, or namespaced.  The last &lt;type&gt; element "wins"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   215
(previous values are ignored).
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   216
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   217
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   218
Example: &lt;type&gt;session&lt;/type&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   219
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   220
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   221
&lt;include&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   222
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   223
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   224
Include a file &lt;include&gt;filename.conf&lt;/include&gt; at this point.  If
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   225
the filename is relative, it is located relative to the configuration file
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   226
doing the including.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   227
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   228
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   229
&lt;include&gt; has an optional attribute "ignore_missing=(yes|no)" which
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   230
defaults to "no" if not provided.  This attribute controls whether it is a
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   231
fatal error for the included file to be absent.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   232
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   233
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   234
&lt;includedir&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   235
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   236
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   237
Include all files in &lt;includedir&gt;foo.d&lt;/includedir&gt; at this point.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   238
Files in the directory are included in undefined order.  Only files ending in
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   239
".conf" are included.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   240
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   241
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   242
This is intended to allow extension of the system bus by particular packages.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   243
For example, if CUPS wants to be able to send out notification of printer queue
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   244
changes, it could install a file to /etc/dbus-1/system.d that allowed all apps
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   245
to receive this message and allowed the printer daemon user to send it.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   246
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   247
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   248
&lt;user&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   249
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   250
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   251
The user account the daemon should run as, as either a username or a UID.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   252
If the daemon cannot change to this UID on startup, it will exit.  If this
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   253
element is not present, the daemon will not change or care about its UID.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   254
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   255
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   256
The last &lt;user&gt; entry in the file "wins", the others are ignored.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   257
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   258
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   259
The user is changed after the bus has completed initialization.  So sockets
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   260
etc. will be created before changing user, but no data will be read from
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   261
clients before changing user.  This means that sockets and PID files can be
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   262
created in a location that requires root privileges for writing.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   263
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   264
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   265
&lt;fork&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   266
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   267
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   268
If present, the bus daemon becomes a real daemon (forks into the background,
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   269
etc.).  This is generally used rather than the <option>-fork</option> command
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   270
line option.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   271
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   272
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   273
&lt;listen&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   274
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   275
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   276
Add an address that the bus should listen on. The address is in the standard
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   277
D\-Bus format that contains a transport name plus possible parameters/options.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   278
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   279
<screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   280
     Example: &lt;listen&gt;unix:path=/tmp/foo&lt;/listen&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   281
     Example: &lt;listen&gt;tcp:host=localhost,port=1234&lt;/listen&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   282
</screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   283
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   284
If there are multiple &lt;listen&gt; elements, then the bus listens on multiple
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   285
addresses.  The bus will pass its address to started services or other
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   286
interested parties with the last address given in &lt;listen&gt; first. That
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   287
is, apps will try to connect to the last &lt;listen&gt; address first.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   288
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   289
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   290
tcp sockets can accept IPv4 addresses, IPv6 addresses or hostnames.  If a
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   291
hostname resolves to multiple addresses, the server will bind to all of them.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   292
The family=ipv4 or family=ipv6 options can be used to force it to bind to a
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   293
subset of addresses.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   294
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   295
<screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   296
     Example:
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   297
     &lt;listen&gt;tcp:host=localhost,port=0,family=ipv4&lt;/listen&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   298
</screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   299
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   300
A special case is using a port number of zero (or omitting the port), which
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   301
means to choose an available port selected by the operating system.  The port
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   302
number chosen can be obtained with the <option>-print-address</option> command
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   303
line parameter and will be present in other cases where the server reports its
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   304
own address, such as when DBUS_SESSION_BUS_ADDRESS is set.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   305
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   306
<screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   307
     Example: &lt;listen&gt;tcp:host=localhost,port=0&lt;/listen&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   308
</screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   309
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   310
tcp addresses also allow a bind=hostname option, which will override the host
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   311
option specifying what address to bind to, without changing the address
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   312
reported by the bus.  The bind option can also take a special name '*' to
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   313
cause the bus to listen on all local address (INADDR_ANY). The specified host
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   314
should be a valid name of the local machine or weird stuff will happen.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   315
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   316
<screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   317
     Example: &lt;listen&gt;tcp:host=localhost,bind=*,port=0&lt;/listen&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   318
</screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   319
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   320
&lt;auth&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   321
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   322
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   323
Lists permitted authorization mechanisms.  If this element does not exist, then
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   324
all known mechanisms are allowed.  If there are multiple &lt;auth&gt; elements,
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   325
all the listed mechanisms are allowed.  The order in which mechanisms are
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   326
listed is not meaningful.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   327
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   328
<screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   329
     Example: &lt;auth&gt;EXTERNAL&lt;/auth&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   330
     Example: &lt;auth&gt;DBUS_COOKIE_SHA1&lt;/auth&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   331
</screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   332
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   333
&lt;servicedir&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   334
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   335
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   336
Adds a directory to scan for <filename>.service</filename> files.  Directories
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   337
are scanned starting with the last to appear in the config file (the first
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   338
<filename>.service</filename> file found that provides a particular service
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   339
will be used).
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   340
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   341
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   342
Service files tell the bus how to automatically start a program.  They are
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   343
primarily used with the per-user-session bus, not the systemwide bus.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   344
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   345
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   346
&lt;standard session servicedirs/&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   347
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   348
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   349
&lt;standard_session_servicedirs/&gt; is equivalent to specifying a series of
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   350
&lt;servicedir/&gt; elements for each of the data directories in the "XDG Base
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   351
Directory Specification" with the subdirectory "dbus-1/services", so for
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   352
example "/usr/share/dbus-1/services" would be among the directories searched.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   353
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   354
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   355
The "XDG Base Directory Specification" should be found at
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   356
<literal>http://freedesktop.org/wiki/Standards/basedir-spec</literal>.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   357
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   358
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   359
The &lt;standard_session_servicedirs/&gt; option is only relevant to the
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   360
per-user-session bus daemon defined in
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   361
<filename>/etc/dbus\-1/session.conf</filename>.  Putting it in any other
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   362
configuration file would probably be nonsense.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   363
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   364
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   365
&lt;standard system servicedirs/&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   366
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   367
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   368
&lt;standard_system_servicedirs/&gt; specifies the standard systemwide
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   369
activation directories that should be searched for service files.  This option
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   370
defaults to <filename>/usr/share/dbus-1/system-services</filename>.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   371
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   372
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   373
The &lt;standard_system_servicedirs/&gt; option is only relevant
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   374
to the per-system bus daemon defined in
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   375
<filename>/etc/dbus\-1/system.conf</filename>.  Putting it in any other
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   376
configuration file would probably be nonsense.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   377
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   378
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   379
&lt;servicehelper/&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   380
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   381
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   382
&lt;servicehelper/&gt; specifies the setuid helper that is used to launch
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   383
system daemons with an alternate user.  Typically this would be the
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   384
<command>dbus-daemon-launch-helper</command> executable.  Because the
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   385
systemwide message bus is disabled on Solaris, the
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   386
<command>dbus-daemon-launch-helper</command> executable is not distributed
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   387
with Solaris.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   388
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   389
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   390
The &lt;servicehelper/&gt; option is only relevant to the per-system bus
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   391
daemon defined in <filename>/etc/dbus-1/system.conf</filename>.  Putting it in
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   392
any other configuration file would probably be nonsense.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   393
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   394
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   395
&lt;limit&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   396
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   397
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   398
&lt;limit&gt; establishes a resource limit. For example:
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   399
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   400
<screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   401
       &lt;limit name="max_message_size"&gt;64&lt;/limit&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   402
       &lt;limit name="max_completed_connections"&gt;512&lt;/limit&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   403
</screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   404
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   405
The name attribute is mandatory.  Available limit names are:
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   406
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   407
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   408
<screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   409
    "max_incoming_bytes"             : total size in bytes
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   410
                                       of messages incoming
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   411
                                       from a single
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   412
                                       connection
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   413
    "max_outgoing_bytes"             : total size in bytes
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   414
                                       of messages queued up
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   415
                                       for a single
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   416
                                       connection
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   417
    "max_message_size"               : max size of a single
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   418
                                       message in bytes
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   419
    "service_start_timeout"          : milliseconds
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   420
                                       (thousandths) until
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   421
                                       a started service has
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   422
                                       to connect
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   423
    "auth_timeout"                   : milliseconds
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   424
                                       (thousandths) a
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   425
                                       connection is given
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   426
                                       to authenticate
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   427
    "max_completed_connections"      : max number of
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   428
                                       authenticated
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   429
                                       connections
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   430
    "max_incomplete_connections"     : max number of
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   431
                                       unauthenticated
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   432
                                       connections
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   433
    "max_connections_per_user"       : max number of
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   434
                                       completed connections
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   435
                                       from the same user
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   436
    "max_pending_service_starts"     : max number of service
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   437
                                       launches in progress
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   438
                                       at the same time
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   439
    "max_names_per_connection"       : max number of names a
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   440
                                       single connection can
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   441
                                       own
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   442
    "max_match_rules_per_connection" : max number of match
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   443
                                       rules for a single
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   444
                                       connection
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   445
    "max_replies_per_connection"     : max number of pending
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   446
                                       method replies per
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   447
                                       connection (number of
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   448
                                       calls-in-progress)
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   449
    "reply_timeout"                  : milliseconds
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   450
                                       (thousandths) until a
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   451
                                       method call times out
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   452
</screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   453
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   454
The max incoming/outgoing queue sizes allow a new message to be queued if one
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   455
byte remains below the max.  So you can in fact exceed the max by
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   456
max_message_size.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   457
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   458
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   459
max_completed_connections divided by max_connections_per_user is the number of
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   460
users that can work together to denial-of-service all other users by using up
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   461
all connections on the systemwide bus.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   462
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   463
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   464
Limits are normally only of interest on the systemwide bus, not the user
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   465
session buses.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   466
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   467
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   468
&lt;policy&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   469
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   470
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   471
The &lt;policy&gt; element defines a security policy to be applied to a
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   472
particular set of connections to the bus. A policy is made up of &lt;allow&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   473
and &lt;deny&gt; elements.  Policies are normally used with the systemwide bus;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   474
they are analogous to a firewall in that they allow expected traffic and
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   475
prevent unexpected traffic.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   476
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   477
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   478
The &lt;policy&gt; element has one of three attributes:
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   479
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   480
<itemizedlist>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   481
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   482
context="(default|mandatory)"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   483
</para></listitem>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   484
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   485
user="username or userid"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   486
</para></listitem>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   487
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   488
group="group name or gid"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   489
</para></listitem>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   490
</itemizedlist>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   491
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   492
Policies are applied to a connection as follows:
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   493
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   494
<itemizedlist>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   495
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   496
all context="default" policies are applied
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   497
</para></listitem>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   498
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   499
all group="connection's user's group" policies are applied
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   500
in undefined order
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   501
</para></listitem>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   502
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   503
all user="connection's auth user" policies are applied
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   504
in undefined order
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   505
</para></listitem>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   506
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   507
all context="mandatory" policies are applied
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   508
</para></listitem>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   509
</itemizedlist>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   510
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   511
Policies applied later will override those applied earlier, when the policies
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   512
overlap.  Multiple policies with the same user/group/context are applied in the
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   513
order they appear in the config file.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   514
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   515
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   516
&lt;deny&gt; and &lt;allow&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   517
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   518
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   519
A &lt;deny&gt; element appears below a &lt;policy&gt; element and prohibits
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   520
some action. The &lt;allow&gt; element makes an exception to previous
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   521
&lt;deny&gt; statements, and works just like &lt;deny&gt; but with the inverse
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   522
meaning.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   523
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   524
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   525
The possible attributes of these elements are:
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   526
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   527
<screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   528
        send_interface="interface_name"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   529
        send_member="method_or_signal_name"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   530
        send_error="error_name"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   531
        send_destination="name"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   532
        send_type="method_call" | "method_return" | "signal" | "error"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   533
        send_path="/path/name"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   534
</screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   535
<screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   536
        receive_interface="interface_name"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   537
        receive_member="method_or_signal_name"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   538
        receive_error="error_name"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   539
        receive_sender="name"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   540
        receive_type="method_call" | "method_return" | "signal" | "error"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   541
        receive_path="/path/name"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   542
</screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   543
<screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   544
        send_requested_reply="true" | "false"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   545
        receive_requested_reply="true" | "false"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   546
</screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   547
<screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   548
        eavesdrop="true" | "false"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   549
</screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   550
<screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   551
        own="name"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   552
        user="username"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   553
        group="groupname"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   554
</screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   555
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   556
Examples:
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   557
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   558
<screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   559
        &lt;deny send_interface="org.freedesktop.System" send_member="Reboot"/&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   560
        &lt;deny receive_interface="org.freedesktop.System" receive_member="Reboot"/&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   561
        &lt;deny own="org.freedesktop.System"/&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   562
        &lt;deny send_destination="org.freedesktop.System"/&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   563
        &lt;deny receive_sender="org.freedesktop.System"/&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   564
        &lt;deny user="john"/&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   565
        &lt;deny group="enemies"/&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   566
</screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   567
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   568
The &lt;deny&gt; element's attributes determine whether the deny "matches" a
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   569
particular action.  If it matches, the action is denied (unless later rules in
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   570
the config file allow it).
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   571
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   572
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   573
send_destination and receive_sender rules mean that messages may not be sent to
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   574
or received from the *owner* of the given name, not that they may not be sent
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   575
*to that name*.  That is, if a connection owns services A, B, C, and sending to
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   576
A is denied, sending to B or C will not work either.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   577
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   578
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   579
The other send_* and receive_* attributes are purely textual/by-value matches
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   580
against the given field in the message header.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   581
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   582
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   583
"Eavesdropping" occurs when an application receives a message that was
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   584
explicitly addressed to a name the application does not own, or is a reply to
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   585
such a message. Eavesdropping thus only applies to messages that are addressed
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   586
to services and replies to such messages (i.e. it does not apply to signals).
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   587
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   588
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   589
For &lt;allow&gt;, eavesdrop="true" indicates that the rule matches even when
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   590
eavesdropping. eavesdrop="false" is the default and means that the rule only
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   591
allows messages to go to their specified recipient.  For &lt;deny&gt;,
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   592
eavesdrop="true" indicates that the rule matches only when eavesdropping.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   593
eavesdrop="false" is the default for &lt;deny&gt; also, but here it means that
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   594
the rule applies always, even when not eavesdropping.  The eavesdrop attribute
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   595
can only be combined with send and receive rules (with send_* and receive_*
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   596
attributes).
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   597
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   598
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   599
The [send|receive]_requested_reply attribute works similarly to the eavesdrop
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   600
attribute. It controls whether the &lt;deny&gt; or &lt;allow&gt; matches a
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   601
reply that is expected (corresponds to a previous method call message).  This
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   602
attribute only makes sense for reply messages (errors and method returns), and
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   603
is ignored for other message types.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   604
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   605
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   606
For &lt;allow&gt;, [send|receive]_requested_reply="true" is the default and
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   607
indicates that only requested replies are allowed by the rule.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   608
[send|receive]_requested_reply="false" means that the rule allows any reply
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   609
even if unexpected.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   610
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   611
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   612
For &lt;deny&gt;, [send|receive]_requested_reply="false" is the default but
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   613
indicates that the rule matches only when the reply was not requested.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   614
[send|receive]_requested_reply="true" indicates that the rule applies always,
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   615
regardless of pending reply state.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   616
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   617
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   618
user and group denials mean that the given user or group may not connect to the
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   619
message bus.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   620
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   621
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   622
For "name", "username", "groupname", etc. the character "*" can be substituted,
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   623
meaning "any."  Complex globs like "foo.bar.*" aren't allowed for now because
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   624
they would be work to implement and maybe encourage sloppy security anyway.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   625
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   626
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   627
It does not make sense to deny a user or group inside a &lt;policy&gt; for
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   628
a user or group; user/group denials can only be inside context="default" or
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   629
context="mandatory" policies.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   630
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   631
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   632
A single &lt;deny&gt; rule may specify combinations of attributes such as
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   633
send_destination and send_interface and send_type.  In this case, the denial
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   634
applies only if both attributes match the message being denied. e.g. &lt;deny
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   635
send_interface="foo.bar" send_destination="foo.blah"/&gt; would deny messages
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   636
with the given interface AND the given bus name.  To get an OR effect you
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   637
specify multiple &lt;deny&gt; rules.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   638
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   639
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   640
You can't include both send_ and receive_ attributes on the same rule, since
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   641
"whether the message can be sent" and "whether it can be received" are
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   642
evaluated separately.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   643
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   644
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   645
Be careful with send_interface/receive_interface, because the interface field
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   646
in messages is optional.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   647
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   648
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   649
&lt;selinux&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   650
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   651
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   652
The &lt;selinux&gt; element contains settings related to Security Enhanced
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   653
Linux.  More details below.  Note, SELinux is not supported on Solaris.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   654
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   655
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   656
&lt;associate&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   657
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   658
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   659
An &lt;associate&gt; element appears below an &lt;selinux&gt; element and
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   660
creates a mapping.  Right now only one kind of association is possible:
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   661
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   662
<screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   663
        &lt;associate own="org.freedesktop.Foobar" context="foo_t"/&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   664
</screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   665
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   666
This means that if a connection asks to own the name "org.freedesktop.Foobar"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   667
then the source context will be the context of the connection and the target
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   668
context will be "foo_t" - see the short discussion of SELinux below.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   669
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   670
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   671
Note, the context here is the target context when requesting a name, NOT the
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   672
context of the connection owning the name.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   673
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   674
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   675
There is currently no way to set a default for owning any name, if we add this
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   676
syntax it will look like:
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   677
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   678
<screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   679
        &lt;associate own="*" context="foo_t"/&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   680
</screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   681
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   682
If you find a reason this is useful, let the developers know.  Right now the
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   683
default will be the security context of the bus itself.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   684
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   685
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   686
If two &lt;associate&gt; elements specify the same name, the element appearing
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   687
later in the configuration file will be used.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   688
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   689
</refsect2>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   690
<refsect2>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   691
<title>SELinux</title>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   692
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   693
SELinux is not supported on Solaris.  It is used with the systemwide bus
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   694
which is disabled on Solaris.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   695
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   696
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   697
See <literal>http://www.nsa.gov/selinux/</literal> for full details on SELinux.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   698
Some useful excerpts:
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   699
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   700
<variablelist termlength="xtranarrow">
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   701
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   702
<term></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   703
<listitem>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   704
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   705
Every subject (process) and object (e.g. file, socket, IPC object, etc) in the
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   706
system is assigned a collection of security attributes, known as a security
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   707
context. A security context contains all of the security attributes associated
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   708
with a particular subject or object that are relevant to the security policy.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   709
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   710
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   711
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   712
<term></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   713
<listitem>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   714
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   715
In order to better encapsulate security contexts and to provide greater
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   716
efficiency, the policy enforcement code of SELinux typically handles security
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   717
identifiers (SIDs) rather than security contexts. A SID is an integer that is
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   718
mapped by the security server to a security context at runtime.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   719
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   720
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   721
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   722
<term></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   723
<listitem>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   724
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   725
When a security decision is required, the policy enforcement code passes a pair
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   726
of SIDs (typically the SID of a subject and the SID of an object, but sometimes
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   727
a pair of subject SIDs or a pair of object SIDs), and an object security class
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   728
to the security server. The object security class indicates the kind of object,
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   729
e.g. a process, a regular file, a directory, a TCP socket, etc.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   730
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   731
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   732
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   733
<term></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   734
<listitem>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   735
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   736
Access decisions specify whether or not a permission is granted for a given
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   737
pair of SIDs and class. Each object class has a set of associated permissions
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   738
defined to control operations on objects with that class.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   739
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   740
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   741
</variablelist>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   742
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   743
D\-Bus performs SELinux security checks in two places.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   744
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   745
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   746
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   747
First, any time a message is routed from one connection to another connection,
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   748
the bus daemon will check permissions with the security context of the first
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   749
connection as source, security context of the second connection as target,
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   750
object class "dbus" and requested permission "send_msg".
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   751
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   752
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   753
If a security context is not available for a connection (impossible when using
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   754
UNIX domain sockets), then the target context used is the context of the bus
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   755
daemon itself.  There is currently no way to change this default, because we
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   756
are assuming that only UNIX domain sockets will be used to connect to the
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   757
systemwide bus. If this changes, we'll probably add a way to set the default
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   758
connection context.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   759
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   760
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   761
Second, any time a connection asks to own a name, the bus daemon will check
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   762
permissions with the security context of the connection as source, the security
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   763
context specified for the name in the config file as target, object class
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   764
"dbus" and requested permission "acquire_svc".
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   765
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   766
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   767
The security context for a bus name is specified with the &lt;associate&gt;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   768
element described earlier in this document.  If a name has no security context
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   769
associated in the configuration file, the security context of the bus daemon
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   770
itself will be used.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   771
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   772
</refsect2>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   773
<refsect2>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   774
<title>DEBUGGING</title>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   775
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   776
If you are trying to figure out where your messages are going or why you are
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   777
not getting messages, there are several things you can try.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   778
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   779
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   780
Remember that the system bus is heavily locked down and if you have not
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   781
installed a security policy file to allow your message through, it won't work.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   782
For the session bus, this is not a concern.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   783
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   784
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   785
The simplest way to figure out what's happening on the bus is to run the
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   786
<command>dbus-monitor</command> program, which comes with the D\-Bus package.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   787
You can also send test messages with <command>dbus-send</command>.  These
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   788
programs have their own man pages.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   789
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   790
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   791
If you want to know what the daemon itself is doing, you might consider running
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   792
a separate copy of the daemon to test against. This will allow you to put the
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   793
daemon under a debugger, or run it with verbose output, without messing up your
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   794
real session and system daemons.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   795
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   796
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   797
To run a separate test copy of the daemon, for example you might open a
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   798
terminal and type:
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   799
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   800
<screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   801
       DBUS_VERBOSE=1 &cmd; --session --print-address
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   802
</screen>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   803
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   804
The test daemon address will be printed when the daemon starts. You will need
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   805
to copy-and-paste this address and use it as the value of the
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   806
DBUS_SESSION_BUS_ADDRESS environment variable when you launch the applications
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   807
you want to test.  This will cause those applications to connect to your test
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   808
bus instead of the DBUS_SESSION_BUS_ADDRESS of your real session bus.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   809
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   810
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   811
DBUS_VERBOSE=1 will have NO EFFECT unless your copy of D\-Bus was compiled with
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   812
verbose mode enabled. This is not recommended in production builds due to
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   813
performance impact.  You may need to rebuild D\-Bus if your copy was not built
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   814
with debugging in mind.  (DBUS_VERBOSE also affects the D\-Bus library and thus
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   815
applications using D\-Bus; it may be useful to see verbose output on both the
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   816
client side and from the daemon.)
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   817
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   818
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   819
If you want to get fancy, you can create a custom bus configuration for your
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   820
test bus (see the <filename>session.conf</filename> and 
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   821
<filename>system.conf</filename> files that define the two default
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   822
configurations for example).  This would allow you to specify a different
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   823
directory for <filename>.service</filename> files, for example.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   824
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   825
</refsect2>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   826
</refsect1>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   827
<refsect1 id="dbus-daemon-1-exam"><title>&exam-tt;</title>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   828
<example role="example">
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   829
<title>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   830
Message bus daemon
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   831
</title>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   832
<para><screen>example% <userinput>&cmd; </userinput></screen></para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   833
</example>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   834
</refsect1>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   835
<refsect1 id="dbus-daemon-1-envr"><title>&envr-tt;</title>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   836
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   837
See
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   838
<citerefentry><refentrytitle>environ</refentrytitle><manvolnum>5</manvolnum></ci
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   839
terefentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   840
for descriptions of the following environment variables:
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   841
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   842
<variablelist termlength="wholeline">
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   843
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   844
<term>DBUS_SESSION_BUS_ADDRESS</term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   845
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   846
The address of the login session message bus.  If this variable is not set,
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   847
applications may also try to read the address from the X Window System root
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   848
window property _DBUS_SESSION_BUS_ADDRESS.  The root window property
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   849
must have type STRING.  The environment variable should have precedence over the
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   850
 root window property.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   851
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   852
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   853
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   854
<term>DBUS_VERBOSE</term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   855
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   856
Set DBUS_VERSION=1 to enable debugging, if D\-Bus was compiled with verbose
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   857
debug mode enabled.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   858
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   859
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   860
</variablelist></refsect1>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   861
<refsect1 id="dbus-daemon-1-exit"><title>&exit-tt;</title>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   862
<para>The following exit values are returned:</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   863
<variablelist termlength="xtranarrow">
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   864
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   865
<term><returnvalue>0</returnvalue></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   866
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   867
Application exited successfully
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   868
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   869
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   870
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   871
<term><returnvalue>>0</returnvalue></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   872
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   873
Application exited with failure
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   874
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   875
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   876
</variablelist></refsect1>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   877
<refsect1 id="dbus-daemon-1-file"><title>&file-tt;</title>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   878
<para>The following files are used by this application:</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   879
<variablelist termlength="wholeline">
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   880
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   881
<term><filename>/usr/lib/&cmd;</filename></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   882
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   883
Executable for &cmd;
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   884
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   885
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   886
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   887
<term><filename>/usr/share/dbus-1/services</filename></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   888
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   889
Directory containing standard D\-Bus session services.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   890
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   891
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   892
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   893
<term><filename>/usr/share/dbus-1/system-services</filename></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   894
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   895
Directory containing standard D\-Bus systemwide services.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   896
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   897
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   898
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   899
<term><filename>/etc/dbus-1/session.conf</filename></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   900
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   901
Configuration file for D\-Bus session services.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   902
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   903
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   904
<varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   905
<term><filename>/etc/dbus-1/system.conf</filename></term>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   906
<listitem><para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   907
Configuration file for D\-Bus system services.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   908
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   909
</listitem></varlistentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   910
</variablelist></refsect1>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   911
<refsect1 id="dbus-daemon-1-attr"><title>&attr-tt;</title>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   912
<para>See <olink targetdocent="REFMAN5" localinfo="attributes-5"><citerefentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   913
<refentrytitle>attributes</refentrytitle><manvolnum>5</manvolnum></citerefentry></olink>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   914
for descriptions of the following attributes:</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   915
<informaltable frame="all">
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   916
<tgroup cols="2" colsep="1" rowsep="1"><colspec colname="COLSPEC0" colwidth="1*">
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   917
<colspec colname="COLSPEC1" colwidth="1*">
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   918
<thead>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   919
<row><entry align="center" valign="middle">ATTRIBUTE TYPE</entry><entry align="center"
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   920
valign="middle">ATTRIBUTE VALUE</entry></row>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   921
</thead>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   922
<tbody>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   923
<row><entry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   924
<para>Availability</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   925
</entry><entry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   926
<para>SUNWdbus</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   927
</entry></row><row><entry colname="COLSPEC0">
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   928
<para>Interface stability</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   929
</entry><entry colname="COLSPEC1">
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   930
<para>Volatile</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   931
</entry></row>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   932
</tbody>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   933
</tgroup>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   934
</informaltable>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   935
</refsect1>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   936
<refsect1 id="dbus-daemon-1-also"><title>&also-tt;</title>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   937
<!--Reference to another man page-->
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   938
<!--Reference to a Help manual-->
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   939
<!--Reference to a book.-->
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   940
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   941
<citerefentry><refentrytitle>dbus-cleanup-sockets</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   942
<citerefentry><refentrytitle>dbus-launch</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   943
<citerefentry><refentrytitle>dbus-monitor</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   944
<citerefentry><refentrytitle>dbus-send</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   945
<citerefentry><refentrytitle>dbus-uuidgen</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   946
<citerefentry><refentrytitle>libdbus-glib-1</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   947
<citerefentry><refentrytitle>attributes</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   948
<citerefentry><refentrytitle>environ</refentrytitle><manvolnum>5</manvolnum></citerefentry>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   949
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   950
</refsect1>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   951
<refsect1 id="dbus-daemon-1-note"><title>&note-tt;</title>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   952
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   953
For authorship information refer to
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   954
<literal>http://www.freedesktop.org/software/dbus/doc/AUTHORS</literal>.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   955
Updated by Brian Cameron, Sun Microsystems Inc., 2007.
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   956
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   957
<para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   958
Please send bug reports to the D\-Bus mailing list or bug
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   959
tracker, see
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   960
<literal>http://www.freedesktop.org/software/dbus/</literal>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   961
</para>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   962
</refsect1>
836ff5d12ba2 2008-08-20 Brian Cameron <[email protected]>
yippi
parents:
diff changeset
   963
</refentry>