11#include <QHostAddress>
13#define DTK_NM_SETTING_IP6_CONFIG_SETTING_NAME NM_SETTING_IP6_CONFIG_SETTING_NAME
14#define DTK_NM_SETTING_IP6_CONFIG_METHOD NM_SETTING_IP_CONFIG_METHOD
15#define DTK_NM_SETTING_IP6_CONFIG_DNS NM_SETTING_IP_CONFIG_DNS
16#define DTK_NM_SETTING_IP6_CONFIG_DNS_SEARCH NM_SETTING_IP_CONFIG_DNS_SEARCH
17#define DTK_NM_SETTING_IP6_CONFIG_ADDRESSES NM_SETTING_IP_CONFIG_ADDRESSES
18#define DTK_NM_SETTING_IP6_CONFIG_GATEWAY NM_SETTING_IP_CONFIG_GATEWAY
19#define DTK_NM_SETTING_IP6_CONFIG_ROUTES NM_SETTING_IP_CONFIG_ROUTES
20#define DTK_NM_SETTING_IP6_CONFIG_ROUTE_METRIC NM_SETTING_IP_CONFIG_ROUTE_METRIC
21#define DTK_NM_SETTING_IP6_CONFIG_IGNORE_AUTO_ROUTES NM_SETTING_IP_CONFIG_IGNORE_AUTO_ROUTES
22#define DTK_NM_SETTING_IP6_CONFIG_IGNORE_AUTO_DNS NM_SETTING_IP_CONFIG_IGNORE_AUTO_DNS
23#define DTK_NM_SETTING_IP6_CONFIG_DHCP_HOSTNAME NM_SETTING_IP_CONFIG_DHCP_HOSTNAME
24#define DTK_NM_SETTING_IP6_CONFIG_DHCP_SEND_HOSTNAME NM_SETTING_IP_CONFIG_DHCP_SEND_HOSTNAME
25#define DTK_NM_SETTING_IP6_CONFIG_NEVER_DEFAULT NM_SETTING_IP_CONFIG_NEVER_DEFAULT
26#define DTK_NM_SETTING_IP6_CONFIG_MAY_FAIL NM_SETTING_IP_CONFIG_MAY_FAIL
27#define DTK_NM_SETTING_IP6_CONFIG_DHCP_CLIENT_ID NM_SETTING_IP6_CONFIG_DHCP_CLIENT_ID
28#define DTK_NM_SETTING_IP6_CONFIG_IP6_PRIVACY NM_SETTING_IP6_CONFIG_IP6_PRIVACY
29#define DTK_NM_SETTING_IP6_CONFIG_METHOD_IGNORE NM_SETTING_IP6_CONFIG_METHOD_IGNORE
30#define DTK_NM_SETTING_IP6_CONFIG_METHOD_AUTO NM_SETTING_IP6_CONFIG_METHOD_AUTO
31#define DTK_NM_SETTING_IP6_CONFIG_METHOD_DHCP NM_SETTING_IP6_CONFIG_METHOD_DHCP
32#define DTK_NM_SETTING_IP6_CONFIG_METHOD_LINK_LOCAL NM_SETTING_IP6_CONFIG_METHOD_LINK_LOCAL
33#define DTK_NM_SETTING_IP6_CONFIG_METHOD_MANUAL NM_SETTING_IP6_CONFIG_METHOD_MANUAL
34#define DTK_NM_SETTING_IP6_CONFIG_METHOD_SHARED NM_SETTING_IP6_CONFIG_METHOD_SHARED
35#if NM_CHECK_VERSION(1, 20, 0)
36#define DTK_NM_SETTING_IP6_CONFIG_METHOD_DISABLED NM_SETTING_IP6_CONFIG_METHOD_DISABLED
38#define DTK_NM_SETTING_IP6_CONFIG_METHOD_DISABLED "disabled"
40#define DTK_NM_SETTING_IP6_CONFIG_DAD_TIMEOUT NM_SETTING_IP_CONFIG_DAD_TIMEOUT
41#define DTK_NM_SETTING_IP6_CONFIG_DHCP_TIMEOUT NM_SETTING_IP_CONFIG_DHCP_TIMEOUT
42#define DTK_NM_SETTING_IP6_CONFIG_DHCP_HOSTNAME NM_SETTING_IP_CONFIG_DHCP_HOSTNAME
43#define DTK_NM_SETTING_IP6_CONFIG_ADDRESS_GEN_MODE NM_SETTING_IP6_CONFIG_ADDR_GEN_MODE
44#define DTK_NM_SETTING_IP6_CONFIG_DHCP_DUID NM_SETTING_IP6_CONFIG_DHCP_DUID
45#define DTK_NM_SETTING_IP6_CONFIG_TOKEN NM_SETTING_IP6_CONFIG_TOKEN
46#define DTK_NM_SETTING_IP6_CONFIG_DNS_OPTIONS NM_SETTING_IP_CONFIG_DNS_OPTIONS
47#define DTK_NM_SETTING_IP6_CONFIG_ROUTE_TABLE NM_SETTING_IP_CONFIG_ROUTE_TABLE
48#define DTK_NM_SETTING_IP6_CONFIG_ROUTE_DATA "route-data"
49#define DTK_NM_SETTING_IP6_CONFIG_ADDRESS_DATA "address-data"
51DNETWORKMANAGER_BEGIN_NAMESPACE
53class DIpv6SettingPrivate;
58 enum class IPv6Privacy {
64 enum class IPv6AddressGenMode {
70 explicit DIpv6Setting(
const QSharedPointer<DIpv6Setting> &other);
73 QString name()
const override;
78 void setDns(
const QList<QHostAddress> &dns);
79 QList<QHostAddress> dns()
const;
81 void setDnsSearch(
const QStringList &domains);
82 QStringList dnsSearch()
const;
84 void setRouteMetric(
int metric);
85 int routeMetric()
const;
87 void setIgnoreAutoRoutes(
bool ignore);
88 bool ignoreAutoRoutes()
const;
90 void setIgnoreAutoDns(
bool ignore);
91 bool ignoreAutoDns()
const;
93 void setNeverDefault(
bool neverDefault);
94 bool neverDefault()
const;
96 void setMayFail(
bool mayFail);
99 void setPrivacy(IPv6Privacy privacy);
100 IPv6Privacy privacy()
const;
102 void fromMap(
const QVariantMap &setting)
override;
104 QVariantMap toMap()
const override;
106 void setDadTimeout(qint32 timeout);
107 qint32 dadTimeout()
const;
109 void setAddressGenMode(IPv6AddressGenMode mode);
110 IPv6AddressGenMode addressGenMode()
const;
112 void setDhcpTimeout(qint32 timeout);
113 qint32 dhcpTimeout()
const;
115 void setDhcpHostname(
const QString &hostname);
116 QString dhcpHostname()
const;
118 void setDhcpDuid(
const QString &duid);
119 QString dhcpDuid()
const;
121 void setToken(
const QString &token);
122 QString token()
const;
124 void setDnsOptions(
const QStringList &options);
125 QStringList dnsOptions()
const;
127 void setAddressData(
const QList<Config> &addressData);
128 QList<Config> addressData()
const;
130 void setRouteData(
const QList<Config> &routeData);
131 QList<Config> routeData()
const;
133 void setRouteTable(quint32 routeTable);
134 quint32 routeTable()
const;
137 QScopedPointer<DIpv6SettingPrivate> d_ptr;
143DNETWORKMANAGER_END_NAMESPACE
145Q_DECLARE_METATYPE(DTK_DNETWORKMANAGER_NAMESPACE::DIpv6Setting::IPv6Privacy)
146Q_DECLARE_METATYPE(DTK_DNETWORKMANAGER_NAMESPACE::DIpv6Setting::IPv6AddressGenMode)
Definition: dipv6setting.h:56
DNMSetting类
Definition: dnmsetting.h:26
NMConfigMethod
本枚举代表Ipv4/Ipv6配置文件中method配置项的值
Definition: dnetworkmanagertypes.h:247