## NMSettingInfiniband

NMSettingInfiniband — Describes connection properties for IP-over-InfiniBand networks

## Functions

GQuark | nm_setting_infiniband_error_quark ()
NMSetting * | nm_setting_infiniband_new ()
const GByteArray * | nm_setting_infiniband_get_mac_address ()
guint32 | nm_setting_infiniband_get_mtu ()
const char * | nm_setting_infiniband_get_transport_mode ()
int | nm_setting_infiniband_get_p_key ()
const char * | nm_setting_infiniband_get_parent ()

## Properties

GArray_guchar_ * | mac-address | Read / Write
guint | mtu | Read / Write / Construct
gint | p-key | Read / Write / Construct
gchar * | parent | Read / Write / Construct
gchar * | transport-mode | Read / Write / Construct

## Types and Values

#define | NM_SETTING_INFINIBAND_SETTING_NAME
enum | NMSettingInfinibandError
#define | NM_SETTING_INFINIBAND_ERROR
#define | NM_SETTING_INFINIBAND_MAC_ADDRESS
#define | NM_SETTING_INFINIBAND_MTU
#define | NM_SETTING_INFINIBAND_TRANSPORT_MODE
#define | NM_SETTING_INFINIBAND_P_KEY
#define | NM_SETTING_INFINIBAND_PARENT

## Object Hierarchy

        GEnum
        ╰── NMSettingInfinibandError
        GObject
        ╰── NMSetting
            ╰── NMSettingInfiniband

## Includes

    #include <nm-setting-infiniband.h>

## Description

The NMSettingInfiniband object is a NMSetting subclass that describes properties necessary for connection to IP-over-InfiniBand networks.

## Functions

### nm_setting_infiniband_error_quark ()

    GQuark
    nm_setting_infiniband_error_quark (void);

Registers an error quark for NMSettingInfiniband if necessary.

#### Returns

the error quark used for NMSettingInfiniband errors.

### nm_setting_infiniband_new ()

    NMSetting *
    nm_setting_infiniband_new (void);

Creates a new NMSettingInfiniband object with default values.

#### Returns

the new empty NMSettingInfiniband object.

[transfer full]

### nm_setting_infiniband_get_mac_address ()

    const GByteArray *
    nm_setting_infiniband_get_mac_address (NMSettingInfiniband *setting);

#### Parameters

setting | the NMSettingInfiniband |

#### Returns

the “mac-address” property of the setting

### nm_setting_infiniband_get_mtu ()

    guint32
    nm_setting_infiniband_get_mtu (NMSettingInfiniband *setting);

#### Parameters

setting | the NMSettingInfiniband |

#### Returns

the “mtu” property of the setting

### nm_setting_infiniband_get_transport_mode ()

    const char *
    nm_setting_infiniband_get_transport_mode
                                   (NMSettingInfiniband *setting);

Returns the transport mode for this device. Either 'datagram' or 'connected'.

#### Parameters

setting | the NMSettingInfiniband |

#### Returns

the IPoIB transport mode

### nm_setting_infiniband_get_p_key ()

    int
    nm_setting_infiniband_get_p_key (NMSettingInfiniband *setting);

Returns the P_Key to use for this device. A value of -1 means to use the default P_Key (aka "the P_Key at index 0"). Otherwise it is a 16-bit unsigned integer.

#### Parameters

setting | the NMSettingInfiniband |

#### Returns

the IPoIB P_Key

### nm_setting_infiniband_get_parent ()

    const char *
    nm_setting_infiniband_get_parent (NMSettingInfiniband *setting);

Returns the parent interface name for this device, if set.

#### Parameters

setting | the NMSettingInfiniband |

#### Returns

the parent interface name

## Types and Values

### NM_SETTING_INFINIBAND_SETTING_NAME

    #define NM_SETTING_INFINIBAND_SETTING_NAME "infiniband"

### enum NMSettingInfinibandError

#### Members

NM_SETTING_INFINIBAND_ERROR_UNKNOWN | unknown or unclassified error |
NM_SETTING_INFINIBAND_ERROR_INVALID_PROPERTY | the property was invalid |
NM_SETTING_INFINIBAND_ERROR_MISSING_PROPERTY | the property was missing and is required |

### NM_SETTING_INFINIBAND_ERROR

    #define NM_SETTING_INFINIBAND_ERROR nm_setting_infiniband_error_quark ()

### NM_SETTING_INFINIBAND_MAC_ADDRESS

    #define NM_SETTING_INFINIBAND_MAC_ADDRESS    "mac-address"

### NM_SETTING_INFINIBAND_MTU

    #define NM_SETTING_INFINIBAND_MTU            "mtu"

### NM_SETTING_INFINIBAND_TRANSPORT_MODE

    #define NM_SETTING_INFINIBAND_TRANSPORT_MODE "transport-mode"

### NM_SETTING_INFINIBAND_P_KEY

    #define NM_SETTING_INFINIBAND_P_KEY          "p-key"

### NM_SETTING_INFINIBAND_PARENT

    #define NM_SETTING_INFINIBAND_PARENT         "parent"

## Property Details

### The `“mac-address”` property

      “mac-address”              GArray_guchar_ *

If specified, this connection will only apply to the IPoIB device whose permanent MAC address matches. This property does not change the MAC address of the device (i.e. MAC spoofing).

Flags: Read / Write

### The `“mtu”` property

      “mtu”                      guint

If non-zero, only transmit packets of the specified size or smaller, breaking larger packets up into multiple frames.

Flags: Read / Write / Construct

Default value: 0

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

      “p-key”                    gint

The InfiniBand P_Key to use for this device. A value of -1 means to use the default P_Key (aka "the P_Key at index 0"). Otherwise it is a 16-bit unsigned integer, whose high bit is set if it is a "full membership" P_Key.

Flags: Read / Write / Construct

Allowed values: [-1,65535]

Default value: -1

### The `“parent”` property

      “parent”                   gchar *

The interface name of the parent device of this device. Normally `NULL`, but if the “p_key” property is set, then you must specify the base device by setting either this property or “mac-address”.

Flags: Read / Write / Construct

Default value: NULL

### The `“transport-mode”` property

      “transport-mode”           gchar *

The IP-over-InfiniBand transport mode. Either "datagram" or "connected".

Flags: Read / Write / Construct

Default value: NULL