merge: branch 'lr/unbreak-gir'

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1451
This commit is contained in:
Lubomir Rintel 2022-11-11 16:08:17 +01:00
commit 777f31436c
80 changed files with 460 additions and 201 deletions

View file

@ -1984,10 +1984,7 @@ EXTRA_DIST += \
src/libnm-client-impl/libnm.pc.in \
src/libnm-client-impl/libnm.ver
src_libnm_client_impl_NM_1_0_typelib =
if HAVE_INTROSPECTION
src_libnm_client_impl_NM_1_0_typelib += src/libnm-client-impl/NM-1.0.typelib
###############################################################################
src/libnm-client-impl/NM-1.0.gir: src/libnm-client-impl/libnm.la
src_libnm_client_impl_NM_1_0_gir_INCLUDES = Gio-2.0
@ -2012,7 +2009,6 @@ src_libnm_client_impl_NM_1_0_gir_SCANNERFLAGS = --warn-all --identifier-prefix=N
src/libnm-client-impl/libnm.typelib: src/libnm-client-impl/libnm.gir
$(INTROSPECTION_COMPILER) --includedir=$(srcdir)/src/libnm-core-public --includedir=$(builddir)/src/libnm-core-public --includedir=$(srcdir)/libnm-client-public --includedir=$(builddir)/libnm-client-public $< -o $@
INTROSPECTION_GIRS += src/libnm-client-impl/NM-1.0.gir
libnm_noinst_data = \
src/libnm-core-impl/gen-metadata-nm-settings-libnm-core.xml \
@ -2027,9 +2023,21 @@ libnm_noinst_data = \
src/libnmc-setting/settings-docs-input.xml \
$(NULL)
if HAVE_INTROSPECTION
INTROSPECTION_GIRS += src/libnm-client-impl/NM-1.0.gir
noinst_DATA += $(libnm_noinst_data)
DISTCLEANFILES += $(libnm_noinst_data)
EXTRA_DIST += src/nmcli/gen-metadata-nm-settings-nmcli.xml.in
EXTRA_DIST += \
src/nmcli/gen-metadata-nm-settings-nmcli.xml.in \
src/libnm-core-impl/gen-metadata-nm-settings-libnm-core.xml.in
src_libnm_client_impl_NM_1_0_typelib = src/libnm-client-impl/NM-1.0.typelib
else
src_libnm_client_impl_NM_1_0_typelib =
endif
###############################################################################
if BUILD_DOCS
src/nmcli/gen-metadata-nm-settings-nmcli.xml: src/nmcli/gen-metadata-nm-settings-nmcli
@ -2038,15 +2046,7 @@ check-local-gen-metadata-nm-settings-nmcli: src/nmcli/gen-metadata-nm-settings-n
$(srcdir)/tools/check-compare-generated.sh "$(srcdir)/src/nmcli/gen-metadata-nm-settings-nmcli.xml.in" "$(builddir)/src/nmcli/gen-metadata-nm-settings-nmcli.xml"
check_local += check-local-gen-metadata-nm-settings-nmcli
DISTCLEANFILES += src/nmcli/gen-metadata-nm-settings-nmcli.xml
else
src/nmcli/gen-metadata-nm-settings-nmcli.xml: src/nmcli/gen-metadata-nm-settings-nmcli.xml.in
$(AM_V_GEN) cp $^ $@
check-local-gen-metadata-nm-settings-nmcli:
endif
EXTRA_DIST += src/libnm-core-impl/gen-metadata-nm-settings-libnm-core.xml.in
if BUILD_DOCS
src/libnm-core-impl/gen-metadata-nm-settings-libnm-core.xml: src/libnm-core-impl/gen-metadata-nm-settings-libnm-core
$(AM_V_GEN) src/libnm-core-impl/gen-metadata-nm-settings-libnm-core > "$@"
check-local-gen-metadata-nm-settings-libnm-core: src/libnm-core-impl/gen-metadata-nm-settings-libnm-core.xml
@ -2054,6 +2054,10 @@ check-local-gen-metadata-nm-settings-libnm-core: src/libnm-core-impl/gen-metadat
check_local += check-local-gen-metadata-nm-settings-libnm-core
DISTCLEANFILES += src/libnm-core-impl/gen-metadata-nm-settings-libnm-core.xml
else
src/nmcli/gen-metadata-nm-settings-nmcli.xml: src/nmcli/gen-metadata-nm-settings-nmcli.xml.in
$(AM_V_GEN) cp $^ $@
check-local-gen-metadata-nm-settings-nmcli:
src/libnm-core-impl/gen-metadata-nm-settings-libnm-core.xml: src/libnm-core-impl/gen-metadata-nm-settings-libnm-core.xml.in
$(AM_V_GEN) cp $^ $@
check-local-gen-metadata-nm-settings-libnm-core:
@ -2088,10 +2092,6 @@ src/libnmc-setting/settings-docs-input.xml: src/libnm-client-impl/nm-property-in
man/nm-settings-docs-%.xml: src/libnm-client-impl/nm-property-infos-%.xml src/libnm-client-impl/nm-settings-docs-gir.xml tools/generate-docs-nm-settings-docs-merge.py man/common.ent
$(AM_V_GEN) "$(PYTHON)" $(srcdir)/tools/generate-docs-nm-settings-docs-merge.py $@ $(wordlist 1,2,$^)
EXTRA_DIST += $(libnm_noinst_data)
DISTCLEANFILES += $(libnm_noinst_data)
endif
EXTRA_DIST += \
tools/generate-docs-nm-property-infos.py \
@ -2109,8 +2109,16 @@ src_libnm_client_impl_tests_programs_req_introspection = \
src/libnm-client-impl/tests/test-remote-settings-client \
src/libnm-client-impl/tests/test-secret-agent
check-local-libnm-gir: $(builddir)/src/libnm-client-impl/NM-1.0.gir
check-local-libnm-gir: $(srcdir)/src/libnm-client-impl/libnm.ver
check-local-libnm-gir:
"$(PYTHON)" $(srcdir)/src/libnm-client-impl/tests/test-gir.py \
--gir $(builddir)/src/libnm-client-impl/NM-1.0.gir \
--ver $(srcdir)/src/libnm-client-impl/libnm.ver
if HAVE_INTROSPECTION
check_programs += $(src_libnm_client_impl_tests_programs_req_introspection)
check_local += check-local-libnm-gir
else
check_programs_norun += $(src_libnm_client_impl_tests_programs_req_introspection)
endif
@ -2164,7 +2172,8 @@ $(src_libnm_client_impl_tests_test_remote_settings_client_OBJECTS): $(src_libnm_
$(src_libnm_client_impl_tests_test_secret_agent_OBJECTS): $(src_libnm_client_impl_NM_1_0_typelib)
EXTRA_DIST += \
src/libnm-client-impl/tests/meson.build
src/libnm-client-impl/tests/meson.build \
src/libnm-client-impl/tests/test-gir.py
###############################################################################

View file

@ -2,25 +2,12 @@ AUTOMAKE_OPTIONS = 1.7
XSLTPROC = xsltproc --xinclude --nonet
XMLS = $(wildcard $(top_srcdir)/introspection/nm-*.xml)
GENERATED_FILES =
if BUILD_DOCS
settings-spec.xml: settings-spec.xsl $(top_builddir)/man/nm-settings-docs-dbus.xml
$(AM_V_GEN) (! test -f $@ || chmod u+w $@) && xsltproc --output $@ $^
# Top-level SGML file includes (depends on) settings-spec.xml
$(DOC_MAIN_SGML_FILE): settings-spec.xml
GENERATED_FILES += settings-spec.xml
all: $(GENERATED_FILES)
endif
####################################
# The name of the module.
DOC_MODULE=NetworkManager
@ -130,7 +117,8 @@ setup-build.stamp:
fi
$(AM_V_at)touch setup-build.stamp
####################################
settings-spec.xml: settings-spec.xsl $(top_builddir)/man/nm-settings-docs-dbus.xml
$(AM_V_GEN) (! test -f $@ || chmod u+w $@) && xsltproc --output $@ $^
EXTRA_DIST += \
version.xml.in \

View file

@ -1845,11 +1845,44 @@ global:
nm_setting_ip6_config_get_mtu;
} libnm_1_38_0;
libnm_1_40_4 {
global:
nm_device_6lowpan_get_parent;
nm_device_macsec_get_parent;
nm_device_veth_get_peer;
nm_device_vxlan_get_carrier;
nm_device_vxlan_get_rsc;
nm_device_wifi_p2p_get_peer_by_path;
nm_setting_6lowpan_get_parent;
nm_setting_6lowpan_new;
nm_setting_connection_get_mptcp_flags;
nm_setting_hostname_new;
nm_setting_ip4_config_get_link_local;
nm_setting_ip_config_get_dhcp_iaid;
nm_setting_ip_tunnel_get_encapsulation_limit;
nm_setting_ip_tunnel_get_flow_label;
nm_setting_ovs_bridge_get_datapath_type;
nm_setting_vpn_get_persistent;
nm_setting_wpan_get_channel;
nm_setting_wpan_get_mac_address;
nm_setting_wpan_get_page;
nm_setting_wpan_get_pan_id;
nm_setting_wpan_get_short_address;
nm_setting_wpan_new;
nm_sriov_vf_attribute_validate;
nm_tc_tfilter_get_action;
nm_tc_tfilter_set_action;
nm_utils_ip_addresses_from_variant;
nm_utils_ip_addresses_to_variant;
nm_utils_ip_routes_from_variant;
nm_utils_ip_routes_to_variant;
nm_vpn_plugin_info_supports_multiple;
} libnm_1_40_0;
libnm_1_42_0 {
global:
nm_client_wait_shutdown;
nm_client_wait_shutdown_finish;
nm_setting_ip_config_get_dhcp_iaid;
nm_setting_ovs_interface_get_ofport_request;
nm_utils_ensure_gtypes;
} libnm_1_40_0;

View file

@ -236,5 +236,4 @@ if enable_introspection
],
depends: libnm_gir,
)
endif

View file

@ -5396,6 +5396,8 @@ nm_client_add_and_activate_connection2(NMClient *client,
*
* Returns: (transfer full): the new #NMActiveConnection on success, %NULL on
* failure, in which case @error will be set.
*
* Since: 1.16
**/
NMActiveConnection *
nm_client_add_and_activate_connection2_finish(NMClient *client,
@ -9115,7 +9117,7 @@ nm_client_wait_shutdown(NMClient *client,
* Returns: %TRUE if waiting is complete successfully. In that case, all resources of the
* nmclient are wrapped up and released. This can only fail by user cancellation.
*
* Since: 1.42.
* Since: 1.42
*/
gboolean
nm_client_wait_shutdown_finish(GAsyncResult *result, GError **error)

View file

@ -39,7 +39,7 @@ G_DEFINE_TYPE(NMDevice6Lowpan, nm_device_6lowpan, NM_TYPE_DEVICE)
*
* Returns: (transfer none): the device's parent device
*
* Since: 1.14
* Since: 1.42
**/
NMDevice *
nm_device_6lowpan_get_parent(NMDevice6Lowpan *device)
@ -49,27 +49,6 @@ nm_device_6lowpan_get_parent(NMDevice6Lowpan *device)
return nml_dbus_property_o_get_obj(&NM_DEVICE_6LOWPAN_GET_PRIVATE(device)->parent);
}
/**
* nm_device_6lowpan_get_hw_address: (skip)
* @device: a #NMDevice6Lowpan
*
* Gets the hardware (MAC) address of the #NMDevice6Lowpan
*
* Returns: the hardware address. This is the internal string used by the
* device, and must not be modified.
*
* Since: 1.14
*
* Deprecated: 1.24: Use nm_device_get_hw_address() instead.
**/
const char *
nm_device_6lowpan_get_hw_address(NMDevice6Lowpan *device)
{
g_return_val_if_fail(NM_IS_DEVICE_6LOWPAN(device), NULL);
return nm_device_get_hw_address(NM_DEVICE(device));
}
/*****************************************************************************/
static void

View file

@ -65,7 +65,7 @@ G_DEFINE_TYPE(NMDeviceMacsec, nm_device_macsec, NM_TYPE_DEVICE)
*
* Returns: (transfer none): the device's parent device
*
* Since: 1.6
* Since: 1.42
**/
NMDevice *
nm_device_macsec_get_parent(NMDeviceMacsec *device)

View file

@ -124,7 +124,7 @@ nm_device_tun_get_group(NMDeviceTun *device)
}
/**
* nm_device_tun_get_pi:
* nm_device_tun_get_no_pi:
* @device: a #NMDeviceTun
*
* Returns whether the #NMDeviceTun has the IFF_NO_PI flag.

View file

@ -44,7 +44,7 @@ G_DEFINE_TYPE(NMDeviceVeth, nm_device_veth, NM_TYPE_DEVICE_ETHERNET)
*
* Returns: (transfer none): the device's peer device
*
* Since: 1.30
* Since: 1.42
**/
NMDevice *
nm_device_veth_get_peer(NMDeviceVeth *device)

View file

@ -99,7 +99,7 @@ nm_device_vxlan_get_hw_address(NMDeviceVxlan *device)
* This property is not implemented yet, and the function always returns
* FALSE.
*
* Since: 1.2
* Since: 1.42
**/
gboolean
nm_device_vxlan_get_carrier(NMDeviceVxlan *device)
@ -325,7 +325,7 @@ nm_device_vxlan_get_proxy(NMDeviceVxlan *device)
*
* Returns: whether route short circuit is turned on
*
* Since: 1.2
* Since: 1.42
**/
gboolean
nm_device_vxlan_get_rsc(NMDeviceVxlan *device)

View file

@ -100,7 +100,7 @@ nm_device_wifi_p2p_get_peers(NMDeviceWifiP2P *device)
*
* Returns: (transfer none): the peer or %NULL if none is found.
*
* Since: 1.16
* Since: 1.42
**/
NMWifiP2PPeer *
nm_device_wifi_p2p_get_peer_by_path(NMDeviceWifiP2P *device, const char *path)

View file

@ -24,25 +24,6 @@ struct _NMDeviceWpanClass {
G_DEFINE_TYPE(NMDeviceWpan, nm_device_wpan, NM_TYPE_DEVICE)
/*****************************************************************************/
/**
* nm_device_wpan_get_hw_address: (skip)
* @device: a #NMDeviceWpan
*
* Gets the active hardware (MAC) address of the #NMDeviceWpan
*
* Returns: the active hardware address. This is the internal string used by the
* device, and must not be modified.
*
* Deprecated: 1.24: Use nm_device_get_hw_address() instead.
**/
const char *
nm_device_wpan_get_hw_address(NMDeviceWpan *device)
{
g_return_val_if_fail(NM_IS_DEVICE_WPAN(device), NULL);
return nm_device_get_hw_address(NM_DEVICE(device));
}
static gboolean
connection_compatible(NMDevice *device, NMConnection *connection, GError **error)
{

View file

@ -125,6 +125,8 @@ nm_remote_connection_update2(NMRemoteConnection *connection,
*
* Returns: (transfer full): on success, a #GVariant of type "a{sv}" with the result. On failure,
* %NULL.
*
* Since: 1.12
**/
GVariant *
nm_remote_connection_update2_finish(NMRemoteConnection *connection,

View file

@ -281,13 +281,8 @@ schedule_fail_stop(NMVpnPluginOld *plugin, guint timeout_secs)
priv->fail_stop_id = g_idle_add(fail_stop, plugin);
}
/**
* nm_vpn_plugin_old_set_config:
*
* Deprecated: 1.2: Replaced by NMVpnServicePlugin.
*/
void
nm_vpn_plugin_old_set_config(NMVpnPluginOld *plugin, GVariant *config)
static void
set_config(NMVpnPluginOld *plugin, GVariant *config)
{
NMVpnPluginOldPrivate *priv = NM_VPN_PLUGIN_OLD_GET_PRIVATE(plugin);
@ -382,13 +377,8 @@ nm_vpn_plugin_old_set_ip4_config(NMVpnPluginOld *plugin, GVariant *ip4_config)
nm_vpn_plugin_old_set_state(plugin, NM_VPN_SERVICE_STATE_STARTED);
}
/**
* nm_vpn_plugin_old_set_ip6_config:
*
* Deprecated: 1.2: Replaced by NMVpnServicePlugin.
*/
void
nm_vpn_plugin_old_set_ip6_config(NMVpnPluginOld *plugin, GVariant *ip6_config)
static void
set_ip6_config(NMVpnPluginOld *plugin, GVariant *ip6_config)
{
NMVpnPluginOldPrivate *priv = NM_VPN_PLUGIN_OLD_GET_PRIVATE(plugin);
@ -721,7 +711,7 @@ impl_vpn_plugin_old_set_config(NMVpnPluginOld *plugin,
GVariant *config,
gpointer user_data)
{
nm_vpn_plugin_old_set_config(plugin, config);
set_config(plugin, config);
g_dbus_method_invocation_return_value(context, NULL);
}
@ -741,7 +731,7 @@ impl_vpn_plugin_old_set_ip6_config(NMVpnPluginOld *plugin,
GVariant *config,
gpointer user_data)
{
nm_vpn_plugin_old_set_ip6_config(plugin, config);
set_ip6_config(plugin, config);
g_dbus_method_invocation_return_value(context, NULL);
}

View file

@ -136,6 +136,11 @@ nm_vpn_service_plugin_set_state(NMVpnServicePlugin *plugin, NMVpnServiceState st
}
}
/**
* nm_vpn_service_plugin_set_login_banner:
*
* Since: 1.2
*/
void
nm_vpn_service_plugin_set_login_banner(NMVpnServicePlugin *plugin, const char *banner)
{
@ -160,6 +165,11 @@ _emit_failure(NMVpnServicePlugin *plugin, NMVpnPluginFailure reason)
nmdbus_vpn_plugin_emit_failure(priv->dbus_vpn_service_plugin, reason);
}
/**
* nm_vpn_service_plugin_failure:
*
* Since: 1.2
*/
void
nm_vpn_service_plugin_failure(NMVpnServicePlugin *plugin, NMVpnPluginFailure reason)
{
@ -169,6 +179,11 @@ nm_vpn_service_plugin_failure(NMVpnServicePlugin *plugin, NMVpnPluginFailure rea
nm_vpn_service_plugin_disconnect(plugin, NULL);
}
/**
* nm_vpn_service_plugin_disconnect:
*
* Since: 1.2
*/
gboolean
nm_vpn_service_plugin_disconnect(NMVpnServicePlugin *plugin, GError **err)
{
@ -326,6 +341,11 @@ schedule_fail_stop(NMVpnServicePlugin *plugin, guint timeout_secs)
priv->fail_stop_id = g_idle_add(fail_stop, plugin);
}
/**
* nm_vpn_service_plugin_set_config:
*
* Since: 1.2
*/
void
nm_vpn_service_plugin_set_config(NMVpnServicePlugin *plugin, GVariant *config)
{
@ -364,6 +384,11 @@ nm_vpn_service_plugin_set_config(NMVpnServicePlugin *plugin, GVariant *config)
nm_vpn_service_plugin_set_state(plugin, NM_VPN_SERVICE_STATE_STARTED);
}
/**
* nm_vpn_service_plugin_set_ip4_config:
*
* Since: 1.2
*/
void
nm_vpn_service_plugin_set_ip4_config(NMVpnServicePlugin *plugin, GVariant *ip4_config)
{
@ -422,6 +447,11 @@ nm_vpn_service_plugin_set_ip4_config(NMVpnServicePlugin *plugin, GVariant *ip4_c
nm_vpn_service_plugin_set_state(plugin, NM_VPN_SERVICE_STATE_STARTED);
}
/**
* nm_vpn_service_plugin_set_ip6_config:
*
* Since: 1.2
*/
void
nm_vpn_service_plugin_set_ip6_config(NMVpnServicePlugin *plugin, GVariant *ip6_config)
{

View file

@ -44,3 +44,15 @@ foreach test_unit: test_units
args: test_args + [exe.full_path()],
)
endforeach
if enable_introspection
test(
'check-local-libnm-gir',
python,
args: [
join_paths(meson.source_root(), 'src', 'libnm-client-impl', 'tests', 'test-gir.py'),
'--gir', libnm_gir[0],
'--ver', join_paths(meson.source_root(), 'src', 'libnm-client-impl', 'libnm.ver'),
],
)
endif

View file

@ -0,0 +1,153 @@
#!/usr/bin/env python
# SPDX-License-Identifier: LGPL-2.1-or-later
#
# Copyright (C) 2022 Red Hat, Inc.
#
from __future__ import print_function
import xml.etree.ElementTree as ET
import argparse
import sys
C_NS = "http://www.gtk.org/introspection/c/1.0"
CORE_NS = "http://www.gtk.org/introspection/core/1.0"
GLIB_NS = "http://www.gtk.org/introspection/glib/1.0"
def syms_from_gir(girfile):
def xml_symbols(xml, types):
ret = []
for t in types:
ret += xml.findall("./{%s}namespace/{%s}%s" % (CORE_NS, CORE_NS, t))
ret += xml.findall("./{%s}namespace/*/{%s}%s" % (CORE_NS, CORE_NS, t))
return ret
girxml = ET.parse(girfile)
c_syms = {}
for sym in xml_symbols(girxml, ("constructor", "function", "method")):
c_syms[sym.get("{%s}identifier" % C_NS)] = sym.get("version")
for sym in xml_symbols(
girxml, ("bitfield", "class", "enumeration", "interface", "record")
):
get_type = sym.get("{%s}get-type" % GLIB_NS)
if get_type is None:
continue
version = sym.get("version")
if version is None:
# FIXME: The get_type() functions should be exported in the same
# version the type itself appeared. However, a large number of
# classes lack Since: tags in their doc blocks. Fall back to using
# the tag on _new() method for the test to be able to proceed
# reasonably. This should be fixed eventually.
constructor = sym.find("./{%s}constructor" % CORE_NS)
if constructor is not None:
version = constructor.get("version")
c_syms[get_type] = version
return c_syms
# Older Python doesn't have str.removesuffix()
def str_removesuffix(string, suffix):
try:
return string.removesuffix(suffix)
except AttributeError:
if string.endswith(suffix):
return string[: -len(suffix)]
else:
return string
# Older Python doesn't have str.removeprefix()
def str_removeprefix(string, prefix):
try:
return string.removeprefix(prefix)
except AttributeError:
if string.startswith(prefix):
return string[len(prefix) :]
else:
return string
def syms_from_ver(verfile):
c_syms = {}
for line in open(verfile).readlines():
line = line.strip()
if line.endswith("{"):
line = str_removesuffix(line, " {")
line = str_removeprefix(line, "libnm_")
(major, minor, micro) = line.split("_")
if int(major) > 1 or int(minor) > 0:
if int(micro) > 0:
# Snap to next major version. Perhaps not
# exactly correct, but good for all symbols
# we export but nm_ethtool_optname_is_feature().
minor = str(int(minor) + 2)
version = major + "." + minor
else:
version = None
elif (
line.endswith(";")
and not line.startswith("}")
and not line.startswith("#")
and not line == "*;"
):
c_syms[str_removesuffix(line, ";")] = version
# This one is... messy.
c_syms["nm_ethtool_optname_is_feature"] = "1.20"
return c_syms
parser = argparse.ArgumentParser()
parser.add_argument(
"--gir",
metavar="FILE",
help="NM-1.0.gir file",
required=True,
)
parser.add_argument(
"--ver",
metavar="FILE",
help="libnm.ver file",
required=True,
)
args = parser.parse_args()
gir_syms = syms_from_gir(args.gir)
ver_syms = syms_from_ver(args.ver)
exit_code = 0
for (gir_sym, gir_ver) in gir_syms.items():
if gir_sym not in ver_syms:
exit_code = 1
print(
'FAIL: "%s" found in "%s", but is not exported. Needs adding to "%s"?'
% (gir_sym, args.gir, args.ver),
file=sys.stderr,
)
continue
if gir_ver != ver_syms[gir_sym]:
exit_code = 1
print(
'FAIL: "%s" exported in version "%s" but documented as available since "%s"'
% (gir_sym, ver_syms[gir_sym], gir_ver),
file=sys.stderr,
)
# In python2, dict.keys() returns lists, not sets. Cast them.
for sym in set(ver_syms.keys()) - set(gir_syms.keys()):
exit_code = 1
print(
'FAIL: "%s" found in "%s", but not in "%s". Maybe the doc comment is wrong or g-ir-scanner messed up?'
% (sym, args.ver, args.gir),
file=sys.stderr,
)
sys.exit(exit_code)

View file

@ -29,6 +29,8 @@ G_BEGIN_DECLS
/**
* NMCheckpoint:
*
* Since: 1.12
*/
typedef struct _NMCheckpoint NMCheckpoint;
typedef struct _NMCheckpointClass NMCheckpointClass;

View file

@ -129,6 +129,11 @@ GQuark nm_client_error_quark(void);
/* DNS stuff */
/**
* NMDnsEntry:
*
* Since: 1.6
*/
typedef struct NMDnsEntry NMDnsEntry;
NM_AVAILABLE_IN_1_6

View file

@ -29,6 +29,8 @@ G_BEGIN_DECLS
/**
* NMDevice6Lowpan:
*
* Since: 1.14
*/
typedef struct _NMDevice6Lowpan NMDevice6Lowpan;
typedef struct _NMDevice6LowpanClass NMDevice6LowpanClass;
@ -36,13 +38,9 @@ typedef struct _NMDevice6LowpanClass NMDevice6LowpanClass;
NM_AVAILABLE_IN_1_14
GType nm_device_6lowpan_get_type(void);
NM_AVAILABLE_IN_1_14
NM_AVAILABLE_IN_1_42
NMDevice *nm_device_6lowpan_get_parent(NMDevice6Lowpan *device);
NM_AVAILABLE_IN_1_14
NM_DEPRECATED_IN_1_24_FOR(nm_device_get_hw_address)
const char *nm_device_6lowpan_get_hw_address(NMDevice6Lowpan *device);
G_END_DECLS
#endif /* __NM_DEVICE_6LOWPAN_H__ */

View file

@ -28,6 +28,8 @@ G_BEGIN_DECLS
/**
* NMDeviceDummy:
*
* Since: 1.8
*/
typedef struct _NMDeviceDummy NMDeviceDummy;
typedef struct _NMDeviceDummyClass NMDeviceDummyClass;

View file

@ -41,6 +41,8 @@ G_BEGIN_DECLS
/**
* NMDeviceIPTunnel:
*
* Since: 1.2
*/
typedef struct _NMDeviceIPTunnel NMDeviceIPTunnel;
typedef struct _NMDeviceIPTunnelClass NMDeviceIPTunnelClass;

View file

@ -41,6 +41,8 @@ G_BEGIN_DECLS
/**
* NMDeviceMacsec:
*
* Since: 1.6
*/
typedef struct _NMDeviceMacsec NMDeviceMacsec;
typedef struct _NMDeviceMacsecClass NMDeviceMacsecClass;
@ -48,7 +50,7 @@ typedef struct _NMDeviceMacsecClass NMDeviceMacsecClass;
NM_AVAILABLE_IN_1_6
GType nm_device_macsec_get_type(void);
NM_AVAILABLE_IN_1_6
NM_AVAILABLE_IN_1_42
NMDevice *nm_device_macsec_get_parent(NMDeviceMacsec *device);
NM_AVAILABLE_IN_1_6

View file

@ -32,6 +32,8 @@ G_BEGIN_DECLS
/**
* NMDeviceMacvlan:
*
* Since: 1.2
*/
typedef struct _NMDeviceMacvlan NMDeviceMacvlan;
typedef struct _NMDeviceMacvlanClass NMDeviceMacvlanClass;

View file

@ -29,6 +29,8 @@ G_BEGIN_DECLS
/**
* NMDeviceOvsBridge:
*
* Since: 1.10
*/
typedef struct _NMDeviceOvsBridge NMDeviceOvsBridge;
typedef struct _NMDeviceOvsBridgeClass NMDeviceOvsBridgeClass;

View file

@ -28,6 +28,8 @@ G_BEGIN_DECLS
/**
* NMDeviceOvsInterface:
*
* Since: 1.10
*/
typedef struct _NMDeviceOvsInterface NMDeviceOvsInterface;
typedef struct _NMDeviceOvsInterfaceClass NMDeviceOvsInterfaceClass;

View file

@ -29,6 +29,8 @@ G_BEGIN_DECLS
/**
* NMDeviceOvsPort:
*
* Since: 1.10
*/
typedef struct _NMDeviceOvsPort NMDeviceOvsPort;
typedef struct _NMDeviceOvsPortClass NMDeviceOvsPortClass;

View file

@ -23,10 +23,13 @@ G_BEGIN_DECLS
/**
* NMDevicePpp:
*
* Since: 1.10
*/
typedef struct _NMDevicePpp NMDevicePpp;
typedef struct _NMDevicePppClass NMDevicePppClass;
NM_AVAILABLE_IN_1_10
GType nm_device_ppp_get_type(void);
G_END_DECLS

View file

@ -33,6 +33,8 @@ G_BEGIN_DECLS
/**
* NMDeviceTun:
*
* Since: 1.2
*/
typedef struct _NMDeviceTun NMDeviceTun;
typedef struct _NMDeviceTunClass NMDeviceTunClass;

View file

@ -27,6 +27,8 @@ G_BEGIN_DECLS
/**
* NMDeviceVeth:
*
* Since: 1.30
*/
typedef struct _NMDeviceVeth NMDeviceVeth;
typedef struct _NMDeviceVethClass NMDeviceVethClass;
@ -34,7 +36,7 @@ typedef struct _NMDeviceVethClass NMDeviceVethClass;
NM_AVAILABLE_IN_1_30
GType nm_device_veth_get_type(void);
NM_AVAILABLE_IN_1_30
NM_AVAILABLE_IN_1_42
NMDevice *nm_device_veth_get_peer(NMDeviceVeth *device);
G_END_DECLS

View file

@ -24,6 +24,8 @@ G_BEGIN_DECLS
/**
* NMDeviceVrf:
*
* Since: 1.24
*/
typedef struct _NMDeviceVrf NMDeviceVrf;
typedef struct _NMDeviceVrfClass NMDeviceVrfClass;

View file

@ -45,6 +45,8 @@ G_BEGIN_DECLS
/**
* NMDeviceVxlan:
*
* Since: 1.2
*/
typedef struct _NMDeviceVxlan NMDeviceVxlan;
typedef struct _NMDeviceVxlanClass NMDeviceVxlanClass;
@ -56,7 +58,7 @@ NM_AVAILABLE_IN_1_2
NM_DEPRECATED_IN_1_24_FOR(nm_device_get_hw_address)
const char *nm_device_vxlan_get_hw_address(NMDeviceVxlan *device);
NM_AVAILABLE_IN_1_2
NM_AVAILABLE_IN_1_42
gboolean nm_device_vxlan_get_carrier(NMDeviceVxlan *device);
NM_AVAILABLE_IN_1_2
NMDevice *nm_device_vxlan_get_parent(NMDeviceVxlan *device);
@ -84,7 +86,7 @@ NM_AVAILABLE_IN_1_2
guint nm_device_vxlan_get_limit(NMDeviceVxlan *device);
NM_AVAILABLE_IN_1_2
gboolean nm_device_vxlan_get_proxy(NMDeviceVxlan *device);
NM_AVAILABLE_IN_1_2
NM_AVAILABLE_IN_1_42
gboolean nm_device_vxlan_get_rsc(NMDeviceVxlan *device);
NM_AVAILABLE_IN_1_2
gboolean nm_device_vxlan_get_l2miss(NMDeviceVxlan *device);

View file

@ -44,7 +44,7 @@ NM_AVAILABLE_IN_1_16
NM_DEPRECATED_IN_1_24_FOR(nm_device_get_hw_address)
const char *nm_device_wifi_p2p_get_hw_address(NMDeviceWifiP2P *device);
NM_AVAILABLE_IN_1_16
NM_AVAILABLE_IN_1_42
NMWifiP2PPeer *nm_device_wifi_p2p_get_peer_by_path(NMDeviceWifiP2P *device, const char *path);
NM_AVAILABLE_IN_1_16

View file

@ -27,6 +27,8 @@ G_BEGIN_DECLS
/**
* NMDeviceWireGuard:
*
* Since: 1.14
*/
typedef struct _NMDeviceWireGuard NMDeviceWireGuard;
typedef struct _NMDeviceWireGuardClass NMDeviceWireGuardClass;

View file

@ -27,6 +27,8 @@ G_BEGIN_DECLS
/**
* NMDeviceWpan:
*
* Since: 1.14
*/
typedef struct _NMDeviceWpan NMDeviceWpan;
typedef struct _NMDeviceWpanClass NMDeviceWpanClass;
@ -34,10 +36,6 @@ typedef struct _NMDeviceWpanClass NMDeviceWpanClass;
NM_AVAILABLE_IN_1_14
GType nm_device_wpan_get_type(void);
NM_AVAILABLE_IN_1_14
NM_DEPRECATED_IN_1_24_FOR(nm_device_get_hw_address)
const char *nm_device_wpan_get_hw_address(NMDeviceWpan *device);
G_END_DECLS
#endif /* __NM_DEVICE_WPAN_H__ */

View file

@ -107,15 +107,9 @@ void nm_vpn_plugin_old_set_login_banner(NMVpnPluginOld *plugin, const char *bann
NM_DEPRECATED_IN_1_2
void nm_vpn_plugin_old_failure(NMVpnPluginOld *plugin, NMVpnPluginFailure reason);
NM_DEPRECATED_IN_1_2
void nm_vpn_plugin_old_set_config(NMVpnPluginOld *plugin, GVariant *config);
NM_DEPRECATED_IN_1_2
void nm_vpn_plugin_old_set_ip4_config(NMVpnPluginOld *plugin, GVariant *ip4_config);
NM_DEPRECATED_IN_1_2
void nm_vpn_plugin_old_set_ip6_config(NMVpnPluginOld *plugin, GVariant *ip6_config);
NM_DEPRECATED_IN_1_2
gboolean nm_vpn_plugin_old_disconnect(NMVpnPluginOld *plugin, GError **err);

View file

@ -35,6 +35,8 @@ G_BEGIN_DECLS
/**
* NMVpnServicePlugin:
*
* Since: 1.2
*/
typedef struct {
NM_AVAILABLE_IN_1_2

View file

@ -37,6 +37,8 @@ G_BEGIN_DECLS
/**
* NMWifiP2PPeer:
*
* Since: 1.16
*/
typedef struct _NMWifiP2PPeer NMWifiP2PPeer;
typedef struct _NMWifiP2PPeerClass NMWifiP2PPeerClass;

View file

@ -3490,7 +3490,7 @@ nm_connection_get_setting_olpc_mesh(NMConnection *connection)
*
* Returns: (transfer none): an #NMSettingOvsBridge if the connection contains one, otherwise %NULL
*
* Since: 1.10
* Since: 1.14
**/
NMSettingOvsBridge *
nm_connection_get_setting_ovs_bridge(NMConnection *connection)
@ -3506,7 +3506,7 @@ nm_connection_get_setting_ovs_bridge(NMConnection *connection)
*
* Returns: (transfer none): an #NMSettingOvsInterface if the connection contains one, otherwise %NULL
*
* Since: 1.10
* Since: 1.14
**/
NMSettingOvsInterface *
nm_connection_get_setting_ovs_interface(NMConnection *connection)
@ -3523,7 +3523,7 @@ nm_connection_get_setting_ovs_interface(NMConnection *connection)
*
* Returns: (transfer none): an #NMSettingOvsPatch if the connection contains one, otherwise %NULL
*
* Since: 1.10
* Since: 1.14
**/
NMSettingOvsPatch *
nm_connection_get_setting_ovs_patch(NMConnection *connection)
@ -3539,7 +3539,7 @@ nm_connection_get_setting_ovs_patch(NMConnection *connection)
*
* Returns: (transfer none): an #NMSettingOvsPort if the connection contains one, otherwise %NULL
*
* Since: 1.10
* Since: 1.14
**/
NMSettingOvsPort *
nm_connection_get_setting_ovs_port(NMConnection *connection)
@ -3629,7 +3629,7 @@ nm_connection_get_setting_tc_config(NMConnection *connection)
*
* Returns: (transfer none): an #NMSettingTun if the connection contains one, otherwise %NULL
*
* Since: 1.2
* Since: 1.14
**/
NMSettingTun *
nm_connection_get_setting_tun(NMConnection *connection)

View file

@ -29,6 +29,8 @@ typedef struct {
* NMSetting6Lowpan:
*
* 6LoWPAN Settings
*
* Since: 1.14
*/
struct _NMSetting6Lowpan {
NMSetting parent;
@ -51,7 +53,7 @@ G_DEFINE_TYPE(NMSetting6Lowpan, nm_setting_6lowpan, NM_TYPE_SETTING)
*
* Returns: the #NMSetting6Lowpan:parent property of the setting
*
* Since: 1.14
* Since: 1.42
**/
const char *
nm_setting_6lowpan_get_parent(NMSetting6Lowpan *setting)
@ -139,7 +141,7 @@ nm_setting_6lowpan_init(NMSetting6Lowpan *setting)
*
* Returns: (transfer full): the new empty #NMSetting6Lowpan object
*
* Since: 1.14
* Since: 1.42
**/
NMSetting *
nm_setting_6lowpan_new(void)

View file

@ -926,7 +926,7 @@ _nm_setting_bridge_get_vlans(NMSettingBridge *setting)
*
* Returns: the #NMSettingBridge:group-address property of the setting
*
* Since 1.24
* Since: 1.24
**/
const char *
nm_setting_bridge_get_group_address(const NMSettingBridge *setting)
@ -942,7 +942,7 @@ nm_setting_bridge_get_group_address(const NMSettingBridge *setting)
*
* Returns: the #NMSettingBridge:vlan-protocol property of the setting
*
* Since 1.24
* Since: 1.24
**/
const char *
nm_setting_bridge_get_vlan_protocol(const NMSettingBridge *setting)
@ -958,7 +958,7 @@ nm_setting_bridge_get_vlan_protocol(const NMSettingBridge *setting)
*
* Returns: the #NMSettingBridge:vlan-stats-enabled property of the setting
*
* Since 1.24
* Since: 1.24
**/
gboolean
nm_setting_bridge_get_vlan_stats_enabled(const NMSettingBridge *setting)
@ -974,7 +974,7 @@ nm_setting_bridge_get_vlan_stats_enabled(const NMSettingBridge *setting)
*
* Returns: the #NMSettingBridge:multicast-router property of the setting
*
* Since 1.24
* Since: 1.24
**/
const char *
nm_setting_bridge_get_multicast_router(const NMSettingBridge *setting)
@ -990,7 +990,7 @@ nm_setting_bridge_get_multicast_router(const NMSettingBridge *setting)
*
* Returns: the #NMSettingBridge:multicast-query-use-ifaddr property of the setting
*
* Since 1.24
* Since: 1.24
**/
gboolean
nm_setting_bridge_get_multicast_query_use_ifaddr(const NMSettingBridge *setting)
@ -1006,7 +1006,7 @@ nm_setting_bridge_get_multicast_query_use_ifaddr(const NMSettingBridge *setting)
*
* Returns: the #NMSettingBridge:multicast-querier property of the setting
*
* Since 1.24
* Since: 1.24
**/
gboolean
nm_setting_bridge_get_multicast_querier(const NMSettingBridge *setting)
@ -1022,7 +1022,7 @@ nm_setting_bridge_get_multicast_querier(const NMSettingBridge *setting)
*
* Returns: the #NMSettingBridge:multicast-hash-max property of the setting
*
* Since 1.26
* Since: 1.26
**/
guint32
nm_setting_bridge_get_multicast_hash_max(const NMSettingBridge *setting)
@ -1038,7 +1038,7 @@ nm_setting_bridge_get_multicast_hash_max(const NMSettingBridge *setting)
*
* Returns: the #NMSettingBridge:multicast-last-member-count property of the setting
*
* Since 1.26
* Since: 1.26
**/
guint32
nm_setting_bridge_get_multicast_last_member_count(const NMSettingBridge *setting)
@ -1054,7 +1054,7 @@ nm_setting_bridge_get_multicast_last_member_count(const NMSettingBridge *setting
*
* Returns: the #NMSettingBridge:multicast-last-member-interval property of the setting
*
* Since 1.26
* Since: 1.26
**/
guint64
nm_setting_bridge_get_multicast_last_member_interval(const NMSettingBridge *setting)
@ -1070,7 +1070,7 @@ nm_setting_bridge_get_multicast_last_member_interval(const NMSettingBridge *sett
*
* Returns: the #NMSettingBridge:multicast-membership-interval property of the setting
*
* Since 1.26
* Since: 1.26
**/
guint64
nm_setting_bridge_get_multicast_membership_interval(const NMSettingBridge *setting)
@ -1086,7 +1086,7 @@ nm_setting_bridge_get_multicast_membership_interval(const NMSettingBridge *setti
*
* Returns: the #NMSettingBridge:multicast-querier-interval property of the setting
*
* Since 1.26
* Since: 1.26
**/
guint64
nm_setting_bridge_get_multicast_querier_interval(const NMSettingBridge *setting)
@ -1102,7 +1102,7 @@ nm_setting_bridge_get_multicast_querier_interval(const NMSettingBridge *setting)
*
* Returns: the #NMSettingBridge:multicast-query-interval property of the setting
*
* Since 1.26
* Since: 1.26
**/
guint64
nm_setting_bridge_get_multicast_query_interval(const NMSettingBridge *setting)
@ -1118,7 +1118,7 @@ nm_setting_bridge_get_multicast_query_interval(const NMSettingBridge *setting)
*
* Returns: the #NMSettingBridge:multicast-query-response-interval property of the setting
*
* Since 1.26
* Since: 1.26
**/
guint64
nm_setting_bridge_get_multicast_query_response_interval(const NMSettingBridge *setting)
@ -1134,7 +1134,7 @@ nm_setting_bridge_get_multicast_query_response_interval(const NMSettingBridge *s
*
* Returns: the #NMSettingBridge:multicast-query-response-interval property of the setting
*
* Since 1.26
* Since: 1.26
**/
guint32
nm_setting_bridge_get_multicast_startup_query_count(const NMSettingBridge *setting)
@ -1150,7 +1150,7 @@ nm_setting_bridge_get_multicast_startup_query_count(const NMSettingBridge *setti
*
* Returns: the #NMSettingBridge:multicast-startup-query-interval property of the setting
*
* Since 1.26
* Since: 1.26
**/
guint64
nm_setting_bridge_get_multicast_startup_query_interval(const NMSettingBridge *setting)

View file

@ -1023,7 +1023,7 @@ nm_setting_connection_get_dns_over_tls(NMSettingConnection *setting)
*
* Returns: the #NMSettingConnection:mptcp-flags property of the setting.
*
* Since: 1.40
* Since: 1.42
**/
NMMptcpFlags
nm_setting_connection_get_mptcp_flags(NMSettingConnection *setting)

View file

@ -134,7 +134,7 @@ nm_setting_hostname_init(NMSettingHostname *setting)
*
* Returns: (transfer full): the new empty #NMSettingHostname object
*
* Since: 1.30
* Since: 1.42
**/
NMSetting *
nm_setting_hostname_new(void)

View file

@ -266,6 +266,8 @@ nm_ip_address_unref(NMIPAddress *address)
*
* Returns: 0 if the two objects have the same values (according to their flags)
* or a integer indicating the compare order.
*
* Since: 1.22
**/
int
nm_ip_address_cmp_full(const NMIPAddress *a, const NMIPAddress *b, NMIPAddressCmpFlags cmp_flags)
@ -4348,6 +4350,8 @@ nm_setting_ip_config_get_num_dns_options(NMSettingIPConfig *setting)
* a default configuration, while the former explicitly means "no-options".
*
* Returns: whether DNS options are initialized or left unset (the default).
*
* Since: 1.2
**/
gboolean
nm_setting_ip_config_has_dns_options(NMSettingIPConfig *setting)

View file

@ -240,7 +240,7 @@ nm_setting_ip_tunnel_get_output_key(NMSettingIPTunnel *setting)
*
* Returns: the encapsulation limit value
*
* Since: 1.2
* Since: 1.42
**/
guint
nm_setting_ip_tunnel_get_encapsulation_limit(NMSettingIPTunnel *setting)
@ -258,7 +258,7 @@ nm_setting_ip_tunnel_get_encapsulation_limit(NMSettingIPTunnel *setting)
*
* Returns: the flow label value
*
* Since: 1.2
* Since: 1.42
**/
guint
nm_setting_ip_tunnel_get_flow_label(NMSettingIPTunnel *setting)
@ -286,7 +286,7 @@ nm_setting_ip_tunnel_get_mtu(NMSettingIPTunnel *setting)
return NM_SETTING_IP_TUNNEL_GET_PRIVATE(setting)->mtu;
}
/*
/**
* nm_setting_ip_tunnel_get_flags:
* @setting: the #NMSettingIPTunnel
*

View file

@ -138,7 +138,7 @@ nm_setting_ip4_config_get_dhcp_vendor_class_identifier(NMSettingIP4Config *setti
*
* Returns: the link-local configuration
*
* Since: 1.40
* Since: 1.42
**/
NMSettingIP4LinkLocal
nm_setting_ip4_config_get_link_local(NMSettingIP4Config *setting)
@ -909,7 +909,7 @@ nm_setting_ip4_config_class_init(NMSettingIP4ConfigClass *klass)
* a global connection default gets consulted.
* If still unspecified, the DHCP option is not sent to the server.
*
* Since 1.28
* Since: 1.28
*/
/* ---ifcfg-rh---
* property: dhcp-vendor-class-identifier
@ -939,7 +939,7 @@ nm_setting_ip4_config_class_init(NMSettingIP4ConfigClass *klass)
* falling back to "auto". Note that if "ipv4.method" is "disabled", then
* link local addressing is always disabled too. The default is "default".
*
* Since 1.40
* Since: 1.40
*/
/* ---ifcfg-rh---
* property: link-local

View file

@ -120,7 +120,7 @@ nm_setting_ovs_bridge_get_stp_enable(NMSettingOvsBridge *self)
*
* Returns: the #NMSettingOvsBridge:datapath_type property of the setting
*
* Since: 1.20
* Since: 1.42
**/
const char *
nm_setting_ovs_bridge_get_datapath_type(NMSettingOvsBridge *self)

View file

@ -195,6 +195,8 @@ _nm_setting_ovs_external_ids_get_data(NMSettingOvsExternalIDs *self)
*
* Returns: (array length=out_len) (transfer none): a
* %NULL-terminated array containing each key from the table.
*
* Since: 1.30
**/
const char *const *
nm_setting_ovs_external_ids_get_data_keys(NMSettingOvsExternalIDs *setting, guint *out_len)

View file

@ -372,7 +372,7 @@ const NMVariantAttributeSpec *const _nm_sriov_vf_attribute_spec[] = {
*
* Returns: %TRUE if the attribute is valid, %FALSE otherwise
*
* Since: 1.14
* Since: 1.42
*/
gboolean
nm_sriov_vf_attribute_validate(const char *name, GVariant *value, gboolean *known, GError **error)
@ -649,7 +649,7 @@ nm_sriov_vf_get_vlan_qos(const NMSriovVF *vf, guint vlan_id)
return vlan->qos;
}
/*
/**
* nm_sriov_vf_get_vlan_protocol:
* @vf: the #NMSriovVF
* @vlan_id: the VLAN id

View file

@ -935,7 +935,7 @@ nm_tc_tfilter_get_parent(NMTCTfilter *tfilter)
*
* Returns: the action associated with a traffic filter.
*
* Since: 1.12
* Since: 1.42
**/
NMTCAction *
nm_tc_tfilter_get_action(NMTCTfilter *tfilter)
@ -956,7 +956,7 @@ nm_tc_tfilter_get_action(NMTCTfilter *tfilter)
*
* Sets the action associated with a traffic filter.
*
* Since: 1.12
* Since: 1.42
**/
void
nm_tc_tfilter_set_action(NMTCTfilter *tfilter, NMTCAction *action)

View file

@ -35,6 +35,8 @@ typedef struct {
* NMSettingUser:
*
* General User Profile Settings
*
* Since: 1.8
*/
struct _NMSettingUser {
NMSetting parent;
@ -216,6 +218,8 @@ _create_data_hash(void)
*
* Returns: (array length=out_len) (transfer none): a
* %NULL-terminated array containing each key from the table.
*
* Since: 1.8
**/
const char *const *
nm_setting_user_get_keys(NMSettingUser *setting, guint *out_len)
@ -498,6 +502,8 @@ nm_setting_user_init(NMSettingUser *self)
* Creates a new #NMSettingUser object with default values.
*
* Returns: the new empty #NMSettingUser object
*
* Since: 1.8
**/
NMSetting *
nm_setting_user_new(void)

View file

@ -147,6 +147,8 @@ nm_setting_vpn_get_user_name(NMSettingVpn *setting)
* @setting: the #NMSettingVpn
*
* Returns: the #NMSettingVpn:persistent property of the setting
*
* Since: 1.42
**/
gboolean
nm_setting_vpn_get_persistent(NMSettingVpn *setting)

View file

@ -1437,7 +1437,7 @@ _peers_clear(NMSettingWireGuardPrivate *priv)
}
/**
* nm_setting_wireguard_:
* nm_setting_wireguard_clear_peers:
* @self: the #NMSettingWireGuard instance
*
* Returns: the number of cleared peers.

View file

@ -561,7 +561,7 @@ nm_setting_wireless_security_clear_groups(NMSettingWirelessSecurity *setting)
_notify(setting, PROP_GROUP);
}
/*
/**
* nm_setting_wireless_security_get_pmf:
* @setting: the #NMSettingWirelessSecurity
*
@ -798,7 +798,7 @@ nm_setting_wireless_security_get_wps_method(NMSettingWirelessSecurity *setting)
return NM_SETTING_WIRELESS_SECURITY_GET_PRIVATE(setting)->wps_method;
}
/*
/**
* nm_setting_wireless_security_get_fils:
* @setting: the #NMSettingWirelessSecurity
*

View file

@ -53,6 +53,8 @@ typedef struct {
* NMSettingWpan:
*
* IEEE 802.15.4 (WPAN) MAC Settings
*
* Since: 1.14
*/
struct _NMSettingWpan {
NMSetting parent;
@ -75,7 +77,7 @@ G_DEFINE_TYPE(NMSettingWpan, nm_setting_wpan, NM_TYPE_SETTING)
*
* Returns: the #NMSettingWpan:mac-address property of the setting
*
* Since: 1.14
* Since: 1.42
**/
const char *
nm_setting_wpan_get_mac_address(NMSettingWpan *setting)
@ -91,7 +93,7 @@ nm_setting_wpan_get_mac_address(NMSettingWpan *setting)
*
* Returns: the #NMSettingWpan:pan-id property of the setting
*
* Since: 1.14
* Since: 1.42
**/
guint16
nm_setting_wpan_get_pan_id(NMSettingWpan *setting)
@ -107,7 +109,7 @@ nm_setting_wpan_get_pan_id(NMSettingWpan *setting)
*
* Returns: the #NMSettingWpan:short-address property of the setting
*
* Since: 1.14
* Since: 1.42
**/
guint16
nm_setting_wpan_get_short_address(NMSettingWpan *setting)
@ -123,7 +125,7 @@ nm_setting_wpan_get_short_address(NMSettingWpan *setting)
*
* Returns: the #NMSettingWpan:page property of the setting
*
* Since: 1.16
* Since: 1.42
**/
gint16
nm_setting_wpan_get_page(NMSettingWpan *setting)
@ -139,7 +141,7 @@ nm_setting_wpan_get_page(NMSettingWpan *setting)
*
* Returns: the #NMSettingWpan:channel property of the setting
*
* Since: 1.16
* Since: 1.42
**/
gint16
nm_setting_wpan_get_channel(NMSettingWpan *setting)
@ -211,7 +213,7 @@ nm_setting_wpan_init(NMSettingWpan *setting)
*
* Returns: (transfer full): the new empty #NMSettingWpan object
*
* Since: 1.14
* Since: 1.42
**/
NMSetting *
nm_setting_wpan_new(void)

View file

@ -3918,7 +3918,7 @@ nm_setting_option_clear_by_name(NMSetting *setting, NMUtilsPredicateStr predicat
* Returns: (transfer none): the #GVariant or %NULL if the option
* is not set.
*
* Since: 1.26.
* Since: 1.26
*/
GVariant *
nm_setting_option_get(NMSetting *setting, const char *opt_name)

View file

@ -1927,6 +1927,8 @@ next:
* include additional attributes.
*
* Returns: (transfer none): a new floating #GVariant representing @addresses.
*
* Since: 1.42
**/
GVariant *
nm_utils_ip_addresses_to_variant(GPtrArray *addresses)
@ -1980,6 +1982,8 @@ nm_utils_ip_addresses_to_variant(GPtrArray *addresses)
*
* Returns: (transfer full) (element-type NMIPAddress): a newly allocated
* #GPtrArray of #NMIPAddress objects
*
* Since: 1.42
**/
GPtrArray *
nm_utils_ip_addresses_from_variant(GVariant *value, int family)
@ -2039,6 +2043,8 @@ nm_utils_ip_addresses_from_variant(GVariant *value, int family)
* prefix, next hop, metric, and additional attributes).
*
* Returns: (transfer none): a new floating #GVariant representing @routes.
*
* Since: 1.42
**/
GVariant *
nm_utils_ip_routes_to_variant(GPtrArray *routes)
@ -2105,6 +2111,8 @@ nm_utils_ip_routes_to_variant(GPtrArray *routes)
*
* Returns: (transfer full) (element-type NMIPRoute): a newly allocated
* #GPtrArray of #NMIPRoute objects
*
* Since: 1.42
**/
GPtrArray *
nm_utils_ip_routes_from_variant(GVariant *value, int family)
@ -4300,6 +4308,8 @@ nm_utils_is_valid_iface_name_utf8safe(const char *utf8safe_name)
*
* Before 1.20, this function did not accept %NULL as @name argument. If you
* want to run against older versions of libnm, don't pass %NULL.
*
* Since: 1.6
*/
gboolean
nm_utils_is_valid_iface_name(const char *name, GError **error)
@ -5232,7 +5242,7 @@ next:
return g_steal_pointer(&ht);
}
/*
/**
* nm_utils_format_variant_attributes:
* @attributes: (element-type utf8 GVariant): a #GHashTable mapping attribute names to #GVariant values
* @attr_separator: the attribute separator character
@ -5258,8 +5268,8 @@ nm_utils_format_variant_attributes(GHashTable *attributes,
/*****************************************************************************/
/*
* nm_utils_get_timestamp_msec():
/**
* nm_utils_get_timestamp_msec:
*
* Gets current time in milliseconds of CLOCK_BOOTTIME.
*
@ -5297,7 +5307,7 @@ nm_utils_get_timestamp_msec(void)
* Returns: the version ID of the libnm version. That is, the %NM_VERSION
* at runtime.
*
* Since: 1.6.0
* Since: 1.6
*/
guint
nm_utils_version(void)

View file

@ -898,7 +898,7 @@ nm_vpn_plugin_info_get_program(NMVpnPluginInfo *self)
*
* Returns: %TRUE if the service supports multiple instances with different bus names, otherwise %FALSE
*
* Since: 1.2
* Since: 1.42
*/
gboolean
nm_vpn_plugin_info_supports_multiple(NMVpnPluginInfo *self)

View file

@ -220,12 +220,13 @@ NMSettingMacsec *nm_connection_get_setting_macsec(NMConnection *connection);
NM_AVAILABLE_IN_1_2
NMSettingMacvlan *nm_connection_get_setting_macvlan(NMConnection *connection);
NMSettingOlpcMesh *nm_connection_get_setting_olpc_mesh(NMConnection *connection);
NM_AVAILABLE_IN_1_10
NM_AVAILABLE_IN_1_14
NMSettingOvsBridge *nm_connection_get_setting_ovs_bridge(NMConnection *connection);
NM_AVAILABLE_IN_1_10
NM_AVAILABLE_IN_1_14
NMSettingOvsInterface *nm_connection_get_setting_ovs_interface(NMConnection *connection);
NMSettingOvsPatch *nm_connection_get_setting_ovs_patch(NMConnection *connection);
NM_AVAILABLE_IN_1_10
NM_AVAILABLE_IN_1_14
NMSettingOvsPatch *nm_connection_get_setting_ovs_patch(NMConnection *connection);
NM_AVAILABLE_IN_1_14
NMSettingOvsPort *nm_connection_get_setting_ovs_port(NMConnection *connection);
NMSettingPpp *nm_connection_get_setting_ppp(NMConnection *connection);
NMSettingPppoe *nm_connection_get_setting_pppoe(NMConnection *connection);
@ -234,7 +235,7 @@ NMSettingProxy *nm_connection_get_setting_proxy(NMConnection *connection);
NMSettingSerial *nm_connection_get_setting_serial(NMConnection *connection);
NM_AVAILABLE_IN_1_12
NMSettingTCConfig *nm_connection_get_setting_tc_config(NMConnection *connection);
NM_AVAILABLE_IN_1_2
NM_AVAILABLE_IN_1_14
NMSettingTun *nm_connection_get_setting_tun(NMConnection *connection);
NMSettingVpn *nm_connection_get_setting_vpn(NMConnection *connection);
NMSettingWimax *nm_connection_get_setting_wimax(NMConnection *connection);

View file

@ -103,6 +103,8 @@
* The range 0x7000 - 0x7FFF of capabilities is guaranteed not to be
* used by upstream NetworkManager. It could thus be used for downstream
* extensions.
*
* Since: 1.6
*/
typedef enum {
NM_CAPABILITY_TEAM = 1,
@ -967,7 +969,7 @@ typedef enum {
*
* The flags for CheckpointCreate call
*
* Since: 1.4 (gi flags generated since 1.12)
* Since: 1.12 (public since 1.4, g-ir since 1.12)
*/
typedef enum /*< flags >*/ {
NM_CHECKPOINT_CREATE_FLAG_NONE = 0,

View file

@ -33,10 +33,10 @@ typedef struct _NMSetting6LowpanClass NMSetting6LowpanClass;
NM_AVAILABLE_IN_1_14
GType nm_setting_6lowpan_get_type(void);
NM_AVAILABLE_IN_1_14
NM_AVAILABLE_IN_1_42
NMSetting *nm_setting_6lowpan_new(void);
NM_AVAILABLE_IN_1_14
NM_AVAILABLE_IN_1_42
const char *nm_setting_6lowpan_get_parent(NMSetting6Lowpan *setting);
G_END_DECLS

View file

@ -73,6 +73,8 @@ G_BEGIN_DECLS
*
* #NMSettingConnectionAutoconnectSlaves values indicate whether slave connections
* should be activated when master is activated.
*
* Since: 1.2
*/
typedef enum {
NM_SETTING_CONNECTION_AUTOCONNECT_SLAVES_DEFAULT = -1,
@ -87,6 +89,8 @@ typedef enum {
* @NM_SETTING_CONNECTION_LLDP_ENABLE_RX: enable reception of LLDP frames
*
* #NMSettingConnectionLldp values indicate whether LLDP should be enabled.
*
* Since: 1.2
*/
typedef enum {
NM_SETTING_CONNECTION_LLDP_DEFAULT = -1,
@ -217,7 +221,7 @@ NMSettingConnectionLlmnr nm_setting_connection_get_llmnr(NMSettingConnection *se
NM_AVAILABLE_IN_1_34
NMSettingConnectionDnsOverTls nm_setting_connection_get_dns_over_tls(NMSettingConnection *setting);
NM_AVAILABLE_IN_1_40
NM_AVAILABLE_IN_1_42
NMMptcpFlags nm_setting_connection_get_mptcp_flags(NMSettingConnection *setting);
NM_AVAILABLE_IN_1_20

View file

@ -36,7 +36,7 @@ typedef struct _NMSettingHostnameClass NMSettingHostnameClass;
NM_AVAILABLE_IN_1_30
GType nm_setting_hostname_get_type(void);
NM_AVAILABLE_IN_1_30
NM_AVAILABLE_IN_1_42
NMSetting *nm_setting_hostname_new(void);
NM_AVAILABLE_IN_1_30

View file

@ -43,7 +43,7 @@ G_BEGIN_DECLS
typedef struct _NMSettingIPTunnelClass NMSettingIPTunnelClass;
/*
/**
* NMIPTunnelFlags:
* @NM_IP_TUNNEL_FLAG_NONE: no flag
* @NM_IP_TUNNEL_FLAG_IP6_IGN_ENCAP_LIMIT: don't add encapsulation limit
@ -94,9 +94,9 @@ NM_AVAILABLE_IN_1_2
const char *nm_setting_ip_tunnel_get_input_key(NMSettingIPTunnel *setting);
NM_AVAILABLE_IN_1_2
const char *nm_setting_ip_tunnel_get_output_key(NMSettingIPTunnel *setting);
NM_AVAILABLE_IN_1_2
NM_AVAILABLE_IN_1_42
guint nm_setting_ip_tunnel_get_encapsulation_limit(NMSettingIPTunnel *setting);
NM_AVAILABLE_IN_1_2
NM_AVAILABLE_IN_1_42
guint nm_setting_ip_tunnel_get_flow_label(NMSettingIPTunnel *setting);
NM_AVAILABLE_IN_1_2
guint nm_setting_ip_tunnel_get_mtu(NMSettingIPTunnel *setting);

View file

@ -113,7 +113,7 @@ const char *nm_setting_ip4_config_get_dhcp_fqdn(NMSettingIP4Config *setting);
NM_AVAILABLE_IN_1_28
const char *nm_setting_ip4_config_get_dhcp_vendor_class_identifier(NMSettingIP4Config *setting);
NM_AVAILABLE_IN_1_40
NM_AVAILABLE_IN_1_42
NMSettingIP4LinkLocal nm_setting_ip4_config_get_link_local(NMSettingIP4Config *setting);
G_END_DECLS

View file

@ -42,6 +42,8 @@ typedef struct _NMSettingMacvlanClass NMSettingMacvlanClass;
* @NM_SETTING_MACVLAN_MODE_PRIVATE: private mode
* @NM_SETTING_MACVLAN_MODE_PASSTHRU: passthru mode
* @NM_SETTING_MACVLAN_MODE_SOURCE: source mode
*
* Since: 1.2
**/
typedef enum {
NM_SETTING_MACVLAN_MODE_UNKNOWN = 0,

View file

@ -49,7 +49,7 @@ NM_AVAILABLE_IN_1_10
gboolean nm_setting_ovs_bridge_get_rstp_enable(NMSettingOvsBridge *self);
NM_AVAILABLE_IN_1_10
gboolean nm_setting_ovs_bridge_get_stp_enable(NMSettingOvsBridge *self);
NM_AVAILABLE_IN_1_20
NM_AVAILABLE_IN_1_42
const char *nm_setting_ovs_bridge_get_datapath_type(NMSettingOvsBridge *self);
G_END_DECLS

View file

@ -109,7 +109,7 @@ NM_AVAILABLE_IN_1_14
const char **nm_sriov_vf_get_attribute_names(const NMSriovVF *vf);
NM_AVAILABLE_IN_1_14
GVariant *nm_sriov_vf_get_attribute(const NMSriovVF *vf, const char *name);
NM_AVAILABLE_IN_1_14
NM_AVAILABLE_IN_1_42
gboolean
nm_sriov_vf_attribute_validate(const char *name, GVariant *value, gboolean *known, GError **error);

View file

@ -102,9 +102,9 @@ NM_AVAILABLE_IN_1_12
void nm_tc_tfilter_set_handle(NMTCTfilter *tfilter, guint32 handle);
NM_AVAILABLE_IN_1_12
guint32 nm_tc_tfilter_get_parent(NMTCTfilter *tfilter);
NM_AVAILABLE_IN_1_12
NM_AVAILABLE_IN_1_42
NMTCAction *nm_tc_tfilter_get_action(NMTCTfilter *tfilter);
NM_AVAILABLE_IN_1_12
NM_AVAILABLE_IN_1_42
void nm_tc_tfilter_set_action(NMTCTfilter *tfilter, NMTCAction *action);
#define NM_TYPE_SETTING_TC_CONFIG (nm_setting_tc_config_get_type())

View file

@ -25,6 +25,8 @@ G_BEGIN_DECLS
* option 'validate_inactive' is enabled (set to true).
* @NM_TEAM_LINK_WATCHER_ARP_PING_FLAG_SEND_ALWAYS: the arp_ping link watcher option
* 'send_always' is enabled (set to true).
*
* Since: 1.12
*/
typedef enum /*< flags >*/ {
NM_TEAM_LINK_WATCHER_ARP_PING_FLAG_NONE = 0, /*< skip >*/

View file

@ -39,6 +39,8 @@ G_BEGIN_DECLS
* @NM_SETTING_TUN_MODE_TAP: a TAP device
*
* #NMSettingTunMode values indicate the device type (TUN/TAP)
*
* Since: 1.2
*/
typedef enum {
NM_SETTING_TUN_MODE_UNKNOWN = 0,

View file

@ -49,7 +49,9 @@ GType nm_setting_vpn_get_type(void);
NMSetting *nm_setting_vpn_new(void);
const char *nm_setting_vpn_get_service_type(NMSettingVpn *setting);
const char *nm_setting_vpn_get_user_name(NMSettingVpn *setting);
gboolean nm_setting_vpn_get_persistent(NMSettingVpn *setting);
NM_AVAILABLE_IN_1_42
gboolean nm_setting_vpn_get_persistent(NMSettingVpn *setting);
guint32 nm_setting_vpn_get_num_data_items(NMSettingVpn *setting);
void nm_setting_vpn_add_data_item(NMSettingVpn *setting, const char *key, const char *item);

View file

@ -74,6 +74,8 @@ typedef enum {
* @NM_SETTING_WIRELESS_SECURITY_PMF_REQUIRED: require PMF and fail if not available
*
* These flags indicate whether PMF must be enabled.
*
* Since: 1.10
**/
typedef enum {
NM_SETTING_WIRELESS_SECURITY_PMF_DEFAULT = 0,

View file

@ -132,6 +132,8 @@ typedef enum /*< flags >*/ {
* @NM_SETTING_WIRELESS_POWERSAVE_ENABLE: enable powersave
*
* These flags indicate whether wireless powersave must be enabled.
*
* Since: 1.2
**/
typedef enum {
NM_SETTING_WIRELESS_POWERSAVE_DEFAULT = 0,

View file

@ -38,18 +38,18 @@ typedef struct _NMSettingWpanClass NMSettingWpanClass;
NM_AVAILABLE_IN_1_14
GType nm_setting_wpan_get_type(void);
NM_AVAILABLE_IN_1_14
NM_AVAILABLE_IN_1_42
NMSetting *nm_setting_wpan_new(void);
NM_AVAILABLE_IN_1_14
NM_AVAILABLE_IN_1_42
const char *nm_setting_wpan_get_mac_address(NMSettingWpan *setting);
NM_AVAILABLE_IN_1_14
NM_AVAILABLE_IN_1_42
guint16 nm_setting_wpan_get_pan_id(NMSettingWpan *setting);
NM_AVAILABLE_IN_1_14
NM_AVAILABLE_IN_1_42
guint16 nm_setting_wpan_get_short_address(NMSettingWpan *setting);
NM_AVAILABLE_IN_1_16
NM_AVAILABLE_IN_1_42
gint16 nm_setting_wpan_get_page(NMSettingWpan *setting);
NM_AVAILABLE_IN_1_16
NM_AVAILABLE_IN_1_42
gint16 nm_setting_wpan_get_channel(NMSettingWpan *setting);
G_END_DECLS

View file

@ -122,6 +122,8 @@ typedef enum {
* @NM_SETTING_MAC_RANDOMIZATION_ALWAYS: a random MAC address is used.
*
* Controls if and how the MAC address of a device is randomzied.
*
* Since: 1.2
**/
typedef enum {
NM_SETTING_MAC_RANDOMIZATION_DEFAULT = 0,

View file

@ -104,9 +104,13 @@ GPtrArray *nm_utils_ip6_addresses_from_variant(GVariant *value, char **out_gatew
GVariant *nm_utils_ip6_routes_to_variant(GPtrArray *routes);
GPtrArray *nm_utils_ip6_routes_from_variant(GVariant *value);
GVariant *nm_utils_ip_addresses_to_variant(GPtrArray *addresses);
NM_AVAILABLE_IN_1_42
GVariant *nm_utils_ip_addresses_to_variant(GPtrArray *addresses);
NM_AVAILABLE_IN_1_42
GPtrArray *nm_utils_ip_addresses_from_variant(GVariant *value, int family);
GVariant *nm_utils_ip_routes_to_variant(GPtrArray *routes);
NM_AVAILABLE_IN_1_42
GVariant *nm_utils_ip_routes_to_variant(GPtrArray *routes);
NM_AVAILABLE_IN_1_42
GPtrArray *nm_utils_ip_routes_from_variant(GVariant *value, int family);
char *nm_utils_uuid_generate(void);

View file

@ -62,7 +62,7 @@ NM_AVAILABLE_IN_1_4
const char *nm_vpn_plugin_info_get_auth_dialog(NMVpnPluginInfo *self);
NM_AVAILABLE_IN_1_4
gboolean nm_vpn_plugin_info_supports_hints(NMVpnPluginInfo *self);
NM_AVAILABLE_IN_1_2
NM_AVAILABLE_IN_1_42
gboolean nm_vpn_plugin_info_supports_multiple(NMVpnPluginInfo *self);
NM_AVAILABLE_IN_1_4
const char *const *nm_vpn_plugin_info_get_aliases(NMVpnPluginInfo *self);

View file

@ -166,7 +166,7 @@
#define DESCRIBE_DOC_NM_SETTING_IP4_CONFIG_DHCP_REJECT_SERVERS N_("Array of servers from which DHCP offers must be rejected. This property is useful to avoid getting a lease from misconfigured or rogue servers. For DHCPv4, each element must be an IPv4 address, optionally followed by a slash and a prefix length (e.g. \"192.168.122.0/24\"). This property is currently not implemented for DHCPv6.")
#define DESCRIBE_DOC_NM_SETTING_IP4_CONFIG_DHCP_SEND_HOSTNAME N_("If TRUE, a hostname is sent to the DHCP server when acquiring a lease. Some DHCP servers use this hostname to update DNS databases, essentially providing a static hostname for the computer. If the \"dhcp-hostname\" property is NULL and this property is TRUE, the current persistent hostname of the computer is sent.")
#define DESCRIBE_DOC_NM_SETTING_IP4_CONFIG_DHCP_TIMEOUT N_("A timeout for a DHCP transaction in seconds. If zero (the default), a globally configured default is used. If still unspecified, a device specific timeout is used (usually 45 seconds). Set to 2147483647 (MAXINT32) for infinity.")
#define DESCRIBE_DOC_NM_SETTING_IP4_CONFIG_DHCP_VENDOR_CLASS_IDENTIFIER N_("The Vendor Class Identifier DHCP option (60). Special characters in the data string may be escaped using C-style escapes, nevertheless this property cannot contain nul bytes. If the per-profile value is unspecified (the default), a global connection default gets consulted. If still unspecified, the DHCP option is not sent to the server. Since 1.28")
#define DESCRIBE_DOC_NM_SETTING_IP4_CONFIG_DHCP_VENDOR_CLASS_IDENTIFIER N_("The Vendor Class Identifier DHCP option (60). Special characters in the data string may be escaped using C-style escapes, nevertheless this property cannot contain nul bytes. If the per-profile value is unspecified (the default), a global connection default gets consulted. If still unspecified, the DHCP option is not sent to the server.")
#define DESCRIBE_DOC_NM_SETTING_IP4_CONFIG_DNS N_("Array of IP addresses of DNS servers. For DoT (DNS over TLS), the SNI server name can be specified by appending \"#example.com\" to the IP address of the DNS server. This currently only has effect when using systemd-resolved.")
#define DESCRIBE_DOC_NM_SETTING_IP4_CONFIG_DNS_OPTIONS N_("Array of DNS options as described in man 5 resolv.conf. NULL means that the options are unset and left at the default. In this case NetworkManager will use default options. This is distinct from an empty list of properties. The currently supported options are \"attempts\", \"debug\", \"edns0\", \"inet6\", \"ip6-bytestring\", \"ip6-dotint\", \"ndots\", \"no-check-names\", \"no-ip6-dotint\", \"no-reload\", \"no-tld-query\", \"rotate\", \"single-request\", \"single-request-reopen\", \"timeout\", \"trust-ad\", \"use-vc\". The \"trust-ad\" setting is only honored if the profile contributes name servers to resolv.conf, and if all contributing profiles have \"trust-ad\" enabled. When using a caching DNS plugin (dnsmasq or systemd-resolved in NetworkManager.conf) then \"edns0\" and \"trust-ad\" are automatically added.")
#define DESCRIBE_DOC_NM_SETTING_IP4_CONFIG_DNS_PRIORITY N_("DNS servers priority. The relative priority for DNS servers specified by this setting. A lower numerical value is better (higher priority). Negative values have the special effect of excluding other configurations with a greater numerical priority value; so in presence of at least one negative priority, only DNS servers from connections with the lowest priority value will be used. To avoid all DNS leaks, set the priority of the profile that should be used to the most negative value of all active connections profiles. Zero selects a globally configured default value. If the latter is missing or zero too, it defaults to 50 for VPNs (including WireGuard) and 100 for other connections. Note that the priority is to order DNS settings for multiple active connections. It does not disambiguate multiple DNS servers within the same connection profile. When multiple devices have configurations with the same priority, VPNs will be considered first, then devices with the best (lowest metric) default route and then all other devices. When using dns=default, servers with higher priority will be on top of resolv.conf. To prioritize a given server over another one within the same connection, just specify them in the desired order. Note that commonly the resolver tries name servers in /etc/resolv.conf in the order listed, proceeding with the next server in the list on failure. See for example the \"rotate\" option of the dns-options setting. If there are any negative DNS priorities, then only name servers from the devices with that lowest priority will be considered. When using a DNS resolver that supports Conditional Forwarding or Split DNS (with dns=dnsmasq or dns=systemd-resolved settings), each connection is used to query domains in its search list. The search domains determine which name servers to ask, and the DNS priority is used to prioritize name servers based on the domain. Queries for domains not present in any search list are routed through connections having the '~.' special wildcard domain, which is added automatically to connections with the default route (or can be added manually). When multiple connections specify the same domain, the one with the best priority (lowest numerical value) wins. If a sub domain is configured on another interface it will be accepted regardless the priority, unless parent domain on the other interface has a negative priority, which causes the sub domain to be shadowed. With Split DNS one can avoid undesired DNS leaks by properly configuring DNS priorities and the search domains, so that only name servers of the desired interface are configured.")
@ -174,7 +174,7 @@
#define DESCRIBE_DOC_NM_SETTING_IP4_CONFIG_GATEWAY N_("The gateway associated with this configuration. This is only meaningful if \"addresses\" is also set. Setting the gateway causes NetworkManager to configure a standard default route with the gateway as next hop. This is ignored if \"never-default\" is set. An alternative is to configure the default route explicitly with a manual route and /0 as prefix length. Note that the gateway usually conflicts with routing that NetworkManager configures for WireGuard interfaces, so usually it should not be set in that case. See \"ip4-auto-default-route\".")
#define DESCRIBE_DOC_NM_SETTING_IP4_CONFIG_IGNORE_AUTO_DNS N_("When \"method\" is set to \"auto\" and this property to TRUE, automatically configured name servers and search domains are ignored and only name servers and search domains specified in the \"dns\" and \"dns-search\" properties, if any, are used.")
#define DESCRIBE_DOC_NM_SETTING_IP4_CONFIG_IGNORE_AUTO_ROUTES N_("When \"method\" is set to \"auto\" and this property to TRUE, automatically configured routes are ignored and only routes specified in the \"routes\" property, if any, are used.")
#define DESCRIBE_DOC_NM_SETTING_IP4_CONFIG_LINK_LOCAL N_("Enable and disable the IPv4 link-local configuration independently of the ipv4.method configuration. This allows a link-local address (169.254.x.y/16) to be obtained in addition to other addresses, such as those manually configured or obtained from a DHCP server. When set to \"auto\", the value is dependent on \"ipv4.method\". When set to \"default\", it honors the global connection default, before falling back to \"auto\". Note that if \"ipv4.method\" is \"disabled\", then link local addressing is always disabled too. The default is \"default\". Since 1.40")
#define DESCRIBE_DOC_NM_SETTING_IP4_CONFIG_LINK_LOCAL N_("Enable and disable the IPv4 link-local configuration independently of the ipv4.method configuration. This allows a link-local address (169.254.x.y/16) to be obtained in addition to other addresses, such as those manually configured or obtained from a DHCP server. When set to \"auto\", the value is dependent on \"ipv4.method\". When set to \"default\", it honors the global connection default, before falling back to \"auto\". Note that if \"ipv4.method\" is \"disabled\", then link local addressing is always disabled too. The default is \"default\".")
#define DESCRIBE_DOC_NM_SETTING_IP4_CONFIG_MAY_FAIL N_("If TRUE, allow overall network configuration to proceed even if the configuration specified by this property times out. Note that at least one IP configuration must succeed or overall network configuration will still fail. For example, in IPv6-only networks, setting this property to TRUE on the NMSettingIP4Config allows the overall network configuration to succeed if IPv4 configuration fails but IPv6 configuration completes successfully.")
#define DESCRIBE_DOC_NM_SETTING_IP4_CONFIG_METHOD N_("IP configuration method. NMSettingIP4Config and NMSettingIP6Config both support \"disabled\", \"auto\", \"manual\", and \"link-local\". See the subclass-specific documentation for other values. In general, for the \"auto\" method, properties such as \"dns\" and \"routes\" specify information that is added on to the information returned from automatic configuration. The \"ignore-auto-routes\" and \"ignore-auto-dns\" properties modify this behavior. For methods that imply no upstream network, such as \"shared\" or \"link-local\", these properties must be empty. For IPv4 method \"shared\", the IP subnet can be configured by adding one manual IPv4 address or otherwise 10.42.x.0/24 is chosen. Note that the shared method must be configured on the interface which shares the internet to a subnet, not on the uplink which is shared.")
#define DESCRIBE_DOC_NM_SETTING_IP4_CONFIG_NEVER_DEFAULT N_("If TRUE, this connection will never be the default connection for this IP type, meaning it will never be assigned the default route by NetworkManager.")

View file

@ -699,9 +699,9 @@
<property name="dad-timeout"
description="Timeout in milliseconds used to check for the presence of duplicate IP addresses on the network. If an address conflict is detected, the activation will fail. A zero value means that no duplicate address detection is performed, -1 means the default value (either configuration ipvx.dad-timeout override or zero). A value greater than zero is a timeout in milliseconds. The property is currently implemented only for IPv4." />
<property name="dhcp-vendor-class-identifier"
description="The Vendor Class Identifier DHCP option (60). Special characters in the data string may be escaped using C-style escapes, nevertheless this property cannot contain nul bytes. If the per-profile value is unspecified (the default), a global connection default gets consulted. If still unspecified, the DHCP option is not sent to the server. Since 1.28" />
description="The Vendor Class Identifier DHCP option (60). Special characters in the data string may be escaped using C-style escapes, nevertheless this property cannot contain nul bytes. If the per-profile value is unspecified (the default), a global connection default gets consulted. If still unspecified, the DHCP option is not sent to the server." />
<property name="link-local"
description="Enable and disable the IPv4 link-local configuration independently of the ipv4.method configuration. This allows a link-local address (169.254.x.y/16) to be obtained in addition to other addresses, such as those manually configured or obtained from a DHCP server. When set to &quot;auto&quot;, the value is dependent on &quot;ipv4.method&quot;. When set to &quot;default&quot;, it honors the global connection default, before falling back to &quot;auto&quot;. Note that if &quot;ipv4.method&quot; is &quot;disabled&quot;, then link local addressing is always disabled too. The default is &quot;default&quot;. Since 1.40" />
description="Enable and disable the IPv4 link-local configuration independently of the ipv4.method configuration. This allows a link-local address (169.254.x.y/16) to be obtained in addition to other addresses, such as those manually configured or obtained from a DHCP server. When set to &quot;auto&quot;, the value is dependent on &quot;ipv4.method&quot;. When set to &quot;default&quot;, it honors the global connection default, before falling back to &quot;auto&quot;. Note that if &quot;ipv4.method&quot; is &quot;disabled&quot;, then link local addressing is always disabled too. The default is &quot;default&quot;." />
<property name="dhcp-reject-servers"
description="Array of servers from which DHCP offers must be rejected. This property is useful to avoid getting a lease from misconfigured or rogue servers. For DHCPv4, each element must be an IPv4 address, optionally followed by a slash and a prefix length (e.g. &quot;192.168.122.0/24&quot;). This property is currently not implemented for DHCPv6." />
</setting>