diff options
Diffstat (limited to 'src/libnm-core-impl/nm-setting-connection.c')
| -rw-r--r-- | src/libnm-core-impl/nm-setting-connection.c | 50 |
1 files changed, 48 insertions, 2 deletions
diff --git a/src/libnm-core-impl/nm-setting-connection.c b/src/libnm-core-impl/nm-setting-connection.c index ec3a1fed..0ad97846 100644 --- a/src/libnm-core-impl/nm-setting-connection.c +++ b/src/libnm-core-impl/nm-setting-connection.c @@ -71,6 +71,7 @@ NM_GOBJECT_PROPERTIES_DEFINE(NMSettingConnection, PROP_MDNS, PROP_LLMNR, PROP_DNS_OVER_TLS, + PROP_DNSSEC, PROP_MPTCP_FLAGS, PROP_STABLE_ID, PROP_AUTH_RETRIES, @@ -103,6 +104,7 @@ typedef struct { gint32 mdns; gint32 llmnr; gint32 dns_over_tls; + gint32 dnssec; gint32 wait_device_timeout; gint32 lldp; gint32 wait_activation_delay; @@ -1335,6 +1337,22 @@ nm_setting_connection_get_dns_over_tls(NMSettingConnection *setting) } /** + * nm_setting_connection_get_dnssec: + * @setting: the #NMSettingConnection + * + * Returns: the #NMSettingConnection:dnssec property of the setting. + * + * Since: 1.56 + **/ +NMSettingConnectionDnssec +nm_setting_connection_get_dnssec(NMSettingConnection *setting) +{ + g_return_val_if_fail(NM_IS_SETTING_CONNECTION(setting), NM_SETTING_CONNECTION_DNSSEC_DEFAULT); + + return NM_SETTING_CONNECTION_GET_PRIVATE(setting)->dnssec; +} + +/** * nm_setting_connection_get_mptcp_flags: * @setting: the #NMSettingConnection * @@ -3447,6 +3465,33 @@ nm_setting_connection_class_init(NMSettingConnectionClass *klass) NMSettingConnectionPrivate, dns_over_tls); + /** + * NMSettingConnection:dnssec: + * + * Whether DNSSEC (dnssec) is enabled for the connection. + * + * The permitted values are: "yes" (2) use DNSSEC and disable fallback, + * "allow-downgrade" (1) use DNSSEC but allow fallback if the server does not support it, + * "no" (0) don't ever use DNSSEC. + * The effect of "default" (-1) depends on the dns plugin used. + * Systemd-resolved uses its global setting in this case. + * + * This feature requires a plugin which supports DNSSEC. Otherwise, the + * setting has no effect. One such plugin is systemd-resolved. + * + * Since: 1.56 + **/ + _nm_setting_property_define_direct_enum(properties_override, + obj_properties, + NM_SETTING_CONNECTION_DNSSEC, + PROP_DNSSEC, + NM_TYPE_SETTING_CONNECTION_DNSSEC, + NM_SETTING_CONNECTION_DNSSEC_DEFAULT, + NM_SETTING_PARAM_NONE, + NULL, + NMSettingConnectionPrivate, + dnssec); + /* Notes about "mptcp-flags": * * It is a bit odd that NMMptcpFlags mixes flags with different purposes: @@ -3454,7 +3499,7 @@ nm_setting_connection_class_init(NMSettingConnectionClass *klass) * - "disabled", "disabled-on-local-iface", "enable": whether MPTCP handling * is enabled. The flag "disabled-on-local-iface" enables it based on whether * the interface has a default route. - * - "signal", "subflow", "backup", "fullmesh": the endpoint flags + * - "signal", "subflow", "backup", "fullmesh", "laminar": the endpoint flags * that are used. * * The reason is, that it is useful to have one "connection.mptcp-flags" @@ -3514,7 +3559,8 @@ nm_setting_connection_class_init(NMSettingConnectionClass *klass) * * When MPTCP handling is enabled then endpoints are configured with * the specified address flags "signal" (0x10), "subflow" (0x20), "backup" (0x40), - * "fullmesh" (0x80). See ip-mptcp(8) manual for additional information about the flags. + * "fullmesh" (0x80), "laminar" (0x100). See ip-mptcp(8) manual for + * additional information about the flags. * * If the flags are zero (0x0), the global connection default from NetworkManager.conf is * honored. If still unspecified, the fallback is "enabled,subflow". |