about summary refs log tree commit diff
path: root/src/libnm-core-public/nm-setting-ethtool.h
diff options
context:
space:
mode:
authorMichael Biebl <biebl@debian.org>2021-10-01 23:06:08 +0200
committerMichael Biebl <biebl@debian.org>2021-10-01 23:06:08 +0200
commita3349a04ac4c38885cddefec8515c979d03f9327 (patch)
treed3bbee695aa048cb4ec252e7d63515c8376f9006 /src/libnm-core-public/nm-setting-ethtool.h
parent2d5b58e374d67f60880c7689e80c7745aeef3f62 (diff)
parente74c568b07b50b97873fb4ee1d776dedefbd54d6 (diff)
Update upstream source from tag 'upstream/1.32.12'
Update to upstream version '1.32.12'
with Debian dir 6fabefa95c7dcf83371a78eb2c47013a81ff8d86
Diffstat (limited to 'src/libnm-core-public/nm-setting-ethtool.h')
-rw-r--r--src/libnm-core-public/nm-setting-ethtool.h73
1 files changed, 73 insertions, 0 deletions
diff --git a/src/libnm-core-public/nm-setting-ethtool.h b/src/libnm-core-public/nm-setting-ethtool.h
new file mode 100644
index 00000000..eab447af
--- /dev/null
+++ b/src/libnm-core-public/nm-setting-ethtool.h
@@ -0,0 +1,73 @@
+/* SPDX-License-Identifier: LGPL-2.1-or-later */
+/*
+ * Copyright (C) 2018 Red Hat, Inc.
+ */
+
+#ifndef __NM_SETTING_ETHTOOL_H__
+#define __NM_SETTING_ETHTOOL_H__
+
+#if !defined(__NETWORKMANAGER_H_INSIDE__) && !defined(NETWORKMANAGER_COMPILATION)
+    #error "Only <NetworkManager.h> can be included directly."
+#endif
+
+#include "nm-setting.h"
+
+G_BEGIN_DECLS
+
+NM_AVAILABLE_IN_1_20
+gboolean nm_ethtool_optname_is_feature(const char *optname);
+
+NM_AVAILABLE_IN_1_26
+gboolean nm_ethtool_optname_is_coalesce(const char *optname);
+
+NM_AVAILABLE_IN_1_26
+gboolean nm_ethtool_optname_is_ring(const char *optname);
+
+NM_AVAILABLE_IN_1_32
+gboolean nm_ethtool_optname_is_pause(const char *optname);
+
+/*****************************************************************************/
+
+#define NM_TYPE_SETTING_ETHTOOL (nm_setting_ethtool_get_type())
+#define NM_SETTING_ETHTOOL(obj) \
+    (G_TYPE_CHECK_INSTANCE_CAST((obj), NM_TYPE_SETTING_ETHTOOL, NMSettingEthtool))
+#define NM_SETTING_ETHTOOL_CLASS(klass) \
+    (G_TYPE_CHECK_CLASS_CAST((klass), NM_TYPE_SETTING_ETHTOOL, NMSettingEthtoolClass))
+#define NM_IS_SETTING_ETHTOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), NM_TYPE_SETTING_ETHTOOL))
+#define NM_IS_SETTING_ETHTOOL_CLASS(klass) \
+    (G_TYPE_CHECK_CLASS_TYPE((klass), NM_TYPE_SETTING_ETHTOOL))
+#define NM_SETTING_ETHTOOL_GET_CLASS(obj) \
+    (G_TYPE_INSTANCE_GET_CLASS((obj), NM_TYPE_SETTING_ETHTOOL, NMSettingEthtoolClass))
+
+#define NM_SETTING_ETHTOOL_SETTING_NAME "ethtool"
+
+/*****************************************************************************/
+
+typedef struct _NMSettingEthtoolClass NMSettingEthtoolClass;
+
+NM_AVAILABLE_IN_1_14
+GType nm_setting_ethtool_get_type(void);
+
+NM_AVAILABLE_IN_1_14
+NMSetting *nm_setting_ethtool_new(void);
+
+/*****************************************************************************/
+
+NM_AVAILABLE_IN_1_20
+NM_DEPRECATED_IN_1_26
+const char **nm_setting_ethtool_get_optnames(NMSettingEthtool *setting, guint *out_length);
+
+NM_AVAILABLE_IN_1_14
+NM_DEPRECATED_IN_1_26
+NMTernary nm_setting_ethtool_get_feature(NMSettingEthtool *setting, const char *optname);
+NM_AVAILABLE_IN_1_14
+NM_DEPRECATED_IN_1_26
+void
+nm_setting_ethtool_set_feature(NMSettingEthtool *setting, const char *optname, NMTernary value);
+NM_AVAILABLE_IN_1_14
+NM_DEPRECATED_IN_1_26
+void nm_setting_ethtool_clear_features(NMSettingEthtool *setting);
+
+G_END_DECLS
+
+#endif /* __NM_SETTING_ETHTOOL_H__ */