## NMDeviceIPTunnel NMDeviceIPTunnel |

## Functions

NMDevice * | nm_device_ip_tunnel_get_parent ()
NMIPTunnelMode | nm_device_ip_tunnel_get_mode ()
const char * | nm_device_ip_tunnel_get_local ()
const char * | nm_device_ip_tunnel_get_remote ()
guint8 | nm_device_ip_tunnel_get_ttl ()
guint8 | nm_device_ip_tunnel_get_tos ()
gboolean | nm_device_ip_tunnel_get_path_mtu_discovery ()
const char * | nm_device_ip_tunnel_get_input_key ()
const char * | nm_device_ip_tunnel_get_output_key ()
guint8 | nm_device_ip_tunnel_get_encapsulation_limit ()
guint | nm_device_ip_tunnel_get_flow_label ()
NMIPTunnelFlags | nm_device_ip_tunnel_get_flags ()

## Properties

guchar | encapsulation-limit | Read
guint | flags | Read
guint | flow-label | Read
gchar * | input-key | Read
gchar * | local | Read
guint | mode | Read
gchar * | output-key | Read
NMDevice * | parent | Read
gboolean | path-mtu-discovery | Read
gchar * | remote | Read
guchar | tos | Read
guchar | ttl | Read

## Types and Values

#define | NM_DEVICE_IP_TUNNEL_MODE
#define | NM_DEVICE_IP_TUNNEL_PARENT
#define | NM_DEVICE_IP_TUNNEL_LOCAL
#define | NM_DEVICE_IP_TUNNEL_REMOTE
#define | NM_DEVICE_IP_TUNNEL_TTL
#define | NM_DEVICE_IP_TUNNEL_TOS
#define | NM_DEVICE_IP_TUNNEL_PATH_MTU_DISCOVERY
#define | NM_DEVICE_IP_TUNNEL_INPUT_KEY
#define | NM_DEVICE_IP_TUNNEL_OUTPUT_KEY
#define | NM_DEVICE_IP_TUNNEL_ENCAPSULATION_LIMIT
#define | NM_DEVICE_IP_TUNNEL_FLOW_LABEL
#define | NM_DEVICE_IP_TUNNEL_FLAGS
| NMDeviceIPTunnel

## Object Hierarchy

        GObject
        ╰── NMObject
            ╰── NMDevice
                ╰── NMDeviceIPTunnel

## Implemented Interfaces

NMDeviceIPTunnel implements GInitable and GAsyncInitable.

## Description

## Functions

### nm_device_ip_tunnel_get_parent ()

    NMDevice *
    nm_device_ip_tunnel_get_parent (NMDeviceIPTunnel *device);

#### Parameters

device | a NMDeviceIPTunnel |

#### Returns

the device's parent device.

[transfer none]

Since: 1.2

### nm_device_ip_tunnel_get_mode ()

    NMIPTunnelMode
    nm_device_ip_tunnel_get_mode (NMDeviceIPTunnel *device);

#### Parameters

device | a NMDeviceIPTunnel |

#### Returns

the tunneling mode

Since: 1.2

### nm_device_ip_tunnel_get_local ()

    const char *
    nm_device_ip_tunnel_get_local (NMDeviceIPTunnel *device);

#### Parameters

device | a NMDeviceIPTunnel |

#### Returns

the local endpoint of the tunnel

Since: 1.2

### nm_device_ip_tunnel_get_remote ()

    const char *
    nm_device_ip_tunnel_get_remote (NMDeviceIPTunnel *device);

#### Parameters

device | a NMDeviceIPTunnel |

#### Returns

the remote endpoint of the tunnel

Since: 1.2

### nm_device_ip_tunnel_get_ttl ()

    guint8
    nm_device_ip_tunnel_get_ttl (NMDeviceIPTunnel *device);

#### Parameters

device | a NMDeviceIPTunnel |

#### Returns

the TTL assigned to tunneled packets

Since: 1.2

### nm_device_ip_tunnel_get_tos ()

    guint8
    nm_device_ip_tunnel_get_tos (NMDeviceIPTunnel *device);

#### Parameters

device | a NMDeviceIPTunnel |

#### Returns

type of service (IPv4) or traffic class (IPv6) assigned to tunneled packets.

Since: 1.2

### nm_device_ip_tunnel_get_path_mtu_discovery ()

    gboolean
    nm_device_ip_tunnel_get_path_mtu_discovery
                                   (NMDeviceIPTunnel *device);

#### Parameters

device | a NMDeviceIPTunnel |

#### Returns

whether path MTU discovery is enabled

Since: 1.2

### nm_device_ip_tunnel_get_input_key ()

    const char *
    nm_device_ip_tunnel_get_input_key (NMDeviceIPTunnel *device);

#### Parameters

device | a NMDeviceIPTunnel |

#### Returns

the key used for incoming packets

Since: 1.2

### nm_device_ip_tunnel_get_output_key ()

    const char *
    nm_device_ip_tunnel_get_output_key (NMDeviceIPTunnel *device);

#### Parameters

device | a NMDeviceIPTunnel |

#### Returns

the key used for outgoing packets

Since: 1.2

### nm_device_ip_tunnel_get_encapsulation_limit ()

    guint8
    nm_device_ip_tunnel_get_encapsulation_limit
                                   (NMDeviceIPTunnel *device);

#### Parameters

device | a NMDeviceIPTunnel |

#### Returns

the maximum permitted encapsulation level

Since: 1.2

### nm_device_ip_tunnel_get_flow_label ()

    guint
    nm_device_ip_tunnel_get_flow_label (NMDeviceIPTunnel *device);

#### Parameters

device | a NMDeviceIPTunnel |

#### Returns

the flow label assigned to tunnel packets

Since: 1.2

### nm_device_ip_tunnel_get_flags ()

    NMIPTunnelFlags
    nm_device_ip_tunnel_get_flags (NMDeviceIPTunnel *device);

#### Parameters

device | a NMDeviceIPTunnel |

#### Returns

the tunnel flags

Since: 1.12

## Types and Values

### NM_DEVICE_IP_TUNNEL_MODE

    #define NM_DEVICE_IP_TUNNEL_MODE                "mode"

### NM_DEVICE_IP_TUNNEL_PARENT

    #define NM_DEVICE_IP_TUNNEL_PARENT              "parent"

### NM_DEVICE_IP_TUNNEL_LOCAL

    #define NM_DEVICE_IP_TUNNEL_LOCAL               "local"

### NM_DEVICE_IP_TUNNEL_REMOTE

    #define NM_DEVICE_IP_TUNNEL_REMOTE              "remote"

### NM_DEVICE_IP_TUNNEL_TTL

    #define NM_DEVICE_IP_TUNNEL_TTL                 "ttl"

### NM_DEVICE_IP_TUNNEL_TOS

    #define NM_DEVICE_IP_TUNNEL_TOS                 "tos"

### NM_DEVICE_IP_TUNNEL_PATH_MTU_DISCOVERY

    #define NM_DEVICE_IP_TUNNEL_PATH_MTU_DISCOVERY  "path-mtu-discovery"

### NM_DEVICE_IP_TUNNEL_INPUT_KEY

    #define NM_DEVICE_IP_TUNNEL_INPUT_KEY           "input-key"

### NM_DEVICE_IP_TUNNEL_OUTPUT_KEY

    #define NM_DEVICE_IP_TUNNEL_OUTPUT_KEY          "output-key"

### NM_DEVICE_IP_TUNNEL_ENCAPSULATION_LIMIT

    #define NM_DEVICE_IP_TUNNEL_ENCAPSULATION_LIMIT "encapsulation-limit"

### NM_DEVICE_IP_TUNNEL_FLOW_LABEL

    #define NM_DEVICE_IP_TUNNEL_FLOW_LABEL          "flow-label"

### NM_DEVICE_IP_TUNNEL_FLAGS

    #define NM_DEVICE_IP_TUNNEL_FLAGS               "flags"

### NMDeviceIPTunnel

    typedef struct _NMDeviceIPTunnel NMDeviceIPTunnel;

## Property Details

### The `“encapsulation-limit”` property

      “encapsulation-limit”      guchar

How many additional levels of encapsulation are permitted to be prepended to packets. This property applies only to IPv6 tunnels.

Flags: Read

Default value: 0

Since: 1.2

### The `“flags”` property

      “flags”                    guint

Tunnel flags.

Flags: Read

Default value: 0

Since: 1.12

### The `“flow-label”` property

      “flow-label”               guint

The flow label to assign to tunnel packets. This property applies only to IPv6 tunnels.

Flags: Read

Allowed values: <= 1048575

Default value: 0

Since: 1.2

### The `“input-key”` property

      “input-key”                gchar *

The key used for tunneled input packets, if applicable.

Flags: Read

Default value: NULL

Since: 1.2

### The `“local”` property

      “local”                    gchar *

The local endpoint of the tunnel.

Flags: Read

Default value: NULL

Since: 1.2

### The `“mode”` property

      “mode”                     guint

The tunneling mode of the device.

Flags: Read

Default value: 0

Since: 1.2

### The `“output-key”` property

      “output-key”               gchar *

The key used for tunneled output packets, if applicable.

Flags: Read

Default value: NULL

Since: 1.2

### The `“parent”` property

      “parent”                   NMDevice *

The devices's parent device.

Flags: Read

Since: 1.2

### The `“path-mtu-discovery”` property

      “path-mtu-discovery”       gboolean

Whether path MTU discovery is enabled on this tunnel.

Flags: Read

Default value: FALSE

Since: 1.2

### The `“remote”` property

      “remote”                   gchar *

The remote endpoint of the tunnel.

Flags: Read

Default value: NULL

Since: 1.2

### The `“tos”` property

      “tos”                      guchar

The type of service (IPv4) or traffic class (IPv6) assigned to tunneled packets.

Flags: Read

Default value: 0

Since: 1.2

### The `“ttl”` property

      “ttl”                      guchar

The TTL assigned to tunneled packets. 0 is a special value meaning that packets inherit the TTL value

Flags: Read

Default value: 0

Since: 1.2