]> bbs.cooldavid.org Git - net-next-2.6.git/blobdiff - include/linux/cred.h
include/linux/cred.h: fix build
[net-next-2.6.git] / include / linux / cred.h
index 24520a539c6ff18b9067b24d56dc22075c7096e2..4e3387a89cb92a8549e2c2479c37ac7fd2443956 100644 (file)
@@ -15,6 +15,7 @@
 #include <linux/capability.h>
 #include <linux/init.h>
 #include <linux/key.h>
+#include <linux/selinux.h>
 #include <asm/atomic.h>
 
 struct user_struct;
@@ -175,21 +176,7 @@ extern void __invalid_creds(const struct cred *, const char *, unsigned);
 extern void __validate_process_creds(struct task_struct *,
                                     const char *, unsigned);
 
-static inline bool creds_are_invalid(const struct cred *cred)
-{
-       if (cred->magic != CRED_MAGIC)
-               return true;
-       if (atomic_read(&cred->usage) < atomic_read(&cred->subscribers))
-               return true;
-#ifdef CONFIG_SECURITY_SELINUX
-       if ((unsigned long) cred->security < PAGE_SIZE)
-               return true;
-       if ((*(u32*)cred->security & 0xffffff00) ==
-           (POISON_FREE << 24 | POISON_FREE << 16 | POISON_FREE << 8))
-               return true;
-#endif
-       return false;
-}
+extern bool creds_are_invalid(const struct cred *cred);
 
 static inline void __validate_creds(const struct cred *cred,
                                    const char *file, unsigned line)