Ian Kent 5ec16e
autofs-5.0.6 - add kernel verion check function
Ian Kent 5ec16e
Ian Kent 5ec16e
From: Ian Kent <ikent@redhat.com>
Ian Kent 5ec16e
Ian Kent 5ec16e
Add a function to check kernel version.
Ian Kent 5ec16e
---
Ian Kent 5ec16e
Ian Kent 5ec16e
 CHANGELOG        |    1 +
Ian Kent 5ec16e
 include/mounts.h |   17 +++++++++++++++++
Ian Kent 5ec16e
 2 files changed, 18 insertions(+)
Ian Kent 5ec16e
Ian Kent 5ec16e
Ian Kent 5ec16e
--- autofs-5.0.6.orig/CHANGELOG
Ian Kent 5ec16e
+++ autofs-5.0.6/CHANGELOG
Ian Kent 5ec16e
@@ -24,6 +24,7 @@
Ian Kent 5ec16e
 - add sss lookup module.
Ian Kent 5ec16e
 - teach automount about sss source.
Ian Kent 5ec16e
 - ignore duplicate exports in auto.net.
Ian Kent 5ec16e
+- add kernel verion check function.
Ian Kent 5ec16e
 
Ian Kent 5ec16e
 28/06/2011 autofs-5.0.6
Ian Kent 5ec16e
 -----------------------
Ian Kent 5ec16e
--- autofs-5.0.6.orig/include/mounts.h
Ian Kent 5ec16e
+++ autofs-5.0.6/include/mounts.h
Ian Kent 5ec16e
@@ -16,6 +16,9 @@
Ian Kent 5ec16e
 #ifndef MOUNTS_H
Ian Kent 5ec16e
 #define MOUNTS_H
Ian Kent 5ec16e
 
Ian Kent 5ec16e
+#include <linux/version.h>
Ian Kent 5ec16e
+#include <sys/utsname.h>
Ian Kent 5ec16e
+
Ian Kent 5ec16e
 #ifndef AUTOFS_TYPE_ANY
Ian Kent 5ec16e
 #define AUTOFS_TYPE_ANY		0x0000
Ian Kent 5ec16e
 #endif
Ian Kent 5ec16e
@@ -72,6 +75,20 @@ struct mnt_list {
Ian Kent 5ec16e
 	struct list_head ordered;
Ian Kent 5ec16e
 };
Ian Kent 5ec16e
 
Ian Kent 5ec16e
+static inline unsigned int linux_version_code(void)
Ian Kent 5ec16e
+{
Ian Kent 5ec16e
+        struct utsname my_utsname;
Ian Kent 5ec16e
+        unsigned int p, q, r;
Ian Kent 5ec16e
+
Ian Kent 5ec16e
+        if (uname(&my_utsname))
Ian Kent 5ec16e
+                return 0;
Ian Kent 5ec16e
+
Ian Kent 5ec16e
+        p = (unsigned int)atoi(strtok(my_utsname.release, "."));
Ian Kent 5ec16e
+        q = (unsigned int)atoi(strtok(NULL, "."));
Ian Kent 5ec16e
+        r = (unsigned int)atoi(strtok(NULL, "."));
Ian Kent 5ec16e
+        return KERNEL_VERSION(p, q, r);
Ian Kent 5ec16e
+}
Ian Kent 5ec16e
+
Ian Kent 5ec16e
 unsigned int query_kproto_ver(void);
Ian Kent 5ec16e
 unsigned int get_kver_major(void);
Ian Kent 5ec16e
 unsigned int get_kver_minor(void);