summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/libqmi-glib/kernel/if_link_rmnet.h37
1 files changed, 29 insertions, 8 deletions
diff --git a/src/libqmi-glib/kernel/if_link_rmnet.h b/src/libqmi-glib/kernel/if_link_rmnet.h
index 71a1e3e..19aebf1 100644
--- a/src/libqmi-glib/kernel/if_link_rmnet.h
+++ b/src/libqmi-glib/kernel/if_link_rmnet.h
@@ -8,16 +8,8 @@
/* safe guard to avoid redefininig all these symbols if
* the system provided kernel or libc headers already
* define them */
-
#if !defined IFLA_RMNET_MAX
-#define RMNET_FLAGS_INGRESS_DEAGGREGATION (1U << 0)
-#define RMNET_FLAGS_INGRESS_MAP_COMMANDS (1U << 1)
-#define RMNET_FLAGS_INGRESS_MAP_CKSUMV4 (1U << 2)
-#define RMNET_FLAGS_EGRESS_MAP_CKSUMV4 (1U << 3)
-#define RMNET_FLAGS_INGRESS_MAP_CKSUMV5 (1U << 4)
-#define RMNET_FLAGS_EGRESS_MAP_CKSUMV5 (1U << 5)
-
enum {
IFLA_RMNET_UNSPEC,
IFLA_RMNET_MUX_ID,
@@ -34,4 +26,33 @@ struct ifla_rmnet_flags {
#endif /* IFLA_RMNET_MAX */
+/* per-flag safe guards, because these symbols may have been
+ * introduced in different kernel versions; we should only
+ * define those symbols not already defined by the available
+ * kernel headers */
+
+#if !defined RMNET_FLAGS_INGRESS_DEAGGREGATION
+# define RMNET_FLAGS_INGRESS_DEAGGREGATION (1U << 0)
+#endif
+
+#if !defined RMNET_FLAGS_INGRESS_MAP_COMMANDS
+# define RMNET_FLAGS_INGRESS_MAP_COMMANDS (1U << 1)
+#endif
+
+#if !defined RMNET_FLAGS_INGRESS_MAP_CKSUMV4
+# define RMNET_FLAGS_INGRESS_MAP_CKSUMV4 (1U << 2)
+#endif
+
+#if !defined RMNET_FLAGS_EGRESS_MAP_CKSUMV4
+# define RMNET_FLAGS_EGRESS_MAP_CKSUMV4 (1U << 3)
+#endif
+
+#if !defined RMNET_FLAGS_INGRESS_MAP_CKSUMV5
+#define RMNET_FLAGS_INGRESS_MAP_CKSUMV5 (1U << 4)
+#endif
+
+#if !defined RMNET_FLAGS_EGRESS_MAP_CKSUMV5
+#define RMNET_FLAGS_EGRESS_MAP_CKSUMV5 (1U << 5)
+#endif
+
#endif /* _QMI_IF_LINK_RMNET_H */