
"libnm-core/" is rather complicated. It provides a static library that is linked into libnm.so and NetworkManager. It also contains public headers (like "nm-setting.h") which are part of public libnm API. Then we have helper libraries ("libnm-core/nm-libnm-core-*/") which only rely on public API of libnm-core, but are themself static libraries that can be used by anybody who uses libnm-core. And "libnm-core/nm-libnm-core-intern" is used by libnm-core itself. Move "libnm-core/" to "src/". But also split it in different directories so that they have a clearer purpose. The goal is to have a flat directory hierarchy. The "src/libnm-core*/" directories correspond to the different modules (static libraries and set of headers that we have). We have different kinds of such modules because of how we combine various code together. The directory layout now reflects this.
340 lines
14 KiB
XML
340 lines
14 KiB
XML
<?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 Reference Manual</title>
|
|
<releaseinfo>
|
|
for NetworkManager &version;
|
|
The latest version of this documentation can be found on-line at
|
|
<ulink url="https://developer.gnome.org/NetworkManager/stable/">https://developer.gnome.org/NetworkManager/stable/</ulink>.
|
|
</releaseinfo>
|
|
|
|
<copyright>
|
|
<year>2012</year>
|
|
<year>2013</year>
|
|
<year>2014</year>
|
|
<year>2015</year>
|
|
<year>2016</year>
|
|
<year>2017</year>
|
|
<year>2018</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>
|
|
|
|
<abstract>
|
|
<para>
|
|
This manual is the reference documentation for NetworkManager, the standard
|
|
Linux network management service. It is intended for system administrators and
|
|
integrators who need to understand the capabilities of NetworkManager, its
|
|
configuration options, command line tools and the D-Bus API for programmatic
|
|
control of the service.
|
|
</para>
|
|
<para>
|
|
The end users NetworkManager should instead refer to respective documentation
|
|
of their desktop environment of choice.
|
|
</para>
|
|
<para>
|
|
The application developers who prefer not to use the D-Bus API directly can use the
|
|
<ulink url="https://developer.gnome.org/libnm/stable/">libnm</ulink> library
|
|
shipped with NetworkManager or its bindings to a higher level language such as
|
|
Python, Ruby or Vala via GObject introspection.
|
|
</para>
|
|
</abstract>
|
|
</bookinfo>
|
|
|
|
<part id="manpages">
|
|
<title>Manual Pages</title>
|
|
<xi:include href="../../man/NetworkManager.xml"/>
|
|
<xi:include href="../../man/NetworkManager.conf.xml"/>
|
|
<xi:include href="../../man/nmcli.xml"/>
|
|
<xi:include href="../../man/nmcli-examples.xml"/>
|
|
<xi:include href="../../man/nmtui.xml"/>
|
|
<xi:include href="../../man/nm-settings-dbus.xml"><xi:fallback /></xi:include>
|
|
<xi:include href="../../man/nm-settings-nmcli.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>
|
|
<xi:include href="../../man/nm-online.xml"/>
|
|
<xi:include href="../../man/nm-initrd-generator.xml"/>
|
|
<xi:include href="../../man/nm-cloud-setup.xml"><xi:fallback /></xi:include>
|
|
<xi:include href="../../man/nm-openvswitch.xml"><xi:fallback /></xi:include>
|
|
</part>
|
|
|
|
<part 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>
|
|
<chapter>
|
|
<title>Configuration Settings</title>
|
|
<note><para>
|
|
(NetworkManager was built without full introspection support. Setting
|
|
documentation is not available.)
|
|
</para></note>
|
|
</chapter>
|
|
</xi:fallback>
|
|
</xi:include>
|
|
<chapter 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>
|
|
</chapter>
|
|
</part>
|
|
|
|
<part id="spec">
|
|
<title id="dbus-interfaces">D-Bus API Reference</title>
|
|
|
|
<para>
|
|
This part documents the D-Bus interface used to access the
|
|
NetworkManager daemon.
|
|
</para>
|
|
|
|
<chapter id="ref-dbus-manager">
|
|
<title>The <literal>/org/freedesktop/NetworkManager</literal> object</title>
|
|
<!-- TODO: Describe the object here -->
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.xml"/>
|
|
</chapter>
|
|
|
|
<chapter id="ref-dbus-agent-manager">
|
|
<title>The <literal>/org/freedesktop/NetworkManager/AgentManager</literal> object</title>
|
|
<!-- TODO: Describe the object here -->
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.AgentManager.xml"/>
|
|
</chapter>
|
|
|
|
<chapter id="ref-dbus-dns-manager">
|
|
<title>The <literal>/org/freedesktop/NetworkManager/DnsManager</literal> object</title>
|
|
<!-- TODO: Describe the object here -->
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.DnsManager.xml"/>
|
|
</chapter>
|
|
|
|
<chapter id="ref-dbus-settings-manager">
|
|
<title>The <literal>/org/freedesktop/NetworkManager/Settings</literal> object</title>
|
|
<!-- TODO: Describe the object here -->
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Settings.xml"/>
|
|
</chapter>
|
|
|
|
<chapter id="ref-dbus-settings">
|
|
<title>The <literal>/org/freedesktop/NetworkManager/Settings/*</literal> objects</title>
|
|
<!-- TODO: Describe the objects here -->
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Settings.Connection.xml"/>
|
|
</chapter>
|
|
|
|
<chapter id="ref-dbus-devices">
|
|
<title>The <literal>/org/freedesktop/NetworkManager/Devices/*</literal> objects</title>
|
|
<!-- TODO: Describe the objects here -->
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Statistics.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Adsl.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Bluetooth.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Bond.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Bridge.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Dummy.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Generic.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.IPTunnel.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Infiniband.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Lowpan.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Macsec.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Macvlan.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Modem.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.OlpcMesh.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.OvsBridge.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.OvsInterface.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.OvsPort.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Ppp.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Team.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Tun.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Veth.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Vlan.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Vrf.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Vxlan.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.WifiP2P.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.WireGuard.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Wired.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Wireless.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Device.Wpan.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.PPP.xml"/>
|
|
</chapter>
|
|
|
|
<chapter id="ref-dbus-active-connections">
|
|
<title>The <literal>/org/freedesktop/NetworkManager/ActiveConnection/*</literal> objects</title>
|
|
<!-- TODO: Describe the objects here -->
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Connection.Active.xml"/>
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.VPN.Connection.xml"/>
|
|
</chapter>
|
|
|
|
<chapter id="ref-dbus-ip4-configs">
|
|
<title>The <literal>/org/freedesktop/NetworkManager/IP4Config/*</literal> objects</title>
|
|
<!-- TODO: Describe the objects here -->
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.IP4Config.xml"/>
|
|
</chapter>
|
|
|
|
<chapter id="ref-dbus-ip6-configs">
|
|
<title>The <literal>/org/freedesktop/NetworkManager/IP6Config/*</literal> objects</title>
|
|
<!-- TODO: Describe the objects here -->
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.IP6Config.xml"/>
|
|
</chapter>
|
|
|
|
<chapter id="ref-dbus-dhcp4-configs">
|
|
<title>The <literal>/org/freedesktop/NetworkManager/DHCP4Config/*</literal> objects</title>
|
|
<!-- TODO: Describe the objects here -->
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.DHCP4Config.xml"/>
|
|
</chapter>
|
|
|
|
<chapter id="ref-dbus-dhcp6-configs">
|
|
<title>The <literal>/org/freedesktop/NetworkManager/DHCP4Config/*</literal> objects</title>
|
|
<!-- TODO: Describe the objects here -->
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.DHCP6Config.xml"/>
|
|
</chapter>
|
|
|
|
<chapter id="ref-dbus-access-points">
|
|
<title>The <literal>/org/freedesktop/NetworkManager/AccessPoint/*</literal> objects</title>
|
|
<!-- TODO: Describe the objects here -->
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.AccessPoint.xml"/>
|
|
</chapter>
|
|
|
|
<chapter id="ref-dbus-wifi-p2p-peers">
|
|
<title>The <literal>/org.freedesktop.NetworkManager.WifiP2PPeer/*</literal> objects</title>
|
|
<!-- TODO: Describe the objects here -->
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.WifiP2PPeer.xml"/>
|
|
</chapter>
|
|
|
|
<chapter id="ref-dbus-checkpoint">
|
|
<title>The <literal>/org/freedesktop/NetworkManager/Checkpoint/*</literal> objects</title>
|
|
<!-- TODO: Describe the objects here -->
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.Checkpoint.xml"/>
|
|
</chapter>
|
|
|
|
<chapter id="dbus-types">
|
|
<title>Types</title>
|
|
<xi:include href="../../src/libnm-core-public/nm-dbus-types.xml"/>
|
|
</chapter>
|
|
</part>
|
|
|
|
<part id="secret-agents">
|
|
<title>Secret Agent D-Bus API Reference</title>
|
|
|
|
<chapter id="dbus-secret-agent">
|
|
<title>Secret agents</title>
|
|
<!-- TODO: Describe the secret agent here -->
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.SecretAgent.xml"/>
|
|
</chapter>
|
|
</part>
|
|
|
|
<part id="vpn-plugins">
|
|
<title>VPN Plugin D-Bus API Reference</title>
|
|
|
|
<chapter id="dbus-vpn-plugin">
|
|
<title>VPN services</title>
|
|
<!-- TODO: Describe the VPN services here -->
|
|
<xi:include href="dbus-org.freedesktop.NetworkManager.VPN.Plugin.xml"/>
|
|
</chapter>
|
|
<chapter id="dbus-vpn-types">
|
|
<title>Types</title>
|
|
<xi:include href="../../src/libnm-core-public/nm-vpn-dbus-types.xml"/>
|
|
</chapter>
|
|
</part>
|
|
|
|
<index>
|
|
<title>Index</title>
|
|
</index>
|
|
|
|
<!-- License -->
|
|
<appendix id="license">
|
|
<title>License</title>
|
|
|
|
<para>
|
|
This program is free software; you can redistribute
|
|
it and/or modify it under the terms of the <citetitle>GNU
|
|
General Public License</citetitle> as published by the Free
|
|
Software Foundation; either version 2 of the License, or
|
|
(at your option) any later version.
|
|
</para>
|
|
|
|
<para>
|
|
This program is distributed in the hope that it will
|
|
be useful, but WITHOUT ANY WARRANTY; without even the
|
|
implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
PARTICULAR PURPOSE. See the GNU General Public License for
|
|
more details.
|
|
</para>
|
|
|
|
<para>
|
|
You should have received a copy of the <citetitle>GNU
|
|
General Public License</citetitle> along with this program;
|
|
if not, write to the
|
|
<address>
|
|
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>
|
|
|
|
<para>
|
|
A copy of the <citetitle>GNU General Public License</citetitle>
|
|
can also be obtained from the <ulink url="https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html">
|
|
GNU web site</ulink>.
|
|
</para>
|
|
</appendix>
|
|
</book>
|
|
|