mirror of
https://github.com/morgan9e/systemd
synced 2026-04-14 08:25:20 +09:00
nsresource: add constants for the only supported UID range size allocations
As requested: https://github.com/systemd/systemd/pull/39322#discussion_r2447366728
This commit is contained in:
@@ -2302,7 +2302,7 @@ static int run(int argc, char *argv[]) {
|
||||
|
||||
/* Don't run things in private userns, if the mount shall be attached to the host */
|
||||
if (!IN_SET(arg_action, ACTION_MOUNT, ACTION_WITH)) {
|
||||
userns_fd = nsresource_allocate_userns(/* name= */ NULL, UINT64_C(0x10000)); /* allocate 64K users by default */
|
||||
userns_fd = nsresource_allocate_userns(/* name= */ NULL, NSRESOURCE_UIDS_64K); /* allocate 64K users by default */
|
||||
if (userns_fd < 0)
|
||||
return log_error_errno(userns_fd, "Failed to allocate user namespace with 64K users: %m");
|
||||
}
|
||||
|
||||
@@ -6007,7 +6007,7 @@ static int run(int argc, char *argv[]) {
|
||||
goto finish;
|
||||
}
|
||||
|
||||
userns_fd = nsresource_allocate_userns(userns_name, UINT64_C(0x10000));
|
||||
userns_fd = nsresource_allocate_userns(userns_name, NSRESOURCE_UIDS_64K); /* allocate 64K UIDs */
|
||||
if (userns_fd < 0) {
|
||||
r = log_error_errno(userns_fd, "Failed to allocate user namespace with 64K users: %m");
|
||||
goto finish;
|
||||
@@ -6019,7 +6019,7 @@ static int run(int argc, char *argv[]) {
|
||||
goto finish;
|
||||
}
|
||||
|
||||
arg_uid_range = UINT32_C(0x10000);
|
||||
arg_uid_range = NSRESOURCE_UIDS_64K;
|
||||
}
|
||||
|
||||
if (arg_directory) {
|
||||
|
||||
@@ -3,6 +3,10 @@
|
||||
|
||||
#include "shared-forward.h"
|
||||
|
||||
/* Helpful constants for the only numbers of UIDs that can currently be allocated */
|
||||
#define NSRESOURCE_UIDS_64K 0x10000U
|
||||
#define NSRESOURCE_UIDS_1 1U
|
||||
|
||||
int nsresource_allocate_userns(const char *name, uint64_t size);
|
||||
int nsresource_register_userns(const char *name, int userns_fd);
|
||||
int nsresource_add_mount(int userns_fd, int mount_fd);
|
||||
|
||||
Reference in New Issue
Block a user