userns: userns: Remove UIDGID_STRICT_TYPE_CHECKS
Removing UIDGID_STRICT_TYPE_CHECKS simplifies the code and always generates a compile error if the uids and kuids or gids and kgids are mixed by accident. Now that the appropriate conversions have been placed throughout the kernel there is no longer a need for a mode where we don't detect them as compile errors. Acked-by: Serge Hallyn <serge.hallyn@canonical.com> Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
This commit is contained in:
parent
41301ae78a
commit
261000a56b
4 changed files with 0 additions and 51 deletions
|
@ -39,9 +39,6 @@ struct posix_acl_entry {
|
||||||
union {
|
union {
|
||||||
kuid_t e_uid;
|
kuid_t e_uid;
|
||||||
kgid_t e_gid;
|
kgid_t e_gid;
|
||||||
#ifndef CONFIG_UIDGID_STRICT_TYPE_CHECKS
|
|
||||||
unsigned int e_id;
|
|
||||||
#endif
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -18,8 +18,6 @@ extern struct user_namespace init_user_ns;
|
||||||
|
|
||||||
typedef __kernel_uid32_t projid_t;
|
typedef __kernel_uid32_t projid_t;
|
||||||
|
|
||||||
#ifdef CONFIG_UIDGID_STRICT_TYPE_CHECKS
|
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
projid_t val;
|
projid_t val;
|
||||||
} kprojid_t;
|
} kprojid_t;
|
||||||
|
@ -31,19 +29,6 @@ static inline projid_t __kprojid_val(kprojid_t projid)
|
||||||
|
|
||||||
#define KPROJIDT_INIT(value) (kprojid_t){ value }
|
#define KPROJIDT_INIT(value) (kprojid_t){ value }
|
||||||
|
|
||||||
#else
|
|
||||||
|
|
||||||
typedef projid_t kprojid_t;
|
|
||||||
|
|
||||||
static inline projid_t __kprojid_val(kprojid_t projid)
|
|
||||||
{
|
|
||||||
return projid;
|
|
||||||
}
|
|
||||||
|
|
||||||
#define KPROJIDT_INIT(value) ((kprojid_t) value )
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define INVALID_PROJID KPROJIDT_INIT(-1)
|
#define INVALID_PROJID KPROJIDT_INIT(-1)
|
||||||
#define OVERFLOW_PROJID 65534
|
#define OVERFLOW_PROJID 65534
|
||||||
|
|
||||||
|
|
|
@ -17,8 +17,6 @@
|
||||||
struct user_namespace;
|
struct user_namespace;
|
||||||
extern struct user_namespace init_user_ns;
|
extern struct user_namespace init_user_ns;
|
||||||
|
|
||||||
#ifdef CONFIG_UIDGID_STRICT_TYPE_CHECKS
|
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
uid_t val;
|
uid_t val;
|
||||||
} kuid_t;
|
} kuid_t;
|
||||||
|
@ -41,26 +39,6 @@ static inline gid_t __kgid_val(kgid_t gid)
|
||||||
return gid.val;
|
return gid.val;
|
||||||
}
|
}
|
||||||
|
|
||||||
#else
|
|
||||||
|
|
||||||
typedef uid_t kuid_t;
|
|
||||||
typedef gid_t kgid_t;
|
|
||||||
|
|
||||||
static inline uid_t __kuid_val(kuid_t uid)
|
|
||||||
{
|
|
||||||
return uid;
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline gid_t __kgid_val(kgid_t gid)
|
|
||||||
{
|
|
||||||
return gid;
|
|
||||||
}
|
|
||||||
|
|
||||||
#define KUIDT_INIT(value) ((kuid_t) value )
|
|
||||||
#define KGIDT_INIT(value) ((kgid_t) value )
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define GLOBAL_ROOT_UID KUIDT_INIT(0)
|
#define GLOBAL_ROOT_UID KUIDT_INIT(0)
|
||||||
#define GLOBAL_ROOT_GID KGIDT_INIT(0)
|
#define GLOBAL_ROOT_GID KGIDT_INIT(0)
|
||||||
|
|
||||||
|
|
11
init/Kconfig
11
init/Kconfig
|
@ -1110,8 +1110,6 @@ config IPC_NS
|
||||||
|
|
||||||
config USER_NS
|
config USER_NS
|
||||||
bool "User namespace"
|
bool "User namespace"
|
||||||
select UIDGID_STRICT_TYPE_CHECKS
|
|
||||||
|
|
||||||
default n
|
default n
|
||||||
help
|
help
|
||||||
This allows containers, i.e. vservers, to use user namespaces
|
This allows containers, i.e. vservers, to use user namespaces
|
||||||
|
@ -1143,15 +1141,6 @@ config NET_NS
|
||||||
|
|
||||||
endif # NAMESPACES
|
endif # NAMESPACES
|
||||||
|
|
||||||
config UIDGID_STRICT_TYPE_CHECKS
|
|
||||||
bool "Require conversions between uid/gids and their internal representation"
|
|
||||||
default n
|
|
||||||
help
|
|
||||||
While the nececessary conversions are being added to all subsystems this option allows
|
|
||||||
the code to continue to build for unconverted subsystems.
|
|
||||||
|
|
||||||
Say Y here if you want the strict type checking enabled
|
|
||||||
|
|
||||||
config SCHED_AUTOGROUP
|
config SCHED_AUTOGROUP
|
||||||
bool "Automatic process group scheduling"
|
bool "Automatic process group scheduling"
|
||||||
select EVENTFD
|
select EVENTFD
|
||||||
|
|
Loading…
Reference in a new issue