diff options
author | Kay Sievers <kay@vrfy.org> | 2012-04-17 22:25:24 +0200 |
---|---|---|
committer | Kay Sievers <kay@vrfy.org> | 2012-04-17 22:31:38 +0200 |
commit | 5ba2dc259f3cdd8fddef68cfd28380a32534e49a (patch) | |
tree | 8bc0335adebbdb72f97947ffa21b35f058cb2c82 /src/core/mount-setup.c | |
parent | 1e8ebcdb5968d6e3bcfe6cf1ca4ed73dd1b671b3 (diff) |
udev: unify /dev static symlink setup
Diffstat (limited to 'src/core/mount-setup.c')
-rw-r--r-- | src/core/mount-setup.c | 31 |
1 files changed, 3 insertions, 28 deletions
diff --git a/src/core/mount-setup.c b/src/core/mount-setup.c index 30046a51bd..961773b1e9 100644 --- a/src/core/mount-setup.c +++ b/src/core/mount-setup.c @@ -30,6 +30,7 @@ #include <ftw.h> #include "mount-setup.h" +#include "dev-setup.h" #include "log.h" #include "macro.h" #include "util.h" @@ -323,24 +324,6 @@ finish: return r; } -static int symlink_and_label(const char *old_path, const char *new_path) { - int r; - - assert(old_path); - assert(new_path); - - r = label_context_set(new_path, S_IFLNK); - if (r < 0) - return r; - - if (symlink(old_path, new_path) < 0) - r = -errno; - - label_context_clear(); - - return r; -} - static int nftw_cb( const char *fpath, const struct stat *sb, @@ -365,20 +348,13 @@ static int nftw_cb( int mount_setup(bool loaded_policy) { - static const char symlinks[] = - "/proc/kcore\0" "/dev/core\0" - "/proc/self/fd\0" "/dev/fd\0" - "/proc/self/fd/0\0" "/dev/stdin\0" - "/proc/self/fd/1\0" "/dev/stdout\0" - "/proc/self/fd/2\0" "/dev/stderr\0"; - static const char relabel[] = "/run/initramfs/root-fsck\0" "/run/initramfs/shutdown\0"; int r; unsigned i; - const char *j, *k; + const char *j; for (i = 0; i < ELEMENTSOF(mount_table); i ++) { r = mount_one(mount_table + i, true); @@ -413,8 +389,7 @@ int mount_setup(bool loaded_policy) { /* Create a few default symlinks, which are normally created * by udevd, but some scripts might need them before we start * udevd. */ - NULSTR_FOREACH_PAIR(j, k, symlinks) - symlink_and_label(j, k); + dev_setup(); /* Create a few directories we always want around */ label_mkdir("/run/systemd", 0755); |