about summary refs log tree commit diff
path: root/src/libnm-core-public/nm-setting-ip-config.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libnm-core-public/nm-setting-ip-config.h')
-rw-r--r--src/libnm-core-public/nm-setting-ip-config.h84
1 files changed, 57 insertions, 27 deletions
diff --git a/src/libnm-core-public/nm-setting-ip-config.h b/src/libnm-core-public/nm-setting-ip-config.h
index 3b732882..f0a29f14 100644
--- a/src/libnm-core-public/nm-setting-ip-config.h
+++ b/src/libnm-core-public/nm-setting-ip-config.h
@@ -36,6 +36,23 @@ typedef enum /*< flags >*/ {
     NM_IP_ADDRESS_CMP_FLAGS_WITH_ATTRS = 0x1,
 } NMIPAddressCmpFlags;
 
+/**
+ * NMSettingIPConfigRoutedDns:
+ * @NM_SETTING_IP_CONFIG_ROUTED_DNS_DEFAULT: use the global default value
+ * @NM_SETTING_IP_CONFIG_ROUTED_DNS_NO: do not add DNS routes
+ * @NM_SETTING_IP_CONFIG_ROUTED_DNS_YES: do add DNS routes
+ *
+ * #NMSettingIPConfigRoutedDns indicates whether routes are added
+ * automatically for each DNS that is associated with this connection.
+ *
+ * Since: 1.52
+ */
+typedef enum {
+    NM_SETTING_IP_CONFIG_ROUTED_DNS_DEFAULT = -1,
+    NM_SETTING_IP_CONFIG_ROUTED_DNS_NO      = 0,
+    NM_SETTING_IP_CONFIG_ROUTED_DNS_YES     = 1,
+} NMSettingIPConfigRoutedDns;
+
 typedef struct NMIPAddress NMIPAddress;
 
 GType nm_ip_address_get_type(void);
@@ -317,32 +334,36 @@ char *nm_ip_routing_rule_to_string(const NMIPRoutingRule       *self,
 
 #define NM_SETTING_IP_CONFIG_DAD_TIMEOUT_MAX 30000
 
-#define NM_SETTING_IP_CONFIG_METHOD              "method"
-#define NM_SETTING_IP_CONFIG_DNS                 "dns"
-#define NM_SETTING_IP_CONFIG_DNS_SEARCH          "dns-search"
-#define NM_SETTING_IP_CONFIG_DNS_OPTIONS         "dns-options"
-#define NM_SETTING_IP_CONFIG_DNS_PRIORITY        "dns-priority"
-#define NM_SETTING_IP_CONFIG_ADDRESSES           "addresses"
-#define NM_SETTING_IP_CONFIG_GATEWAY             "gateway"
-#define NM_SETTING_IP_CONFIG_ROUTES              "routes"
-#define NM_SETTING_IP_CONFIG_ROUTE_METRIC        "route-metric"
-#define NM_SETTING_IP_CONFIG_ROUTE_TABLE         "route-table"
-#define NM_SETTING_IP_CONFIG_IGNORE_AUTO_ROUTES  "ignore-auto-routes"
-#define NM_SETTING_IP_CONFIG_IGNORE_AUTO_DNS     "ignore-auto-dns"
-#define NM_SETTING_IP_CONFIG_DHCP_HOSTNAME       "dhcp-hostname"
-#define NM_SETTING_IP_CONFIG_DHCP_SEND_HOSTNAME  "dhcp-send-hostname"
-#define NM_SETTING_IP_CONFIG_DHCP_HOSTNAME_FLAGS "dhcp-hostname-flags"
-#define NM_SETTING_IP_CONFIG_DHCP_DSCP           "dhcp-dscp"
-#define NM_SETTING_IP_CONFIG_NEVER_DEFAULT       "never-default"
-#define NM_SETTING_IP_CONFIG_MAY_FAIL            "may-fail"
-#define NM_SETTING_IP_CONFIG_DAD_TIMEOUT         "dad-timeout"
-#define NM_SETTING_IP_CONFIG_DHCP_TIMEOUT        "dhcp-timeout"
-#define NM_SETTING_IP_CONFIG_REQUIRED_TIMEOUT    "required-timeout"
-#define NM_SETTING_IP_CONFIG_DHCP_IAID           "dhcp-iaid"
-#define NM_SETTING_IP_CONFIG_DHCP_REJECT_SERVERS "dhcp-reject-servers"
-#define NM_SETTING_IP_CONFIG_AUTO_ROUTE_EXT_GW   "auto-route-ext-gw"
-#define NM_SETTING_IP_CONFIG_REPLACE_LOCAL_RULE  "replace-local-rule"
-#define NM_SETTING_IP_CONFIG_DHCP_SEND_RELEASE   "dhcp-send-release"
+#define NM_SETTING_IP_CONFIG_METHOD                 "method"
+#define NM_SETTING_IP_CONFIG_DNS                    "dns"
+#define NM_SETTING_IP_CONFIG_DNS_SEARCH             "dns-search"
+#define NM_SETTING_IP_CONFIG_DNS_OPTIONS            "dns-options"
+#define NM_SETTING_IP_CONFIG_DNS_PRIORITY           "dns-priority"
+#define NM_SETTING_IP_CONFIG_ADDRESSES              "addresses"
+#define NM_SETTING_IP_CONFIG_GATEWAY                "gateway"
+#define NM_SETTING_IP_CONFIG_ROUTES                 "routes"
+#define NM_SETTING_IP_CONFIG_ROUTE_METRIC           "route-metric"
+#define NM_SETTING_IP_CONFIG_ROUTE_TABLE            "route-table"
+#define NM_SETTING_IP_CONFIG_IGNORE_AUTO_ROUTES     "ignore-auto-routes"
+#define NM_SETTING_IP_CONFIG_IGNORE_AUTO_DNS        "ignore-auto-dns"
+#define NM_SETTING_IP_CONFIG_DHCP_HOSTNAME          "dhcp-hostname"
+#define NM_SETTING_IP_CONFIG_DHCP_SEND_HOSTNAME     "dhcp-send-hostname"
+#define NM_SETTING_IP_CONFIG_DHCP_SEND_HOSTNAME_V2  "dhcp-send-hostname-v2"
+#define NM_SETTING_IP_CONFIG_DHCP_HOSTNAME_FLAGS    "dhcp-hostname-flags"
+#define NM_SETTING_IP_CONFIG_DHCP_DSCP              "dhcp-dscp"
+#define NM_SETTING_IP_CONFIG_NEVER_DEFAULT          "never-default"
+#define NM_SETTING_IP_CONFIG_MAY_FAIL               "may-fail"
+#define NM_SETTING_IP_CONFIG_DAD_TIMEOUT            "dad-timeout"
+#define NM_SETTING_IP_CONFIG_DHCP_TIMEOUT           "dhcp-timeout"
+#define NM_SETTING_IP_CONFIG_REQUIRED_TIMEOUT       "required-timeout"
+#define NM_SETTING_IP_CONFIG_DHCP_IAID              "dhcp-iaid"
+#define NM_SETTING_IP_CONFIG_DHCP_REJECT_SERVERS    "dhcp-reject-servers"
+#define NM_SETTING_IP_CONFIG_AUTO_ROUTE_EXT_GW      "auto-route-ext-gw"
+#define NM_SETTING_IP_CONFIG_REPLACE_LOCAL_RULE     "replace-local-rule"
+#define NM_SETTING_IP_CONFIG_DHCP_SEND_RELEASE      "dhcp-send-release"
+#define NM_SETTING_IP_CONFIG_ROUTED_DNS             "routed-dns"
+#define NM_SETTING_IP_CONFIG_SHARED_DHCP_RANGE      "shared-dhcp-range"
+#define NM_SETTING_IP_CONFIG_SHARED_DHCP_LEASE_TIME "shared-dhcp-lease-time"
 
 /* these are not real GObject properties. */
 #define NM_SETTING_IP_CONFIG_ROUTING_RULES "routing-rules"
@@ -479,7 +500,8 @@ gboolean nm_setting_ip_config_get_ignore_auto_routes(NMSettingIPConfig *setting)
 gboolean nm_setting_ip_config_get_ignore_auto_dns(NMSettingIPConfig *setting);
 
 const char *nm_setting_ip_config_get_dhcp_hostname(NMSettingIPConfig *setting);
-gboolean    nm_setting_ip_config_get_dhcp_send_hostname(NMSettingIPConfig *setting);
+NM_DEPRECATED_IN_1_52
+gboolean nm_setting_ip_config_get_dhcp_send_hostname(NMSettingIPConfig *setting);
 NM_AVAILABLE_IN_1_46
 const char *nm_setting_ip_config_get_dhcp_dscp(NMSettingIPConfig *setting);
 
@@ -512,6 +534,14 @@ NM_AVAILABLE_IN_1_44
 NMTernary nm_setting_ip_config_get_replace_local_rule(NMSettingIPConfig *setting);
 NM_AVAILABLE_IN_1_48
 NMTernary nm_setting_ip_config_get_dhcp_send_release(NMSettingIPConfig *setting);
+NM_AVAILABLE_IN_1_52
+NMSettingIPConfigRoutedDns nm_setting_ip_config_get_routed_dns(NMSettingIPConfig *setting);
+NM_AVAILABLE_IN_1_52
+NMTernary nm_setting_ip_config_get_dhcp_send_hostname_v2(NMSettingIPConfig *setting);
+NM_AVAILABLE_IN_1_52
+const char *nm_setting_ip_config_get_shared_dhcp_range(NMSettingIPConfig *setting);
+NM_AVAILABLE_IN_1_52
+int nm_setting_ip_config_get_shared_dhcp_lease_time(NMSettingIPConfig *setting);
 
 G_END_DECLS