diff options
author | Lennart Poettering <lennart@poettering.net> | 2020-05-28 09:17:48 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2020-05-28 23:52:34 +0200 |
commit | 4a56315a990b802860170ecd1bbd3eb68e14a38b (patch) | |
tree | abcd9746188d39ad6b1186652e048dbf9b1003a2 | |
parent | 08b8f29a25fb377cf0b6a7b8a2b6e2136382588d (diff) | |
download | systemd-4a56315a990b802860170ecd1bbd3eb68e14a38b.tar.gz |
path: use ROOTPREFIX properly
ROOTPREFIX doesn't include the trailing /, hence add it in where needed.
Also, given that sysctl.d/, binfmt.d/, sysusers.d/ are generally
accessed before /var/ is up they should use ROOTPREFIX rather than
PREFIX. Fix that.
-rw-r--r-- | src/core/systemd.pc.in | 8 | ||||
-rw-r--r-- | src/libsystemd/sd-path/sd-path.c | 18 |
2 files changed, 13 insertions, 13 deletions
diff --git a/src/core/systemd.pc.in b/src/core/systemd.pc.in index 410a126317..8424837824 100644 --- a/src/core/systemd.pc.in +++ b/src/core/systemd.pc.in @@ -65,16 +65,16 @@ systemdshutdowndir=${systemd_shutdown_dir} tmpfiles_dir=${prefix}/lib/tmpfiles.d tmpfilesdir=${tmpfiles_dir} -sysusers_dir=${prefix}/lib/sysusers.d +sysusers_dir=${rootprefix}/lib/sysusers.d sysusersdir=${sysusers_dir} -sysctl_dir=${prefix}/lib/sysctl.d +sysctl_dir=${rootprefix}/lib/sysctl.d sysctldir=${sysctl_dir} -binfmt_dir=${prefix}/lib/binfmt.d +binfmt_dir=${rootprefix}/lib/binfmt.d binfmtdir=${binfmt_dir} -modules_load_dir=${prefix}/lib/modules-load.d +modules_load_dir=${rootprefix}/lib/modules-load.d modulesloaddir=${modules_load_dir} catalog_dir=${prefix}/lib/systemd/catalog diff --git a/src/libsystemd/sd-path/sd-path.c b/src/libsystemd/sd-path/sd-path.c index 9f8397cd37..ea8e167128 100644 --- a/src/libsystemd/sd-path/sd-path.c +++ b/src/libsystemd/sd-path/sd-path.c @@ -321,7 +321,7 @@ static int get_path(uint64_t type, char **buffer, const char **ret) { return from_user_dir("XDG_DESKTOP_DIR", buffer, ret); case SD_PATH_SYSTEMD_UTIL_DIR: - *ret = ROOTPREFIX "lib/systemd"; + *ret = ROOTPREFIX "/lib/systemd"; return 0; case SD_PATH_SYSTEMD_SYSTEM_UNIT_DIR: @@ -329,7 +329,7 @@ static int get_path(uint64_t type, char **buffer, const char **ret) { return 0; case SD_PATH_SYSTEMD_SYSTEM_PRESET_DIR: - *ret = ROOTPREFIX "lib/systemd/system-preset"; + *ret = ROOTPREFIX "/lib/systemd/system-preset"; return 0; case SD_PATH_SYSTEMD_USER_UNIT_DIR: @@ -337,7 +337,7 @@ static int get_path(uint64_t type, char **buffer, const char **ret) { return 0; case SD_PATH_SYSTEMD_USER_PRESET_DIR: - *ret = ROOTPREFIX "lib/systemd/user-preset"; + *ret = ROOTPREFIX "/lib/systemd/user-preset"; return 0; case SD_PATH_SYSTEMD_SYSTEM_CONF_DIR: @@ -357,11 +357,11 @@ static int get_path(uint64_t type, char **buffer, const char **ret) { return 0; case SD_PATH_SYSTEMD_SLEEP_DIR: - *ret = ROOTPREFIX "lib/systemd/system-sleep"; + *ret = ROOTPREFIX "/lib/systemd/system-sleep"; return 0; case SD_PATH_SYSTEMD_SHUTDOWN_DIR: - *ret = ROOTPREFIX "lib/systemd/system-shutdown"; + *ret = ROOTPREFIX "/lib/systemd/system-shutdown"; return 0; /* FIXME: systemd.pc uses ${prefix}, but CONF_PATHS_NULSTR doesn't. @@ -371,19 +371,19 @@ static int get_path(uint64_t type, char **buffer, const char **ret) { return 0; case SD_PATH_SYSUSERS_DIR: - *ret = "/usr/lib/sysusers.d"; + *ret = ROOTPREFIX "/lib/sysusers.d"; return 0; case SD_PATH_SYSCTL_DIR: - *ret = "/usr/lib/sysctl.d"; + *ret = ROOTPREFIX "/lib/sysctl.d"; return 0; case SD_PATH_BINFMT_DIR: - *ret = "/usr/lib/binfmt.d"; + *ret = ROOTPREFIX "/lib/binfmt.d"; return 0; case SD_PATH_MODULES_LOAD_DIR: - *ret = "/usr/lib/modules-load.d"; + *ret = ROOTPREFIX "/lib/modules-load.d"; return 0; case SD_PATH_CATALOG_DIR: |