diff options
Diffstat (limited to 'ANDROID_3.4.5/include/linux/user_namespace.h')
-rw-r--r-- | ANDROID_3.4.5/include/linux/user_namespace.h | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/ANDROID_3.4.5/include/linux/user_namespace.h b/ANDROID_3.4.5/include/linux/user_namespace.h deleted file mode 100644 index faf46794..00000000 --- a/ANDROID_3.4.5/include/linux/user_namespace.h +++ /dev/null @@ -1,71 +0,0 @@ -#ifndef _LINUX_USER_NAMESPACE_H -#define _LINUX_USER_NAMESPACE_H - -#include <linux/kref.h> -#include <linux/nsproxy.h> -#include <linux/sched.h> -#include <linux/err.h> - -#define UIDHASH_BITS (CONFIG_BASE_SMALL ? 3 : 7) -#define UIDHASH_SZ (1 << UIDHASH_BITS) - -struct user_namespace { - struct kref kref; - struct hlist_head uidhash_table[UIDHASH_SZ]; - struct user_struct *creator; - struct work_struct destroyer; -}; - -extern struct user_namespace init_user_ns; - -#ifdef CONFIG_USER_NS - -static inline struct user_namespace *get_user_ns(struct user_namespace *ns) -{ - if (ns) - kref_get(&ns->kref); - return ns; -} - -extern int create_user_ns(struct cred *new); -extern void free_user_ns(struct kref *kref); - -static inline void put_user_ns(struct user_namespace *ns) -{ - if (ns) - kref_put(&ns->kref, free_user_ns); -} - -uid_t user_ns_map_uid(struct user_namespace *to, const struct cred *cred, uid_t uid); -gid_t user_ns_map_gid(struct user_namespace *to, const struct cred *cred, gid_t gid); - -#else - -static inline struct user_namespace *get_user_ns(struct user_namespace *ns) -{ - return &init_user_ns; -} - -static inline int create_user_ns(struct cred *new) -{ - return -EINVAL; -} - -static inline void put_user_ns(struct user_namespace *ns) -{ -} - -static inline uid_t user_ns_map_uid(struct user_namespace *to, - const struct cred *cred, uid_t uid) -{ - return uid; -} -static inline gid_t user_ns_map_gid(struct user_namespace *to, - const struct cred *cred, gid_t gid) -{ - return gid; -} - -#endif - -#endif /* _LINUX_USER_H */ |