[devel] [PATCH hasher-priv v3 0/7] hasher-privd
Arseny Maslennikov
arseny на altlinux.org
Вт Авг 24 11:24:29 MSK 2021
This is an effort to make hasher-priv a privileged daemon which operates
in response to requests from unprivileged client processes. In short, we
want this to clear the set-uid root privilege from
/usr/libexec/hasher-priv/hasher-priv for the tool to be compatible with
no_new_privs environments, among other benefits.
The cgroup patch[3]] is not yet ready for submission, so it's dropped
for now.
See also: devel@ discussion of v1[1], v2[2], commit message of 1/7.
[1] https://lore.altlinux.org/devel/cover.1576183643.git.legion@altlinux.org/
[2] https://lore.altlinux.org/devel/20201022114343.1810141-1-arseny@altlinux.org/
[3] https://lore.altlinux.org/devel/20201022114343.1810141-7-arseny@altlinux.org/
Alexey Gladkov (1):
Add systemd and sysvinit service files
Arseny Maslennikov (6):
Turn hasher-priv into a daemon
sockets: xsendmsg: get rid of SIGPIPE on socket writes
chrootuid: explicitly reset signal mask before forking off payload
Link with libsetproctitle by Dmitry V. Levin
daemon: set titles for subprocesses
Install hasher-priv without set ugids
hasher-priv/.gitignore | 1 +
hasher-priv/DESIGN | 281 ++++++++++++-------
hasher-priv/Makefile | 35 ++-
hasher-priv/caller.c | 81 +++---
hasher-priv/caller_server.c | 350 ++++++++++++++++++++++++
hasher-priv/caller_task.c | 225 +++++++++++++++
hasher-priv/chrootuid.c | 5 +
hasher-priv/cmdline.c | 27 +-
hasher-priv/communication.c | 394 +++++++++++++++++++++++++++
hasher-priv/communication.h | 80 ++++++
hasher-priv/config.c | 147 +++++++++-
hasher-priv/daemon.conf | 13 +
hasher-priv/epoll.c | 39 +++
hasher-priv/epoll.h | 18 ++
hasher-priv/hasher-priv.c | 78 ++++++
hasher-priv/hasher-priv.spec | 12 +-
hasher-priv/hasher-privd.c | 439 ++++++++++++++++++++++++++++++
hasher-priv/hasher-privd.service | 14 +
hasher-priv/hasher-privd.sysvinit | 103 +++++++
hasher-priv/io_log.c | 2 +-
hasher-priv/io_x11.c | 2 +-
hasher-priv/killuid.c | 2 +-
hasher-priv/logging.c | 71 +++++
hasher-priv/logging.h | 55 ++++
hasher-priv/main.c | 75 -----
hasher-priv/pass.c | 117 +++++++-
hasher-priv/pidfile.c | 129 +++++++++
hasher-priv/pidfile.h | 44 +++
hasher-priv/priv.h | 57 +++-
hasher-priv/sockets.c | 180 ++++++++++++
hasher-priv/sockets.h | 32 +++
hasher-priv/x11.c | 1 +
32 files changed, 2859 insertions(+), 250 deletions(-)
create mode 100644 hasher-priv/caller_server.c
create mode 100644 hasher-priv/caller_task.c
create mode 100644 hasher-priv/communication.c
create mode 100644 hasher-priv/communication.h
create mode 100644 hasher-priv/daemon.conf
create mode 100644 hasher-priv/epoll.c
create mode 100644 hasher-priv/epoll.h
create mode 100644 hasher-priv/hasher-priv.c
create mode 100644 hasher-priv/hasher-privd.c
create mode 100644 hasher-priv/hasher-privd.service
create mode 100755 hasher-priv/hasher-privd.sysvinit
create mode 100644 hasher-priv/logging.c
create mode 100644 hasher-priv/logging.h
delete mode 100644 hasher-priv/main.c
create mode 100644 hasher-priv/pidfile.c
create mode 100644 hasher-priv/pidfile.h
create mode 100644 hasher-priv/sockets.c
create mode 100644 hasher-priv/sockets.h
--
2.32.0
Подробная информация о списке рассылки Devel