NMSettingMacsec: libnm Reference Manual

## NMSettingMacsec NMSettingMacsec — Describes connection properties for MACSEC interfaces |

## Functions

NMSetting * | nm_setting_macsec_new ()
const char * | nm_setting_macsec_get_parent ()
NMSettingMacsecMode | nm_setting_macsec_get_mode ()
gboolean | nm_setting_macsec_get_encrypt ()
const char * | nm_setting_macsec_get_mka_cak ()
NMSettingSecretFlags | nm_setting_macsec_get_mka_cak_flags ()
const char * | nm_setting_macsec_get_mka_ckn ()
int | nm_setting_macsec_get_port ()
NMSettingMacsecValidation | nm_setting_macsec_get_validation ()
gboolean | nm_setting_macsec_get_send_sci ()
NMSettingMacsecOffload | nm_setting_macsec_get_offload ()

## Types and Values

#define | NM_SETTING_MACSEC_SETTING_NAME
#define | NM_SETTING_MACSEC_PARENT
#define | NM_SETTING_MACSEC_MODE
#define | NM_SETTING_MACSEC_ENCRYPT
#define | NM_SETTING_MACSEC_MKA_CAK
#define | NM_SETTING_MACSEC_MKA_CAK_FLAGS
#define | NM_SETTING_MACSEC_MKA_CKN
#define | NM_SETTING_MACSEC_PORT
#define | NM_SETTING_MACSEC_VALIDATION
#define | NM_SETTING_MACSEC_SEND_SCI
#define | NM_SETTING_MACSEC_OFFLOAD
enum | NMSettingMacsecMode
enum | NMSettingMacsecValidation
#define | NM_SETTING_MACSEC_MKA_CAK_LENGTH
#define | NM_SETTING_MACSEC_MKA_CKN_LENGTH
enum | NMSettingMacsecOffload

## Object Hierarchy

        GEnum
        ├── NMSettingMacsecMode
        ├── NMSettingMacsecOffload
        ╰── NMSettingMacsecValidation

## Description

The NMSettingMacsec object is a NMSetting subclass that describes properties necessary for connection to MACsec (IEEE 802.1AE) interfaces.

## Functions

### nm_setting_macsec_new ()

    NMSetting *
    nm_setting_macsec_new (void);

Creates a new NMSettingMacsec object with default values.

#### Returns

the new empty NMSettingMacsec object.

[transfer full]

Since: 1.6

### nm_setting_macsec_get_parent ()

    const char *
    nm_setting_macsec_get_parent (NMSettingMacsec *setting);

#### Parameters

setting | the NMSettingMacsec |

#### Returns

the “parent” property of the setting

Since: 1.6

### nm_setting_macsec_get_mode ()

    NMSettingMacsecMode
    nm_setting_macsec_get_mode (NMSettingMacsec *setting);

#### Parameters

setting | the NMSettingMacsec |

#### Returns

the “mode” property of the setting

Since: 1.6

### nm_setting_macsec_get_encrypt ()

    gboolean
    nm_setting_macsec_get_encrypt (NMSettingMacsec *setting);

#### Parameters

setting | the NMSettingMacsec |

#### Returns

the “encrypt” property of the setting

Since: 1.6

### nm_setting_macsec_get_mka_cak ()

    const char *
    nm_setting_macsec_get_mka_cak (NMSettingMacsec *setting);

#### Parameters

setting | the NMSettingMacsec |

#### Returns

the “mka-cak” property of the setting

Since: 1.6

### nm_setting_macsec_get_mka_cak_flags ()

    NMSettingSecretFlags
    nm_setting_macsec_get_mka_cak_flags (NMSettingMacsec *setting);

#### Parameters

setting | the NMSettingMacsec |

#### Returns

the NMSettingSecretFlags pertaining to the “mka-cak”

Since: 1.6

### nm_setting_macsec_get_mka_ckn ()

    const char *
    nm_setting_macsec_get_mka_ckn (NMSettingMacsec *setting);

#### Parameters

setting | the NMSettingMacsec |

#### Returns

the “mka-ckn” property of the setting

Since: 1.6

### nm_setting_macsec_get_port ()

    int
    nm_setting_macsec_get_port (NMSettingMacsec *setting);

#### Parameters

setting | the NMSettingMacsec |

#### Returns

the “port” property of the setting

Since: 1.6

### nm_setting_macsec_get_validation ()

    NMSettingMacsecValidation
    nm_setting_macsec_get_validation (NMSettingMacsec *setting);

#### Parameters

setting | the NMSettingMacsec |

#### Returns

the “validation” property of the setting

Since: 1.6

### nm_setting_macsec_get_send_sci ()

    gboolean
    nm_setting_macsec_get_send_sci (NMSettingMacsec *setting);

#### Parameters

setting | the NMSettingMacsec |

#### Returns

the “send-sci” property of the setting

Since: 1.12

### nm_setting_macsec_get_offload ()

    NMSettingMacsecOffload
    nm_setting_macsec_get_offload (NMSettingMacsec *setting);

#### Parameters

setting | the NMSettingMacsec |

#### Returns

the “offload” property of the setting

Since: 1.46

## Types and Values

### NM_SETTING_MACSEC_SETTING_NAME

    #define NM_SETTING_MACSEC_SETTING_NAME "macsec"

### NM_SETTING_MACSEC_PARENT

    #define NM_SETTING_MACSEC_PARENT        "parent"

### NM_SETTING_MACSEC_MODE

    #define NM_SETTING_MACSEC_MODE          "mode"

### NM_SETTING_MACSEC_ENCRYPT

    #define NM_SETTING_MACSEC_ENCRYPT       "encrypt"

### NM_SETTING_MACSEC_MKA_CAK

    #define NM_SETTING_MACSEC_MKA_CAK       "mka-cak"

### NM_SETTING_MACSEC_MKA_CAK_FLAGS

    #define NM_SETTING_MACSEC_MKA_CAK_FLAGS "mka-cak-flags"

### NM_SETTING_MACSEC_MKA_CKN

    #define NM_SETTING_MACSEC_MKA_CKN       "mka-ckn"

### NM_SETTING_MACSEC_PORT

    #define NM_SETTING_MACSEC_PORT          "port"

### NM_SETTING_MACSEC_VALIDATION

    #define NM_SETTING_MACSEC_VALIDATION    "validation"

### NM_SETTING_MACSEC_SEND_SCI

    #define NM_SETTING_MACSEC_SEND_SCI      "send-sci"

### NM_SETTING_MACSEC_OFFLOAD

    #define NM_SETTING_MACSEC_OFFLOAD       "offload"

### enum NMSettingMacsecMode

NMSettingMacsecMode controls how the CAK (Connectivity Association Key) used in MKA (MACsec Key Agreement) is obtained.

#### Members

NM_SETTING_MACSEC_MODE_PSK | The CAK is pre-shared |
NM_SETTING_MACSEC_MODE_EAP | The CAK is the result of participation in EAP |

Since: 1.6

### enum NMSettingMacsecValidation

NMSettingMacsecValidation specifies a validation mode for incoming frames.

#### Members

NM_SETTING_MACSEC_VALIDATION_DISABLE | All incoming frames are accepted if possible |
NM_SETTING_MACSEC_VALIDATION_CHECK | Non protected, invalid, or impossible to verify frames are accepted and counted as "invalid" |
NM_SETTING_MACSEC_VALIDATION_STRICT | Non protected, invalid, or impossible to verify frames are dropped |

Since: 1.6

### NM_SETTING_MACSEC_MKA_CAK_LENGTH

    #define NM_SETTING_MACSEC_MKA_CAK_LENGTH 32

### NM_SETTING_MACSEC_MKA_CKN_LENGTH

    #define NM_SETTING_MACSEC_MKA_CKN_LENGTH 64

### enum NMSettingMacsecOffload

These flags control the MACsec offload mode.

#### Members

NM_SETTING_MACSEC_OFFLOAD_DEFAULT | use the global default; disable if not defined |
NM_SETTING_MACSEC_OFFLOAD_OFF | disable offload |
NM_SETTING_MACSEC_OFFLOAD_PHY | request offload to the PHY |
NM_SETTING_MACSEC_OFFLOAD_MAC | request offload to the MAC |

Since: 1.46