summaryrefslogtreecommitdiff
path: root/docs/api/network-manager-docs.xml
blob: ea08e9f85d8fc9067c3d55b714b07faf5de81dd8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
<?xml version="1.0"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
               "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
<!ENTITY version SYSTEM "version.xml">
]>
<book id="index" xmlns:xi="http://www.w3.org/2003/XInclude">
  <bookinfo>
    <title>NetworkManager D-Bus API Reference Manual</title>
    <releaseinfo>Version &version;</releaseinfo>

    <copyright>
      <year>2012</year>
      <year>2016</year>
      <holder>The NetworkManager Authors</holder>
    </copyright>

    <legalnotice>
      <para>
	Permission is granted to copy, distribute and/or modify this
	document under the terms of the <citetitle>GNU Free
	Documentation License</citetitle>, Version 1.1 or any later
	version published by the Free Software Foundation with no
	Invariant Sections, no Front-Cover Texts, and no Back-Cover
	Texts. You may obtain a copy of the <citetitle>GNU Free
	Documentation License</citetitle> from the Free Software
	Foundation by visiting <ulink type="http"
	url="http://www.fsf.org">their Web site</ulink> or by writing
	to:

	<address>
	  The Free Software Foundation, Inc.,
	  <street>51 Franklin Street</street> - Fifth Floor,
	  <city>Boston</city>, <state>MA</state> <postcode>02110-1301</postcode>,
	  <country>USA</country>
	</address>
      </para>
    </legalnotice>
  </bookinfo>

  <chapter id="spec">
    <title>D-Bus API Reference</title>

    <para>
      This part documents the D-Bus interface used to access the
      NetworkManager daemon.
    </para>

    <section id="dbus-interfaces">
      <title>Interfaces</title>
      <!-- TODO: Split me into chapters about daemon, vpn plugins, dispatcher and the secret agent.
                    Then describe the daemon's singletons and object hierarchy. -->
      <xi:include href="../../introspection/nmdbus-manager-org.freedesktop.NetworkManager.xml"/>
      <xi:include href="../../introspection/nmdbus-settings-org.freedesktop.NetworkManager.Settings.xml"/>
      <xi:include href="../../introspection/nmdbus-agent-manager-org.freedesktop.NetworkManager.AgentManager.xml"/>
      <xi:include href="../../introspection/nmdbus-access-point-org.freedesktop.NetworkManager.AccessPoint.xml"/>
      <xi:include href="../../introspection/nmdbus-ppp-manager-org.freedesktop.NetworkManager.PPP.xml"/>
      <xi:include href="../../introspection/nmdbus-settings-connection-org.freedesktop.NetworkManager.Settings.Connection.xml"/>
      <xi:include href="../../introspection/nmdbus-vpn-connection-org.freedesktop.NetworkManager.VPN.Connection.xml"/>
      <xi:include href="../../introspection/nmdbus-active-connection-org.freedesktop.NetworkManager.Connection.Active.xml"/>
      <xi:include href="../../introspection/nmdbus-device-org.freedesktop.NetworkManager.Device.xml"/>
      <xi:include href="../../introspection/nmdbus-device-adsl-org.freedesktop.NetworkManager.Device.Adsl.xml"/>
      <xi:include href="../../introspection/nmdbus-device-bond-org.freedesktop.NetworkManager.Device.Bond.xml"/>
      <xi:include href="../../introspection/nmdbus-device-bridge-org.freedesktop.NetworkManager.Device.Bridge.xml"/>
      <xi:include href="../../introspection/nmdbus-device-bt-org.freedesktop.NetworkManager.Device.Bluetooth.xml"/>
      <xi:include href="../../introspection/nmdbus-device-ethernet-org.freedesktop.NetworkManager.Device.Wired.xml"/>
      <xi:include href="../../introspection/nmdbus-device-generic-org.freedesktop.NetworkManager.Device.Generic.xml"/>
      <xi:include href="../../introspection/nmdbus-device-infiniband-org.freedesktop.NetworkManager.Device.Infiniband.xml"/>
      <xi:include href="../../introspection/nmdbus-device-ip-tunnel-org.freedesktop.NetworkManager.Device.IPTunnel.xml"/>
      <xi:include href="../../introspection/nmdbus-device-macvlan-org.freedesktop.NetworkManager.Device.Macvlan.xml"/>
      <xi:include href="../../introspection/nmdbus-device-modem-org.freedesktop.NetworkManager.Device.Modem.xml"/>
      <xi:include href="../../introspection/nmdbus-device-olpc-mesh-org.freedesktop.NetworkManager.Device.OlpcMesh.xml"/>
      <xi:include href="../../introspection/nmdbus-device-team-org.freedesktop.NetworkManager.Device.Team.xml"/>
      <xi:include href="../../introspection/nmdbus-device-tun-org.freedesktop.NetworkManager.Device.Tun.xml"/>
      <xi:include href="../../introspection/nmdbus-device-veth-org.freedesktop.NetworkManager.Device.Veth.xml"/>
      <xi:include href="../../introspection/nmdbus-device-vlan-org.freedesktop.NetworkManager.Device.Vlan.xml"/>
      <xi:include href="../../introspection/nmdbus-device-vxlan-org.freedesktop.NetworkManager.Device.Vxlan.xml"/>
      <xi:include href="../../introspection/nmdbus-device-wifi-org.freedesktop.NetworkManager.Device.Wireless.xml"/>
      <xi:include href="../../introspection/nmdbus-device-wimax-org.freedesktop.NetworkManager.Device.WiMax.xml"/>
      <xi:include href="../../introspection/nmdbus-dhcp4-config-org.freedesktop.NetworkManager.DHCP4Config.xml"/>
      <xi:include href="../../introspection/nmdbus-dhcp6-config-org.freedesktop.NetworkManager.DHCP6Config.xml"/>
      <xi:include href="../../introspection/nmdbus-ip4-config-org.freedesktop.NetworkManager.IP4Config.xml"/>
      <xi:include href="../../introspection/nmdbus-ip6-config-org.freedesktop.NetworkManager.IP6Config.xml"/>
      <xi:include href="../../introspection/nmdbus-vpn-plugin-org.freedesktop.NetworkManager.VPN.Plugin.xml"/>
      <xi:include href="../../introspection/nmdbus-secret-agent-org.freedesktop.NetworkManager.SecretAgent.xml"/>
    </section>
  </chapter>

  <chapter id="ref-settings">
    <title>Network Configuration Setting Specification</title>
    <para>
      This part documents the properties and value types of each "Setting"
      object that composes the basic unit of NetworkManager configuration,
      the "Connection".  Each Connection object is simply a dictionary mapping
      setting names (like "802-3-ethernet" or "bluetooth") to a dictionary of
      key/value pairs that represents each itself.
    </para>
    <xi:include href="settings-spec.xml">
      <xi:fallback>
	<section>
	  <title>Configuration Settings</title>
	  <note><para>
	    (NetworkManager was built without full introspection support. Setting
	    documentation is not available.)
	  </para></note>
	</section>
      </xi:fallback>
    </xi:include>
    <section id="secrets-flags">
      <title>Secret flag types</title>
      <para>
        Each secret property in a setting has an associated "flags" property
        that describes how to handle that secret.  The "flags" property is a
        bitfield that contains zero or more of the following values logically
        OR-ed together.
      </para>
      <para>
        <itemizedlist>
          <listitem>
            <literal>0x0 (none)</literal> - the system is responsible for providing
            and storing this secret.
          </listitem>
          <listitem>
            <literal>0x1 (agent-owned)</literal> - a user-session secret agent
            is responsible for providing and storing this secret; when it is
            required, agents will be asked to provide it.
          </listitem>
          <listitem>
            <literal>0x2 (not-saved)</literal> - this secret should not be saved
            but should be requested from the user each time it is required. This
            flag should be used for One-Time-Pad secrets, PIN codes from
            hardware tokens, or if the user simply does not want to save the
            secret.
          </listitem>
          <listitem>
            <literal>0x4 (not-required)</literal> - in some situations it cannot
            be automatically determined that a secret is required or not.  This
            flag hints that the secret is not required and should not be
            requested from the user.
          </listitem>
        </itemizedlist>
      </para>
    </section>
  </chapter>

  <chapter id="manpages">
    <title>UNIX Manual Pages</title>
    <xi:include href="../../man/nmcli.xml"/>
    <xi:include href="../../man/nmtui.xml"/>
    <xi:include href="../../man/NetworkManager.xml"/>
    <xi:include href="../../man/NetworkManager.conf.xml"/>
    <xi:include href="../../man/nmcli-examples.xml"/>
    <xi:include href="../../man/nm-settings.xml"><xi:fallback /></xi:include>
    <xi:include href="../../man/nm-settings-keyfile.xml"><xi:fallback /></xi:include>
    <xi:include href="../../man/nm-settings-ifcfg-rh.xml"><xi:fallback /></xi:include>
  </chapter>


  <index>
    <title>Index</title>
  </index>

  <!-- License -->

  <appendix id="license">
    <title>License</title>
    <para>
<programlisting><xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="../../COPYING" parse="text"><xi:fallback>FIXME: MISSING XINCLUDE CONTENT</xi:fallback></xi:include></programlisting>
    </para>
  </appendix>
</book>