summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@aleksander.es>2021-10-14 15:17:31 +0200
committerAleksander Morgado <aleksander@aleksander.es>2021-10-14 15:20:54 +0200
commit973969985b71ff42969b63f05f1f646cde316f13 (patch)
treed70829f8be3469f03d46998cf33fd243553a1387
parent043f4755eaf66c17ed13eb92e9093fb0ae7768b0 (diff)
libqmi-glib,rmnet: per flag symbol safeguards
We may have systems that define IFLA_RMNET_MAX, but don't have all known flags (e.g. the QMAPV5 ones are newer).
-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 */