diff options
author | Lennart Poettering <lennart@poettering.net> | 2014-05-21 09:31:22 +0900 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2014-05-21 09:36:49 +0900 |
commit | f7dc3ab9f43b67abcbd34062b9352ab42debec49 (patch) | |
tree | 0a797055292a0741ef3f1cf473e3933926b42a74 /configure.ac | |
parent | f5c0c00f400e6f1fa58c5faf8bc93ca9057d4463 (diff) |
logind: don't apply RemoveIPC= to system users
We shouldn't destroy IPC objects of system users on logout.
http://lists.freedesktop.org/archives/systemd-devel/2014-April/018373.html
This introduces SYSTEM_UID_MAX defined to the maximum UID of system
users. This value is determined compile-time, either as configure switch
or from /etc/login.defs. (We don't read that file at runtime, since this
is really a choice for a system builder, not the end user.)
While we are at it we then also update journald to use SYSTEM_UID_MAX
when we decide whether to split out log data for a specific client.
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index 9a849ffe7b..c41f6c9a70 100644 --- a/configure.ac +++ b/configure.ac @@ -854,6 +854,26 @@ AC_ARG_WITH(time-epoch, AC_DEFINE_UNQUOTED(TIME_EPOCH, [$TIME_EPOCH], [Time Epoch]) # ------------------------------------------------------------------------------ +AC_ARG_WITH(system-uid-max, + AS_HELP_STRING([--with-system-uid-max=UID] + [Maximum UID for system users]), + [SYSTEM_UID_MAX="$withval"], + [SYSTEM_UID_MAX="`awk 'BEGIN { uid=999 } /^\s*SYS_UID_MAX\s+/ { uid=$2 } END { print uid }' /etc/login.defs 2>/dev/null || echo 999`"]) + +AC_DEFINE_UNQUOTED(SYSTEM_UID_MAX, [$SYSTEM_UID_MAX], [Maximum System UID]) +AC_SUBST(SYSTEM_UID_MAX) + +# ------------------------------------------------------------------------------ +AC_ARG_WITH(system-gid-max, + AS_HELP_STRING([--with-system-gid-max=GID] + [Maximum GID for system groups]), + [SYSTEM_GID_MAX="$withval"], + [SYSTEM_GID_MAX="`awk 'BEGIN { gid=999 } /^\s*SYS_GID_MAX\s+/ { gid=$2 } END { print gid }' /etc/login.defs 2>/dev/null || echo 999`"]) + +AC_DEFINE_UNQUOTED(SYSTEM_GID_MAX, [$SYSTEM_GID_MAX], [Maximum System GID]) +AC_SUBST(SYSTEM_GID_MAX) + +# ------------------------------------------------------------------------------ have_localed=no AC_ARG_ENABLE(localed, AS_HELP_STRING([--disable-localed], [disable locale daemon])) if test "x$enable_localed" != "xno"; then @@ -1256,6 +1276,8 @@ AC_MSG_RESULT([ Extra start script: ${RC_LOCAL_SCRIPT_PATH_START} Extra stop script: ${RC_LOCAL_SCRIPT_PATH_STOP} Debug shell: ${SUSHELL} @ ${DEBUGTTY} + Maximum System UID: ${SYSTEM_UID_MAX} + Maximum System GID: ${SYSTEM_GID_MAX} CFLAGS: ${OUR_CFLAGS} ${CFLAGS} CPPFLAGS: ${OUR_CPPFLAGS} ${CPPFLAGS} |