diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2014-06-27 12:12:07 -0400 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2014-06-30 18:39:45 -0400 |
commit | 2968644080fd103062f070e83edd620e0a58c44d (patch) | |
tree | 23eb479af49fa71966b565dea7f29a2e2eb130e2 /src/fstab-generator | |
parent | 6e81b5b9dc10dd0b47102afe42457e4a314cb01f (diff) |
Move x-systemd-device.timeout handling from core to fstab-generator
Instead of adjusting job timeouts in the core, let fstab-generator
write out a dropin snippet with the appropriate JobTimeout.
x-systemd-device.timeout option is removed from Options= line
in the generated unit.
The functions to write dropins are moved from core/unit.c to
shared/dropin.c, to make them available outside of core.
generator.c is moved to libsystemd-label, because it now uses
functions defined in dropin.c, which are in libsystemd-label.
Diffstat (limited to 'src/fstab-generator')
-rw-r--r-- | src/fstab-generator/fstab-generator.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/fstab-generator/fstab-generator.c b/src/fstab-generator/fstab-generator.c index 98772fb56b..6f392dfd4d 100644 --- a/src/fstab-generator/fstab-generator.c +++ b/src/fstab-generator/fstab-generator.c @@ -44,6 +44,7 @@ static char *arg_root_fstype = NULL; static char *arg_root_options = NULL; static int arg_root_rw = -1; + static int mount_find_pri(struct mntent *me, int *ret) { char *end, *pri; unsigned long r; @@ -173,7 +174,8 @@ static int add_mount( _cleanup_free_ char *name = NULL, *unit = NULL, *lnk = NULL, - *automount_name = NULL, *automount_unit = NULL; + *automount_name = NULL, *automount_unit = NULL, + *filtered = NULL; _cleanup_fclose_ FILE *f = NULL; int r; @@ -245,8 +247,12 @@ static int add_mount( if (!isempty(fstype) && !streq(fstype, "auto")) fprintf(f, "Type=%s\n", fstype); - if (!isempty(opts) && !streq(opts, "defaults")) - fprintf(f, "Options=%s\n", opts); + r = generator_write_timeouts(arg_dest, what, where, opts, &filtered); + if (r < 0) + return r; + + if (!isempty(filtered) && !streq(filtered, "defaults")) + fprintf(f, "Options=%s\n", filtered); fflush(f); if (ferror(f)) { |