Whamcloud - gitweb
LU-13525 sec: better struct sepol_downcall_data
[fs/lustre-release.git] / lustre / include / uapi / linux / lustre / lustre_user.h
index 15d62b6..62d5746 100644 (file)
@@ -50,6 +50,7 @@
 #include <linux/types.h>
 #include <linux/unistd.h>
 #include <linux/lustre/lustre_fiemap.h>
 #include <linux/types.h>
 #include <linux/unistd.h>
 #include <linux/lustre/lustre_fiemap.h>
+#include <linux/lustre/lustre_ver.h>
 
 #ifndef __KERNEL__
 # define __USE_ISOC99  1
 
 #ifndef __KERNEL__
 # define __USE_ISOC99  1
@@ -1288,7 +1289,6 @@ static inline const char *qtype_name(int qtype)
 }
 
 #define IDENTITY_DOWNCALL_MAGIC 0x6d6dd629
 }
 
 #define IDENTITY_DOWNCALL_MAGIC 0x6d6dd629
-#define SEPOL_DOWNCALL_MAGIC 0x8b8bb842
 
 /* permission */
 #define N_PERMS_MAX      64
 
 /* permission */
 #define N_PERMS_MAX      64
@@ -1310,12 +1310,25 @@ struct identity_downcall_data {
        __u32                            idd_groups[0];
 };
 
        __u32                            idd_groups[0];
 };
 
-struct sepol_downcall_data {
+#if LUSTRE_VERSION_CODE < OBD_OCD_VERSION(2, 16, 53, 0)
+/* old interface struct is deprecated in 2.14 */
+#define SEPOL_DOWNCALL_MAGIC_OLD 0x8b8bb842
+struct sepol_downcall_data_old {
        __u32           sdd_magic;
        __s64           sdd_sepol_mtime;
        __u16           sdd_sepol_len;
        char            sdd_sepol[0];
 };
        __u32           sdd_magic;
        __s64           sdd_sepol_mtime;
        __u16           sdd_sepol_len;
        char            sdd_sepol[0];
 };
+#endif
+
+#define SEPOL_DOWNCALL_MAGIC 0x8b8bb843
+struct sepol_downcall_data {
+       __u32           sdd_magic;
+       __u16           sdd_sepol_len;
+       __u16           sdd_padding1;
+       __s64           sdd_sepol_mtime;
+       char            sdd_sepol[0];
+};
 
 #ifdef NEED_QUOTA_DEFS
 #ifndef QIF_BLIMITS
 
 #ifdef NEED_QUOTA_DEFS
 #ifndef QIF_BLIMITS