NMSettingIP6Config

NMSettingIP6Config — Describes IPv6 addressing, routing, and name service properties

Synopsis

#include <nm-setting-ip6-config.h>

#define             NM_SETTING_IP6_CONFIG_SETTING_NAME
enum                NMSettingIP6ConfigError;
#define             NM_SETTING_IP6_CONFIG_ERROR
GQuark              nm_setting_ip6_config_error_quark   (void);
#define             NM_SETTING_IP6_CONFIG_METHOD
#define             NM_SETTING_IP6_CONFIG_DNS
#define             NM_SETTING_IP6_CONFIG_DNS_SEARCH
#define             NM_SETTING_IP6_CONFIG_ADDRESSES
#define             NM_SETTING_IP6_CONFIG_ROUTES
#define             NM_SETTING_IP6_CONFIG_IGNORE_AUTO_ROUTES
#define             NM_SETTING_IP6_CONFIG_IGNORE_AUTO_DNS
#define             NM_SETTING_IP6_CONFIG_NEVER_DEFAULT
#define             NM_SETTING_IP6_CONFIG_MAY_FAIL
#define             NM_SETTING_IP6_CONFIG_IP6_PRIVACY
#define             NM_SETTING_IP6_CONFIG_DHCP_HOSTNAME
#define             NM_SETTING_IP6_CONFIG_METHOD_IGNORE
#define             NM_SETTING_IP6_CONFIG_METHOD_AUTO
#define             NM_SETTING_IP6_CONFIG_METHOD_DHCP
#define             NM_SETTING_IP6_CONFIG_METHOD_LINK_LOCAL
#define             NM_SETTING_IP6_CONFIG_METHOD_MANUAL
#define             NM_SETTING_IP6_CONFIG_METHOD_SHARED
enum                NMSettingIP6ConfigPrivacy;
typedef             NMIP6Address;
NMIP6Address *      nm_ip6_address_new                  (void);
NMIP6Address *      nm_ip6_address_dup                  (NMIP6Address *source);
void                nm_ip6_address_ref                  (NMIP6Address *address);
void                nm_ip6_address_unref                (NMIP6Address *address);
gboolean            nm_ip6_address_compare              (NMIP6Address *address,
                                                         NMIP6Address *other);
const struct in6_addr * nm_ip6_address_get_address      (NMIP6Address *address);
void                nm_ip6_address_set_address          (NMIP6Address *address,
                                                         const struct in6_addr *addr);
guint32             nm_ip6_address_get_prefix           (NMIP6Address *address);
void                nm_ip6_address_set_prefix           (NMIP6Address *address,
                                                         guint32 prefix);
const struct in6_addr * nm_ip6_address_get_gateway      (NMIP6Address *address);
void                nm_ip6_address_set_gateway          (NMIP6Address *address,
                                                         const struct in6_addr *gateway);
typedef             NMIP6Route;
NMIP6Route *        nm_ip6_route_new                    (void);
NMIP6Route *        nm_ip6_route_dup                    (NMIP6Route *source);
void                nm_ip6_route_ref                    (NMIP6Route *route);
void                nm_ip6_route_unref                  (NMIP6Route *route);
gboolean            nm_ip6_route_compare                (NMIP6Route *route,
                                                         NMIP6Route *other);
const struct in6_addr * nm_ip6_route_get_dest           (NMIP6Route *route);
void                nm_ip6_route_set_dest               (NMIP6Route *route,
                                                         const struct in6_addr *dest);
guint32             nm_ip6_route_get_prefix             (NMIP6Route *route);
void                nm_ip6_route_set_prefix             (NMIP6Route *route,
                                                         guint32 prefix);
const struct in6_addr * nm_ip6_route_get_next_hop       (NMIP6Route *route);
void                nm_ip6_route_set_next_hop           (NMIP6Route *route,
                                                         const struct in6_addr *next_hop);
guint32             nm_ip6_route_get_metric             (NMIP6Route *route);
void                nm_ip6_route_set_metric             (NMIP6Route *route,
                                                         guint32 metric);
                    NMSettingIP6Config;
                    NMSettingIP6ConfigClass;
NMSetting *         nm_setting_ip6_config_new           (void);
const char *        nm_setting_ip6_config_get_method    (NMSettingIP6Config *setting);
guint32             nm_setting_ip6_config_get_num_dns   (NMSettingIP6Config *setting);
const struct in6_addr * nm_setting_ip6_config_get_dns   (NMSettingIP6Config *setting,
                                                         guint32 i);
gboolean            nm_setting_ip6_config_add_dns       (NMSettingIP6Config *setting,
                                                         const struct in6_addr *dns);
void                nm_setting_ip6_config_remove_dns    (NMSettingIP6Config *setting,
                                                         guint32 i);
gboolean            nm_setting_ip6_config_remove_dns_by_value
                                                        (NMSettingIP6Config *setting,
                                                         const struct in6_addr *dns);
void                nm_setting_ip6_config_clear_dns     (NMSettingIP6Config *setting);
guint32             nm_setting_ip6_config_get_num_dns_searches
                                                        (NMSettingIP6Config *setting);
const char *        nm_setting_ip6_config_get_dns_search
                                                        (NMSettingIP6Config *setting,
                                                         guint32 i);
gboolean            nm_setting_ip6_config_add_dns_search
                                                        (NMSettingIP6Config *setting,
                                                         const char *dns_search);
void                nm_setting_ip6_config_remove_dns_search
                                                        (NMSettingIP6Config *setting,
                                                         guint32 i);
gboolean            nm_setting_ip6_config_remove_dns_search_by_value
                                                        (NMSettingIP6Config *setting,
                                                         const char *dns_search);
void                nm_setting_ip6_config_clear_dns_searches
                                                        (NMSettingIP6Config *setting);
guint32             nm_setting_ip6_config_get_num_addresses
                                                        (NMSettingIP6Config *setting);
NMIP6Address *      nm_setting_ip6_config_get_address   (NMSettingIP6Config *setting,
                                                         guint32 i);
gboolean            nm_setting_ip6_config_add_address   (NMSettingIP6Config *setting,
                                                         NMIP6Address *address);
void                nm_setting_ip6_config_remove_address
                                                        (NMSettingIP6Config *setting,
                                                         guint32 i);
gboolean            nm_setting_ip6_config_remove_address_by_value
                                                        (NMSettingIP6Config *setting,
                                                         NMIP6Address *address);
void                nm_setting_ip6_config_clear_addresses
                                                        (NMSettingIP6Config *setting);
guint32             nm_setting_ip6_config_get_num_routes
                                                        (NMSettingIP6Config *setting);
NMIP6Route *        nm_setting_ip6_config_get_route     (NMSettingIP6Config *setting,
                                                         guint32 i);
gboolean            nm_setting_ip6_config_add_route     (NMSettingIP6Config *setting,
                                                         NMIP6Route *route);
void                nm_setting_ip6_config_remove_route  (NMSettingIP6Config *setting,
                                                         guint32 i);
gboolean            nm_setting_ip6_config_remove_route_by_value
                                                        (NMSettingIP6Config *setting,
                                                         NMIP6Route *route);
void                nm_setting_ip6_config_clear_routes  (NMSettingIP6Config *setting);
gboolean            nm_setting_ip6_config_get_ignore_auto_routes
                                                        (NMSettingIP6Config *setting);
gboolean            nm_setting_ip6_config_get_ignore_auto_dns
                                                        (NMSettingIP6Config *setting);
const char *        nm_setting_ip6_config_get_dhcp_hostname
                                                        (NMSettingIP6Config *setting);
gboolean            nm_setting_ip6_config_get_never_default
                                                        (NMSettingIP6Config *setting);
gboolean            nm_setting_ip6_config_get_may_fail  (NMSettingIP6Config *setting);
NMSettingIP6ConfigPrivacy nm_setting_ip6_config_get_ip6_privacy
                                                        (NMSettingIP6Config *setting);

Object Hierarchy

  GEnum
   +----NMSettingIP6ConfigError
  GEnum
   +----NMSettingIP6ConfigPrivacy
  GBoxed
   +----NMIP6Address
  GBoxed
   +----NMIP6Route
  GObject
   +----NMSetting
         +----NMSettingIP6Config

Properties

  "addresses"                GPtrArray_GValueArray_GArray_guchar_+guint+GArray_guchar___*  : Read / Write
  "dhcp-hostname"            gchar*                : Read / Write
  "dns"                      GPtrArray_GArray_guchar__*  : Read / Write
  "dns-search"               GSList_gchararray_*   : Read / Write
  "ignore-auto-dns"          gboolean              : Read / Write / Construct
  "ignore-auto-routes"       gboolean              : Read / Write / Construct
  "ip6-privacy"              gint                  : Read / Write / Construct
  "may-fail"                 gboolean              : Read / Write / Construct
  "method"                   gchar*                : Read / Write
  "never-default"            gboolean              : Read / Write / Construct
  "routes"                   GPtrArray_GValueArray_GArray_guchar_+guint+GArray_guchar_+guint__*  : Read / Write

Description

The NMSettingIP6Config object is a NMSetting subclass that describes properties related to IPv6 addressing, routing, and Domain Name Service

Details

NM_SETTING_IP6_CONFIG_SETTING_NAME

#define NM_SETTING_IP6_CONFIG_SETTING_NAME "ipv6"


enum NMSettingIP6ConfigError

typedef enum {
	NM_SETTING_IP6_CONFIG_ERROR_UNKNOWN = 0,           /*< nick=UnknownError >*/
	NM_SETTING_IP6_CONFIG_ERROR_INVALID_PROPERTY,      /*< nick=InvalidProperty >*/
	NM_SETTING_IP6_CONFIG_ERROR_MISSING_PROPERTY,      /*< nick=MissingProperty >*/
	NM_SETTING_IP6_CONFIG_ERROR_NOT_ALLOWED_FOR_METHOD /*< nick=NotAllowedForMethod >*/
} NMSettingIP6ConfigError;

NM_SETTING_IP6_CONFIG_ERROR_UNKNOWN

unknown or unclassified error

NM_SETTING_IP6_CONFIG_ERROR_INVALID_PROPERTY

the property was invalid

NM_SETTING_IP6_CONFIG_ERROR_MISSING_PROPERTY

the property was missing and is required

NM_SETTING_IP6_CONFIG_ERROR_NOT_ALLOWED_FOR_METHOD

the property's value is not valid with the given IPv6 method

NM_SETTING_IP6_CONFIG_ERROR

#define NM_SETTING_IP6_CONFIG_ERROR nm_setting_ip6_config_error_quark ()


nm_setting_ip6_config_error_quark ()

GQuark              nm_setting_ip6_config_error_quark   (void);

Registers an error quark for NMSettingIP6Config if necessary.

Returns :

the error quark used for NMSettingIP6Config errors.

NM_SETTING_IP6_CONFIG_METHOD

#define NM_SETTING_IP6_CONFIG_METHOD             "method"


NM_SETTING_IP6_CONFIG_DNS

#define NM_SETTING_IP6_CONFIG_DNS                "dns"


NM_SETTING_IP6_CONFIG_DNS_SEARCH

#define NM_SETTING_IP6_CONFIG_DNS_SEARCH         "dns-search"


NM_SETTING_IP6_CONFIG_ADDRESSES

#define NM_SETTING_IP6_CONFIG_ADDRESSES          "addresses"


NM_SETTING_IP6_CONFIG_ROUTES

#define NM_SETTING_IP6_CONFIG_ROUTES             "routes"


NM_SETTING_IP6_CONFIG_IGNORE_AUTO_ROUTES

#define NM_SETTING_IP6_CONFIG_IGNORE_AUTO_ROUTES "ignore-auto-routes"


NM_SETTING_IP6_CONFIG_IGNORE_AUTO_DNS

#define NM_SETTING_IP6_CONFIG_IGNORE_AUTO_DNS    "ignore-auto-dns"


NM_SETTING_IP6_CONFIG_NEVER_DEFAULT

#define NM_SETTING_IP6_CONFIG_NEVER_DEFAULT      "never-default"


NM_SETTING_IP6_CONFIG_MAY_FAIL

#define NM_SETTING_IP6_CONFIG_MAY_FAIL           "may-fail"


NM_SETTING_IP6_CONFIG_IP6_PRIVACY

#define NM_SETTING_IP6_CONFIG_IP6_PRIVACY        "ip6-privacy"


NM_SETTING_IP6_CONFIG_DHCP_HOSTNAME

#define NM_SETTING_IP6_CONFIG_DHCP_HOSTNAME      "dhcp-hostname"


NM_SETTING_IP6_CONFIG_METHOD_IGNORE

#define NM_SETTING_IP6_CONFIG_METHOD_IGNORE     "ignore"

IPv6 is not required or is handled by some other mechanism, and NetworkManager should not configure IPv6 for this connection.


NM_SETTING_IP6_CONFIG_METHOD_AUTO

#define NM_SETTING_IP6_CONFIG_METHOD_AUTO       "auto"

IPv6 configuration should be automatically determined via a method appropriate for the hardware interface, ie router advertisements, DHCP, or PPP or some other device-specific manner.


NM_SETTING_IP6_CONFIG_METHOD_DHCP

#define NM_SETTING_IP6_CONFIG_METHOD_DHCP       "dhcp"

IPv6 configuration should be automatically determined via DHCPv6 only and router advertisements should be ignored.


NM_SETTING_IP6_CONFIG_METHOD_LINK_LOCAL

#define NM_SETTING_IP6_CONFIG_METHOD_LINK_LOCAL "link-local"

IPv6 configuration should be automatically configured for link-local-only operation.


NM_SETTING_IP6_CONFIG_METHOD_MANUAL

#define NM_SETTING_IP6_CONFIG_METHOD_MANUAL     "manual"

All necessary IPv6 configuration (addresses, prefix, DNS, etc) is specified in the setting's properties.


NM_SETTING_IP6_CONFIG_METHOD_SHARED

#define NM_SETTING_IP6_CONFIG_METHOD_SHARED     "shared"

This connection specifies configuration that allows other computers to connect through it to the default network (usually the Internet). The connection's interface will be assigned a private address, and router advertisements, a caching DNS server, and Network Address Translation (NAT) functionality will be started on this connection's interface to allow other devices to connect through that interface to the default network. (not yet supported for IPv6)


enum NMSettingIP6ConfigPrivacy

typedef enum {
	NM_SETTING_IP6_CONFIG_PRIVACY_UNKNOWN = -1,
	NM_SETTING_IP6_CONFIG_PRIVACY_DISABLED = 0,
	NM_SETTING_IP6_CONFIG_PRIVACY_PREFER_PUBLIC_ADDR = 1,
	NM_SETTING_IP6_CONFIG_PRIVACY_PREFER_TEMP_ADDR = 2
} NMSettingIP6ConfigPrivacy;

NMSettingIP6ConfigPrivacy values indicate if and how IPv6 Privacy Extensions are used (RFC4941).

NM_SETTING_IP6_CONFIG_PRIVACY_UNKNOWN

unknown or no value specified

NM_SETTING_IP6_CONFIG_PRIVACY_DISABLED

IPv6 Privacy Extensions are disabled

NM_SETTING_IP6_CONFIG_PRIVACY_PREFER_PUBLIC_ADDR

IPv6 Privacy Extensions are enabled, but public addresses are preferred over temporary addresses

NM_SETTING_IP6_CONFIG_PRIVACY_PREFER_TEMP_ADDR

IPv6 Privacy Extensions are enabled and temporary addresses are preferred over public addresses

NMIP6Address

typedef struct NMIP6Address NMIP6Address;


nm_ip6_address_new ()

NMIP6Address *      nm_ip6_address_new                  (void);

Creates and returns a new NMIP6Address object.

Returns :

the new empty NMIP6Address object. [transfer full]

nm_ip6_address_dup ()

NMIP6Address *      nm_ip6_address_dup                  (NMIP6Address *source);

Copies a given NMIP6Address object and returns the copy.

source :

the NMIP6Address object to copy

Returns :

the copy of the given NMIP6Address copy. [transfer full]

nm_ip6_address_ref ()

void                nm_ip6_address_ref                  (NMIP6Address *address);

Increases the reference count of the object.

address :

the NMIP6Address

nm_ip6_address_unref ()

void                nm_ip6_address_unref                (NMIP6Address *address);

Decreases the reference count of the object. If the reference count reaches zero, the object will be destroyed.

address :

the NMIP6Address

nm_ip6_address_compare ()

gboolean            nm_ip6_address_compare              (NMIP6Address *address,
                                                         NMIP6Address *other);

Determines if two NMIP6Address objects contain the same values.

address :

the NMIP6Address

other :

the NMIP6Address to compare address to.

Returns :

TRUE if the objects contain the same values, FALSE if they do not.

nm_ip6_address_get_address ()

const struct in6_addr * nm_ip6_address_get_address      (NMIP6Address *address);

Gets the IPv6 address property of this address object.

address :

the NMIP6Address

Returns :

the IPv6 address. [array fixed-size=16][element-type guint8][transfer none]

nm_ip6_address_set_address ()

void                nm_ip6_address_set_address          (NMIP6Address *address,
                                                         const struct in6_addr *addr);

Sets the IPv6 address property of this object.

address :

the NMIP6Address

addr :

the IPv6 address

nm_ip6_address_get_prefix ()

guint32             nm_ip6_address_get_prefix           (NMIP6Address *address);

Gets the IPv6 address prefix property of this address object.

address :

the NMIP6Address

Returns :

the IPv6 address prefix

nm_ip6_address_set_prefix ()

void                nm_ip6_address_set_prefix           (NMIP6Address *address,
                                                         guint32 prefix);

Sets the IPv6 address prefix.

address :

the NMIP6Address

prefix :

the address prefix, a number between 0 and 128 inclusive

nm_ip6_address_get_gateway ()

const struct in6_addr * nm_ip6_address_get_gateway      (NMIP6Address *address);

Gets the IPv6 default gateway property of this address object.

address :

the NMIP6Address

Returns :

the IPv6 gateway address. [array fixed-size=16][element-type guint8][transfer none]

nm_ip6_address_set_gateway ()

void                nm_ip6_address_set_gateway          (NMIP6Address *address,
                                                         const struct in6_addr *gateway);

Sets the IPv6 default gateway property of this address object.

address :

the NMIP6Address

gateway :

the IPv6 default gateway

NMIP6Route

typedef struct NMIP6Route NMIP6Route;


nm_ip6_route_new ()

NMIP6Route *        nm_ip6_route_new                    (void);

Creates and returns a new NMIP6Route object.

Returns :

the new empty NMIP6Route object. [transfer full]

nm_ip6_route_dup ()

NMIP6Route *        nm_ip6_route_dup                    (NMIP6Route *source);

Copies a given NMIP6Route object and returns the copy.

source :

the NMIP6Route object to copy

Returns :

the copy of the given NMIP6Route copy. [transfer full]

nm_ip6_route_ref ()

void                nm_ip6_route_ref                    (NMIP6Route *route);

Increases the reference count of the object.

route :

the NMIP6Route

nm_ip6_route_unref ()

void                nm_ip6_route_unref                  (NMIP6Route *route);

Decreases the reference count of the object. If the reference count reaches zero, the object will be destroyed.

route :

the NMIP6Route

nm_ip6_route_compare ()

gboolean            nm_ip6_route_compare                (NMIP6Route *route,
                                                         NMIP6Route *other);

Determines if two NMIP6Route objects contain the same values.

route :

the NMIP6Route

other :

the NMIP6Route to compare route to.

Returns :

TRUE if the objects contain the same values, FALSE if they do not.

nm_ip6_route_get_dest ()

const struct in6_addr * nm_ip6_route_get_dest           (NMIP6Route *route);

Gets the IPv6 destination address property of this route object.

route :

the NMIP6Route

Returns :

the IPv6 address of destination. [array fixed-size=16][element-type guint8][transfer none]

nm_ip6_route_set_dest ()

void                nm_ip6_route_set_dest               (NMIP6Route *route,
                                                         const struct in6_addr *dest);

Sets the IPv6 destination address property of this route object.

route :

the NMIP6Route

dest :

the destination address

nm_ip6_route_get_prefix ()

guint32             nm_ip6_route_get_prefix             (NMIP6Route *route);

Gets the IPv6 prefix (ie "32" or "64" etc) of this route.

route :

the NMIP6Route

Returns :

the IPv6 prefix

nm_ip6_route_set_prefix ()

void                nm_ip6_route_set_prefix             (NMIP6Route *route,
                                                         guint32 prefix);

Sets the IPv6 prefix of this route.

route :

the NMIP6Route

prefix :

the prefix, a number between 1 and 128 inclusive

nm_ip6_route_get_next_hop ()

const struct in6_addr * nm_ip6_route_get_next_hop       (NMIP6Route *route);

Gets the IPv6 address of the next hop of this route.

route :

the NMIP6Route

Returns :

the IPv6 address of next hop. [array fixed-size=16][element-type guint8][transfer none]

nm_ip6_route_set_next_hop ()

void                nm_ip6_route_set_next_hop           (NMIP6Route *route,
                                                         const struct in6_addr *next_hop);

Sets the IPv6 address of the next hop of this route.

route :

the NMIP6Route

next_hop :

the IPv6 address of the next hop

nm_ip6_route_get_metric ()

guint32             nm_ip6_route_get_metric             (NMIP6Route *route);

Gets the route metric property of this route object; lower values indicate "better" or more preferred routes.

route :

the NMIP6Route

Returns :

the route metric

nm_ip6_route_set_metric ()

void                nm_ip6_route_set_metric             (NMIP6Route *route,
                                                         guint32 metric);

Sets the route metric property of this route object; lower values indicate "better" or more preferred routes.

route :

the NMIP6Route

metric :

the route metric

NMSettingIP6Config

typedef struct _NMSettingIP6Config NMSettingIP6Config;


NMSettingIP6ConfigClass

typedef struct {
	NMSettingClass parent;

	/* Padding for future expansion */
	void (*_reserved1) (void);
	void (*_reserved2) (void);
	void (*_reserved3) (void);
	void (*_reserved4) (void);
} NMSettingIP6ConfigClass;


nm_setting_ip6_config_new ()

NMSetting *         nm_setting_ip6_config_new           (void);

Creates a new NMSettingIP6Config object with default values.

Returns :

the new empty NMSettingIP6Config object. [transfer full]

nm_setting_ip6_config_get_method ()

const char *        nm_setting_ip6_config_get_method    (NMSettingIP6Config *setting);

setting :

the NMSettingIP6Config

Returns :

the "method" property of the setting

nm_setting_ip6_config_get_num_dns ()

guint32             nm_setting_ip6_config_get_num_dns   (NMSettingIP6Config *setting);

setting :

the NMSettingIP6Config

Returns :

the number of configured DNS servers

nm_setting_ip6_config_get_dns ()

const struct in6_addr * nm_setting_ip6_config_get_dns   (NMSettingIP6Config *setting,
                                                         guint32 i);

setting :

the NMSettingIP6Config

i :

index number of the DNS server to return

Returns :

the IPv6 address of the DNS server at index i. [transfer none]

nm_setting_ip6_config_add_dns ()

gboolean            nm_setting_ip6_config_add_dns       (NMSettingIP6Config *setting,
                                                         const struct in6_addr *dns);

Adds a new DNS server to the setting.

setting :

the NMSettingIP6Config

dns :

the IPv6 address of the DNS server to add

Returns :

TRUE if the DNS server was added; FALSE if the server was already known

nm_setting_ip6_config_remove_dns ()

void                nm_setting_ip6_config_remove_dns    (NMSettingIP6Config *setting,
                                                         guint32 i);

Removes the DNS server at index i.

setting :

the NMSettingIP6Config

i :

index number of the DNS server to remove

nm_setting_ip6_config_remove_dns_by_value ()

gboolean            nm_setting_ip6_config_remove_dns_by_value
                                                        (NMSettingIP6Config *setting,
                                                         const struct in6_addr *dns);

Removes the DNS server at index i.

setting :

the NMSettingIP6Config

dns :

the IPv6 address of the DNS server to remove

Returns :

TRUE if the DNS server was found and removed; FALSE if it was not.

Since 0.9.10


nm_setting_ip6_config_clear_dns ()

void                nm_setting_ip6_config_clear_dns     (NMSettingIP6Config *setting);

Removes all configured DNS servers.

setting :

the NMSettingIP6Config

nm_setting_ip6_config_get_num_dns_searches ()

guint32             nm_setting_ip6_config_get_num_dns_searches
                                                        (NMSettingIP6Config *setting);

setting :

the NMSettingIP6Config

Returns :

the number of configured DNS search domains

nm_setting_ip6_config_get_dns_search ()

const char *        nm_setting_ip6_config_get_dns_search
                                                        (NMSettingIP6Config *setting,
                                                         guint32 i);

setting :

the NMSettingIP6Config

i :

index number of the DNS search domain to return

Returns :

the DNS search domain at index i

nm_setting_ip6_config_add_dns_search ()

gboolean            nm_setting_ip6_config_add_dns_search
                                                        (NMSettingIP6Config *setting,
                                                         const char *dns_search);

Adds a new DNS search domain to the setting.

setting :

the NMSettingIP6Config

dns_search :

the search domain to add

Returns :

TRUE if the DNS search domain was added; FALSE if the search domain was already known

nm_setting_ip6_config_remove_dns_search ()

void                nm_setting_ip6_config_remove_dns_search
                                                        (NMSettingIP6Config *setting,
                                                         guint32 i);

Removes the DNS search domain at index i.

setting :

the NMSettingIP6Config

i :

index number of the DNS search domain

nm_setting_ip6_config_remove_dns_search_by_value ()

gboolean            nm_setting_ip6_config_remove_dns_search_by_value
                                                        (NMSettingIP6Config *setting,
                                                         const char *dns_search);

Removes the DNS search domain dns_search.

setting :

the NMSettingIP6Config

dns_search :

the search domain to remove

Returns :

TRUE if the DNS search domain was found and removed; FALSE if it was not. Since 0.9.10

nm_setting_ip6_config_clear_dns_searches ()

void                nm_setting_ip6_config_clear_dns_searches
                                                        (NMSettingIP6Config *setting);

Removes all configured DNS search domains.

setting :

the NMSettingIP6Config

nm_setting_ip6_config_get_num_addresses ()

guint32             nm_setting_ip6_config_get_num_addresses
                                                        (NMSettingIP6Config *setting);

setting :

the NMSettingIP6Config

Returns :

the number of configured addresses

nm_setting_ip6_config_get_address ()

NMIP6Address *      nm_setting_ip6_config_get_address   (NMSettingIP6Config *setting,
                                                         guint32 i);

setting :

the NMSettingIP6Config

i :

index number of the address to return

Returns :

the address at index i

nm_setting_ip6_config_add_address ()

gboolean            nm_setting_ip6_config_add_address   (NMSettingIP6Config *setting,
                                                         NMIP6Address *address);

Adds a new IPv6 address and associated information to the setting. The given address is duplicated internally and is not changed by this function.

setting :

the NMSettingIP6Config

address :

the new address to add

Returns :

TRUE if the address was added; FALSE if the address was already known.

nm_setting_ip6_config_remove_address ()

void                nm_setting_ip6_config_remove_address
                                                        (NMSettingIP6Config *setting,
                                                         guint32 i);

Removes the address at index i.

setting :

the NMSettingIP6Config

i :

index number of the address to remove

nm_setting_ip6_config_remove_address_by_value ()

gboolean            nm_setting_ip6_config_remove_address_by_value
                                                        (NMSettingIP6Config *setting,
                                                         NMIP6Address *address);

Removes the address address.

setting :

the NMSettingIP6Config

address :

the address to remove

Returns :

TRUE if the address was found and removed; FALSE if it was not.

Since 0.9.10


nm_setting_ip6_config_clear_addresses ()

void                nm_setting_ip6_config_clear_addresses
                                                        (NMSettingIP6Config *setting);

Removes all configured addresses.

setting :

the NMSettingIP6Config

nm_setting_ip6_config_get_num_routes ()

guint32             nm_setting_ip6_config_get_num_routes
                                                        (NMSettingIP6Config *setting);

setting :

the NMSettingIP6Config

Returns :

the number of configured routes

nm_setting_ip6_config_get_route ()

NMIP6Route *        nm_setting_ip6_config_get_route     (NMSettingIP6Config *setting,
                                                         guint32 i);

setting :

the NMSettingIP6Config

i :

index number of the route to return

Returns :

the route at index i

nm_setting_ip6_config_add_route ()

gboolean            nm_setting_ip6_config_add_route     (NMSettingIP6Config *setting,
                                                         NMIP6Route *route);

Adds a new IPv6 route and associated information to the setting. The given route is duplicated internally and is not changed by this function.

setting :

the NMSettingIP6Config

route :

the route to add

Returns :

TRUE if the route was added; FALSE if the route was already known.

nm_setting_ip6_config_remove_route ()

void                nm_setting_ip6_config_remove_route  (NMSettingIP6Config *setting,
                                                         guint32 i);

Removes the route at index i.

setting :

the NMSettingIP6Config

i :

index number of the route

nm_setting_ip6_config_remove_route_by_value ()

gboolean            nm_setting_ip6_config_remove_route_by_value
                                                        (NMSettingIP6Config *setting,
                                                         NMIP6Route *route);

Removes the route route.

setting :

the NMSettingIP6Config

route :

the route to remove

Returns :

TRUE if the route was found and removed; FALSE if it was not.

Since 0.9.10


nm_setting_ip6_config_clear_routes ()

void                nm_setting_ip6_config_clear_routes  (NMSettingIP6Config *setting);

Removes all configured routes.

setting :

the NMSettingIP6Config

nm_setting_ip6_config_get_ignore_auto_routes ()

gboolean            nm_setting_ip6_config_get_ignore_auto_routes
                                                        (NMSettingIP6Config *setting);

Returns the value contained in the "ignore-auto-routes" property.

setting :

the NMSettingIP6Config

Returns :

TRUE if automatically configured (ie via DHCP) routes should be ignored.

nm_setting_ip6_config_get_ignore_auto_dns ()

gboolean            nm_setting_ip6_config_get_ignore_auto_dns
                                                        (NMSettingIP6Config *setting);

Returns the value contained in the "ignore-auto-dns" property.

setting :

the NMSettingIP6Config

Returns :

TRUE if automatically configured (ie via DHCP or router advertisements) DNS information should be ignored.

nm_setting_ip6_config_get_dhcp_hostname ()

const char *        nm_setting_ip6_config_get_dhcp_hostname
                                                        (NMSettingIP6Config *setting);

Returns the value contained in the "dhcp-hostname" property.

setting :

the NMSettingIP6Config

Returns :

the configured hostname to send to the DHCP server

Since 0.9.8


nm_setting_ip6_config_get_never_default ()

gboolean            nm_setting_ip6_config_get_never_default
                                                        (NMSettingIP6Config *setting);

Returns the value contained in the "never-default" property.

setting :

the NMSettingIP6Config

Returns :

TRUE if this connection should never be the default connection for IPv6 addressing

nm_setting_ip6_config_get_may_fail ()

gboolean            nm_setting_ip6_config_get_may_fail  (NMSettingIP6Config *setting);

Returns the value contained in the "may-fail" property.

setting :

the NMSettingIP6Config

Returns :

TRUE if this connection doesn't require IPv6 addressing to complete for the connection to succeed.

nm_setting_ip6_config_get_ip6_privacy ()

NMSettingIP6ConfigPrivacy nm_setting_ip6_config_get_ip6_privacy
                                                        (NMSettingIP6Config *setting);

Returns the value contained in the "ip6-privacy" property.

setting :

the NMSettingIP6Config

Returns :

IPv6 Privacy Extensions configuration value (NMSettingIP6ConfigPrivacy).

Property Details

The "addresses" property

  "addresses"                GPtrArray_GValueArray_GArray_guchar_+guint+GArray_guchar___*  : Read / Write

Array of IPv6 address structures. Each IPv6 address structure is composed of 3 members, the first being a byte array containing the IPv6 address (network byte order), the second a 32-bit integer containing the IPv6 address prefix, and the third a byte array containing the IPv6 address (network byte order) of the gateway associated with this address, if any. If no gateway is given, the third element should be given as all zeros. For the 'auto' method, given IP addresses are appended to those returned by automatic configuration. Addresses cannot be used with the 'shared' or 'link-local' methods as the interface is automatically assigned an address with these methods.


The "dhcp-hostname" property

  "dhcp-hostname"            gchar*                : Read / Write

The specified name will be sent to the DHCP server when acquiring a lease.

Default value: NULL

Since 0.9.8


The "dns" property

  "dns"                      GPtrArray_GArray_guchar__*  : Read / Write

Array of DNS servers, where each member of the array is a byte array containing the IPv6 address of the DNS server (in network byte order). For the 'auto' method, these DNS servers are appended to those (if any) returned by automatic configuration. DNS servers cannot be used with the 'shared' or 'link-local' methods as there is no usptream network. In all other methods, these DNS servers are used as the only DNS servers for this connection.


The "dns-search" property

  "dns-search"               GSList_gchararray_*   : Read / Write

List of DNS search domains. For the 'auto' method, these search domains are appended to those returned by automatic configuration. Search domains cannot be used with the 'shared' or 'link-local' methods as there is no upstream network. In all other methods, these search domains are used as the only search domains for this connection.


The "ignore-auto-dns" property

  "ignore-auto-dns"          gboolean              : Read / Write / Construct

When the method is set to 'auto' or 'dhcp' and this property is set to TRUE, automatically configured nameservers and search domains are ignored and only nameservers and search domains specified in "dns" and "dns-search", if any, are used.

Default value: FALSE


The "ignore-auto-routes" property

  "ignore-auto-routes"       gboolean              : Read / Write / Construct

When the method is set to 'auto' or 'dhcp' and this property is set to TRUE, automatically configured routes are ignored and only routes specified in "routes", if any, are used.

Default value: FALSE


The "ip6-privacy" property

  "ip6-privacy"              gint                  : Read / Write / Construct

Configure IPv6 Privacy Extensions for SLAAC, described in RFC4941. If enabled, it makes the kernel generate a temporary IPv6 address in addition to the public one generated from MAC address via modified EUI-64. This enhances privacy, but could cause problems in some applications, on the other hand. The permitted values are: 0: disabled, 1: enabled (prefer public address), 2: enabled (prefer temporary addresses).

Allowed values: [-1,2]

Default value: -1


The "may-fail" property

  "may-fail"                 gboolean              : Read / Write / Construct

If TRUE, allow overall network configuration to proceed even if IPv6 configuration times out. Note that at least one IP configuration must succeed or overall network configuration will still fail. For example, in IPv4-only networks, setting this property to TRUE allows the overall network configuration to succeed if IPv6 configuration fails but IPv4 configuration completes successfully.

Default value: TRUE


The "method" property

  "method"                   gchar*                : Read / Write

IPv6 configuration method. If 'auto' is specified then the appropriate automatic method (DHCP, PPP, advertisement, etc) is used for the interface and most other properties can be left unset. To force the use of DHCP only, specify 'dhcp'; this method is only valid for ethernet- based hardware. If 'link-local' is specified, then an IPv6 link-local address will be assigned to the interface. If 'manual' is specified, static IP addressing is used and at least one IP address must be given in the 'addresses' property. If 'ignore' is specified, IPv6 configuration is not done. This property must be set. Note: the 'shared' method is not yet supported.

Default value: NULL


The "never-default" property

  "never-default"            gboolean              : Read / Write / Construct

If TRUE, this connection will never be the default IPv6 connection, meaning it will never be assigned the default IPv6 route by NetworkManager.

Default value: FALSE


The "routes" property

  "routes"                   GPtrArray_GValueArray_GArray_guchar_+guint+GArray_guchar_+guint__*  : Read / Write

Array of IPv6 route structures. Each IPv6 route structure is composed of 4 members; the first being the destination IPv6 network or address (network byte order) as a byte array, the second the destination network or address IPv6 prefix, the third being the next-hop IPv6 address (network byte order) if any, and the fourth being the route metric. For the 'auto' method, given IP routes are appended to those returned by automatic configuration. Routes cannot be used with the 'shared' or 'link-local' methods because there is no upstream network.