mirror of
https://github.com/systemd/systemd
synced 2026-03-19 03:24:45 +01:00
Compare commits
No commits in common. "3ae637c42ac316692ce8512b1ad63e4c254e00b1" and "30b9fa495cb6301c69fc0b455820e50572650265" have entirely different histories.
3ae637c42a
...
30b9fa495c
@ -52,12 +52,6 @@ touchpad:usb:v05acp0324:*
|
|||||||
touchpad:usb:v044ep1221:*
|
touchpad:usb:v044ep1221:*
|
||||||
ID_INPUT_TOUCHPAD_INTEGRATION=external
|
ID_INPUT_TOUCHPAD_INTEGRATION=external
|
||||||
|
|
||||||
###########################################################
|
|
||||||
# Lenovo IdeaPad Duet3 10IGL5 (82AT)
|
|
||||||
###########################################################
|
|
||||||
touchpad:bluetooth:v17efp60fa:*
|
|
||||||
ID_INPUT_TOUCHPAD_INTEGRATION=internal
|
|
||||||
|
|
||||||
###########################################################
|
###########################################################
|
||||||
# Logitech
|
# Logitech
|
||||||
###########################################################
|
###########################################################
|
||||||
|
|||||||
@ -695,20 +695,11 @@ int dynamic_user_lookup_name(Manager *m, const char *name, uid_t *ret) {
|
|||||||
if (!d)
|
if (!d)
|
||||||
return -ESRCH;
|
return -ESRCH;
|
||||||
|
|
||||||
uid_t uid;
|
r = dynamic_user_current(d, ret);
|
||||||
r = dynamic_user_current(d, &uid);
|
|
||||||
if (r == -EAGAIN) /* not realized yet? */
|
if (r == -EAGAIN) /* not realized yet? */
|
||||||
return -ESRCH;
|
return -ESRCH;
|
||||||
if (r < 0)
|
|
||||||
return r;
|
return r;
|
||||||
|
|
||||||
if (!uid_is_dynamic(uid))
|
|
||||||
return -ESRCH;
|
|
||||||
|
|
||||||
if (ret)
|
|
||||||
*ret = uid;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int dynamic_creds_make(Manager *m, const char *user, const char *group, DynamicCreds **ret) {
|
int dynamic_creds_make(Manager *m, const char *user, const char *group, DynamicCreds **ret) {
|
||||||
|
|||||||
@ -7,7 +7,6 @@
|
|||||||
#include "json-util.h"
|
#include "json-util.h"
|
||||||
#include "manager.h"
|
#include "manager.h"
|
||||||
#include "string-util.h"
|
#include "string-util.h"
|
||||||
#include "uid-classification.h"
|
|
||||||
#include "user-util.h"
|
#include "user-util.h"
|
||||||
#include "varlink-dynamic-user.h"
|
#include "varlink-dynamic-user.h"
|
||||||
|
|
||||||
@ -92,9 +91,6 @@ int vl_method_get_user_record(sd_varlink *link, sd_json_variant *parameters, sd_
|
|||||||
if (r < 0)
|
if (r < 0)
|
||||||
return r;
|
return r;
|
||||||
|
|
||||||
if (!uid_is_dynamic(uid))
|
|
||||||
continue;
|
|
||||||
|
|
||||||
if (!user_match_lookup_parameters(&p, d->name, uid))
|
if (!user_match_lookup_parameters(&p, d->name, uid))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
@ -203,9 +199,6 @@ int vl_method_get_group_record(sd_varlink *link, sd_json_variant *parameters, sd
|
|||||||
if (r < 0)
|
if (r < 0)
|
||||||
return r;
|
return r;
|
||||||
|
|
||||||
if (!gid_is_dynamic((gid_t) uid))
|
|
||||||
continue;
|
|
||||||
|
|
||||||
if (!group_match_lookup_parameters(&p, d->name, (gid_t) uid))
|
if (!group_match_lookup_parameters(&p, d->name, (gid_t) uid))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
|||||||
@ -2730,7 +2730,7 @@ static MakeFileSystemFlags partition_mkfs_flags(const Partition *p) {
|
|||||||
if (arg_discard)
|
if (arg_discard)
|
||||||
flags |= MKFS_DISCARD;
|
flags |= MKFS_DISCARD;
|
||||||
|
|
||||||
if (streq(p->format, "erofs") && !DEBUG_LOGGING && !isatty_safe(STDERR_FILENO))
|
if (streq(p->format, "erofs") && !DEBUG_LOGGING)
|
||||||
flags |= MKFS_QUIET;
|
flags |= MKFS_QUIET;
|
||||||
|
|
||||||
FOREACH_ARRAY(cf, p->copy_files, p->n_copy_files)
|
FOREACH_ARRAY(cf, p->copy_files, p->n_copy_files)
|
||||||
|
|||||||
@ -857,10 +857,9 @@ int parse_elf_object(
|
|||||||
* bound since the core files have an upper size limit. It's also not doing any
|
* bound since the core files have an upper size limit. It's also not doing any
|
||||||
* system call or interacting with the system in any way, besides reading from
|
* system call or interacting with the system in any way, besides reading from
|
||||||
* the file descriptor and writing into these four pipes. */
|
* the file descriptor and writing into these four pipes. */
|
||||||
r = pidref_safe_fork_full(
|
r = pidref_safe_fork_full("(sd-parse-elf)",
|
||||||
"(sd-parse-elf)",
|
|
||||||
/* stdio_fds= */ NULL,
|
/* stdio_fds= */ NULL,
|
||||||
(int[]) { fd, error_pipe[1], return_pipe[1], package_metadata_pipe[1], dlopen_metadata_pipe[1] },
|
(int[]){ fd, error_pipe[1], return_pipe[1], package_metadata_pipe[1], dlopen_metadata_pipe[1] },
|
||||||
5,
|
5,
|
||||||
FORK_RESET_SIGNALS|FORK_CLOSE_ALL_FDS|FORK_NEW_MOUNTNS|FORK_MOUNTNS_SLAVE|FORK_NEW_USERNS|FORK_WAIT|FORK_REOPEN_LOG,
|
FORK_RESET_SIGNALS|FORK_CLOSE_ALL_FDS|FORK_NEW_MOUNTNS|FORK_MOUNTNS_SLAVE|FORK_NEW_USERNS|FORK_WAIT|FORK_REOPEN_LOG,
|
||||||
/* ret= */ NULL);
|
/* ret= */ NULL);
|
||||||
|
|||||||
@ -679,8 +679,6 @@ int make_filesystem(
|
|||||||
fork_flags |= FORK_NEW_MOUNTNS;
|
fork_flags |= FORK_NEW_MOUNTNS;
|
||||||
}
|
}
|
||||||
|
|
||||||
log_info("Formatting %s as %s", node, fstype);
|
|
||||||
|
|
||||||
if (DEBUG_LOGGING) {
|
if (DEBUG_LOGGING) {
|
||||||
_cleanup_free_ char *j = NULL;
|
_cleanup_free_ char *j = NULL;
|
||||||
|
|
||||||
|
|||||||
@ -59,13 +59,3 @@ if [[ ! -v ASAN_OPTIONS ]]; then
|
|||||||
assert_rc 2 systemd-run -q -t --property SystemCallFilter=~open_tree getent group definitelynotarealgroup
|
assert_rc 2 systemd-run -q -t --property SystemCallFilter=~open_tree getent group definitelynotarealgroup
|
||||||
systemctl start systemd-userdbd.socket systemd-userdbd.service
|
systemctl start systemd-userdbd.socket systemd-userdbd.service
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# For issue 40228
|
|
||||||
UNIT="sleep$RANDOM"
|
|
||||||
DISK_GID=$(userdbctl -j group disk | jq .gid)
|
|
||||||
systemd-run -p DynamicUser=yes -p Group=disk -u "$UNIT" sleep infinity
|
|
||||||
userdbctl group disk | grep -F 'io.systemd.NameServiceSwitch' >/dev/null
|
|
||||||
userdbctl group "$DISK_GID" | grep -F 'io.systemd.NameServiceSwitch' >/dev/null
|
|
||||||
(! busctl call org.freedesktop.systemd1 /org/freedesktop/systemd1 org.freedesktop.systemd1.Manager LookupDynamicUserByName "s" disk)
|
|
||||||
(! busctl call org.freedesktop.systemd1 /org/freedesktop/systemd1 org.freedesktop.systemd1.Manager LookupDynamicUserByUID "u" "$DISK_GID")
|
|
||||||
systemctl stop "$UNIT"
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user