Blame libnm-core/nm-setting-macvlan.h

Packit Service 87a54e
/* SPDX-License-Identifier: LGPL-2.1-or-later */
Packit 5756e2
/*
Packit 5756e2
 * Copyright (C) 2015 Red Hat, Inc.
Packit 5756e2
 */
Packit 5756e2
Packit 5756e2
#ifndef __NM_SETTING_MACVLAN_H__
Packit 5756e2
#define __NM_SETTING_MACVLAN_H__
Packit 5756e2
Packit Service a1bd4f
#if !defined(__NETWORKMANAGER_H_INSIDE__) && !defined(NETWORKMANAGER_COMPILATION)
Packit Service a1bd4f
    #error "Only <NetworkManager.h> can be included directly."
Packit 5756e2
#endif
Packit 5756e2
Packit 5756e2
#include "nm-setting.h"
Packit 5756e2
Packit 5756e2
G_BEGIN_DECLS
Packit 5756e2
Packit Service a1bd4f
#define NM_TYPE_SETTING_MACVLAN (nm_setting_macvlan_get_type())
Packit Service a1bd4f
#define NM_SETTING_MACVLAN(obj) \
Packit Service a1bd4f
    (G_TYPE_CHECK_INSTANCE_CAST((obj), NM_TYPE_SETTING_MACVLAN, NMSettingMacvlan))
Packit Service a1bd4f
#define NM_SETTING_MACVLAN_CLASS(klass) \
Packit Service a1bd4f
    (G_TYPE_CHECK_CLASS_CAST((klass), NM_TYPE_SETTING_MACVLANCONFIG, NMSettingMacvlanClass))
Packit Service a1bd4f
#define NM_IS_SETTING_MACVLAN(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), NM_TYPE_SETTING_MACVLAN))
Packit Service a1bd4f
#define NM_IS_SETTING_MACVLAN_CLASS(klass) \
Packit Service a1bd4f
    (G_TYPE_CHECK_CLASS_TYPE((klass), NM_TYPE_SETTING_MACVLAN))
Packit Service a1bd4f
#define NM_SETTING_MACVLAN_GET_CLASS(obj) \
Packit Service a1bd4f
    (G_TYPE_INSTANCE_GET_CLASS((obj), NM_TYPE_SETTING_MACVLAN, NMSettingMacvlanClass))
Packit 5756e2
Packit Service a1bd4f
#define NM_SETTING_MACVLAN_SETTING_NAME "macvlan"
Packit 5756e2
Packit Service a1bd4f
#define NM_SETTING_MACVLAN_PARENT      "parent"
Packit Service a1bd4f
#define NM_SETTING_MACVLAN_MODE        "mode"
Packit Service a1bd4f
#define NM_SETTING_MACVLAN_PROMISCUOUS "promiscuous"
Packit Service a1bd4f
#define NM_SETTING_MACVLAN_TAP         "tap"
Packit 5756e2
Packit 5756e2
/**
Packit 5756e2
 * NMSettingMacvlan:
Packit 5756e2
 *
Packit 5756e2
 * MAC VLAN Settings
Packit 5756e2
 */
Packit 5756e2
struct _NMSettingMacvlan {
Packit Service a1bd4f
    NMSetting parent;
Packit 5756e2
};
Packit 5756e2
Packit 5756e2
typedef struct {
Packit Service a1bd4f
    NMSettingClass parent;
Packit 5756e2
Packit Service a1bd4f
    /*< private >*/
Packit Service a1bd4f
    gpointer padding[4];
Packit 5756e2
} NMSettingMacvlanClass;
Packit 5756e2
Packit 5756e2
/**
Packit 5756e2
 * NMSettingMacvlanMode:
Packit 5756e2
 * @NM_SETTING_MACVLAN_MODE_UNKNOWN: unknown/unset mode
Packit 5756e2
 * @NM_SETTING_MACVLAN_MODE_VEPA: Virtual Ethernet Port Aggregator mode
Packit 5756e2
 * @NM_SETTING_MACVLAN_MODE_BRIDGE: bridge mode
Packit 5756e2
 * @NM_SETTING_MACVLAN_MODE_PRIVATE: private mode
Packit 5756e2
 * @NM_SETTING_MACVLAN_MODE_PASSTHRU: passthru mode
Packit 5756e2
 * @NM_SETTING_MACVLAN_MODE_SOURCE: source mode
Packit 5756e2
 **/
Packit 5756e2
typedef enum {
Packit Service a1bd4f
    NM_SETTING_MACVLAN_MODE_UNKNOWN  = 0,
Packit Service a1bd4f
    NM_SETTING_MACVLAN_MODE_VEPA     = 1,
Packit Service a1bd4f
    NM_SETTING_MACVLAN_MODE_BRIDGE   = 2,
Packit Service a1bd4f
    NM_SETTING_MACVLAN_MODE_PRIVATE  = 3,
Packit Service a1bd4f
    NM_SETTING_MACVLAN_MODE_PASSTHRU = 4,
Packit Service a1bd4f
    NM_SETTING_MACVLAN_MODE_SOURCE   = 5,
Packit Service a1bd4f
    _NM_SETTING_MACVLAN_MODE_NUM,                                    /*< skip >*/
Packit Service a1bd4f
    NM_SETTING_MACVLAN_MODE_LAST = _NM_SETTING_MACVLAN_MODE_NUM - 1, /*< skip >*/
Packit 5756e2
} NMSettingMacvlanMode;
Packit 5756e2
Packit 5756e2
NM_AVAILABLE_IN_1_2
Packit Service a1bd4f
GType nm_setting_macvlan_get_type(void);
Packit 5756e2
NM_AVAILABLE_IN_1_2
Packit Service a1bd4f
NMSetting *nm_setting_macvlan_new(void);
Packit 5756e2
Packit 5756e2
NM_AVAILABLE_IN_1_2
Packit Service a1bd4f
const char *nm_setting_macvlan_get_parent(NMSettingMacvlan *setting);
Packit 5756e2
NM_AVAILABLE_IN_1_2
Packit Service a1bd4f
NMSettingMacvlanMode nm_setting_macvlan_get_mode(NMSettingMacvlan *setting);
Packit 5756e2
NM_AVAILABLE_IN_1_2
Packit Service a1bd4f
gboolean nm_setting_macvlan_get_promiscuous(NMSettingMacvlan *setting);
Packit 5756e2
NM_AVAILABLE_IN_1_2
Packit Service a1bd4f
gboolean nm_setting_macvlan_get_tap(NMSettingMacvlan *setting);
Packit 5756e2
Packit 5756e2
G_END_DECLS
Packit 5756e2
Packit 5756e2
#endif /* __NM_SETTING_MACVLAN_H__ */