1/* SPDX-License-Identifier: LGPL-2.1-or-later */
2/*
3 * Copyright (C) 2017 Red Hat, Inc.
4 */
5
6#ifndef __NM_SETTING_OVS_INTERFACE_H__
7#define __NM_SETTING_OVS_INTERFACE_H__
8
9#if !defined(__NETWORKMANAGER_H_INSIDE__) && !defined(NETWORKMANAGER_COMPILATION)
10#error "Only <NetworkManager.h> can be included directly."
11#endif
12
13#include "nm-setting.h"
14
15G_BEGIN_DECLS
16
17#define NM_TYPE_SETTING_OVS_INTERFACE (nm_setting_ovs_interface_get_type())
18#define NM_SETTING_OVS_INTERFACE(obj) \
19 (G_TYPE_CHECK_INSTANCE_CAST((obj), NM_TYPE_SETTING_OVS_INTERFACE, NMSettingOvsInterface))
20#define NM_SETTING_OVS_INTERFACE_CLASS(klass) \
21 (G_TYPE_CHECK_CLASS_CAST((klass), \
22 NM_TYPE_SETTING_OVS_INTERFACECONFIG, \
23 NMSettingOvsInterfaceClass))
24#define NM_IS_SETTING_OVS_INTERFACE(obj) \
25 (G_TYPE_CHECK_INSTANCE_TYPE((obj), NM_TYPE_SETTING_OVS_INTERFACE))
26#define NM_IS_SETTING_OVS_INTERFACE_CLASS(klass) \
27 (G_TYPE_CHECK_CLASS_TYPE((klass), NM_TYPE_SETTING_OVS_INTERFACE))
28#define NM_SETTING_OVS_INTERFACE_GET_CLASS(obj) \
29 (G_TYPE_INSTANCE_GET_CLASS((obj), NM_TYPE_SETTING_OVS_INTERFACE, NMSettingOvsInterfaceClass))
30
31#define NM_SETTING_OVS_INTERFACE_SETTING_NAME "ovs-interface"
32
33#define NM_SETTING_OVS_INTERFACE_TYPE "type"
34
35#define NM_SETTING_OVS_INTERFACE_OFPORT_REQUEST "ofport-request"
36
37typedef struct _NMSettingOvsInterfaceClass NMSettingOvsInterfaceClass;
38
39NM_AVAILABLE_IN_1_10
40GType nm_setting_ovs_interface_get_type(void);
41NM_AVAILABLE_IN_1_10
42NMSetting *nm_setting_ovs_interface_new(void);
43
44NM_AVAILABLE_IN_1_10
45const char *nm_setting_ovs_interface_get_interface_type(NMSettingOvsInterface *self);
46
47NM_AVAILABLE_IN_1_42
48guint32 nm_setting_ovs_interface_get_ofport_request(NMSettingOvsInterface *self);
49
50G_END_DECLS
51
52#endif /* __NM_SETTING_OVS_INTERFACE_H__ */
53

source code of include/libnm/nm-setting-ovs-interface.h