X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fcryptsetup%2Fcryptsetup-generator.c;h=386714b4fd09e8ac67bec1f6854c9328993fa11e;hb=1c574591db5a62aa40aaac02645be1521ea85771;hp=f714c8c2414b6c0f2f0de9373fadf21695b6db63;hpb=1c7327004ab6f0b91bdceb06877a3094c5fe2a4b;p=elogind.git diff --git a/src/cryptsetup/cryptsetup-generator.c b/src/cryptsetup/cryptsetup-generator.c index f714c8c24..386714b4f 100644 --- a/src/cryptsetup/cryptsetup-generator.c +++ b/src/cryptsetup/cryptsetup-generator.c @@ -88,7 +88,7 @@ static int create_disk( goto fail; } - p = join(arg_dest, "/", n, NULL); + p = strjoin(arg_dest, "/", n, NULL); if (!p) { r = -ENOMEM; log_error("Failed to allocate unit file name."); @@ -124,7 +124,7 @@ static int create_disk( "SourcePath=/etc/crypttab\n" "Conflicts=umount.target\n" "DefaultDependencies=no\n" - "BindTo=%s dev-mapper-%%i.device\n" + "BindsTo=%s dev-mapper-%%i.device\n" "After=systemd-readahead-collect.service systemd-readahead-replay.service %s\n" "Before=umount.target\n", d, d); @@ -175,7 +175,7 @@ static int create_disk( if (!noauto) { - to = join(arg_dest, "/", d, ".wants/", n, NULL); + to = strjoin(arg_dest, "/", d, ".wants/", n, NULL); if (!to) { r = -ENOMEM; goto fail; @@ -191,9 +191,9 @@ static int create_disk( free(to); if (!nofail) - to = join(arg_dest, "/cryptsetup.target.requires/", n, NULL); + to = strjoin(arg_dest, "/cryptsetup.target.requires/", n, NULL); else - to = join(arg_dest, "/cryptsetup.target.wants/", n, NULL); + to = strjoin(arg_dest, "/cryptsetup.target.wants/", n, NULL); if (!to) { r = -ENOMEM; goto fail; @@ -211,7 +211,7 @@ static int create_disk( } e = unit_name_escape(name); - to = join(arg_dest, "/dev-mapper-", e, ".device.requires/", n, NULL); + to = strjoin(arg_dest, "/dev-mapper-", e, ".device.requires/", n, NULL); if (!to) { r = -ENOMEM; goto fail; @@ -303,8 +303,7 @@ static int parse_proc_cmdline(void) { t = strv_append(arg_proc_cmdline_disks, word + 10); if (!t) { - log_error("Out of memory"); - r = -ENOMEM; + r = log_oom(); goto finish; } strv_free(arg_proc_cmdline_disks); @@ -317,8 +316,7 @@ static int parse_proc_cmdline(void) { t = strv_append(arg_proc_cmdline_disks, word + 13); if (!t) { - log_error("Out of memory"); - r = -ENOMEM; + r = log_oom(); goto finish; } strv_free(arg_proc_cmdline_disks); @@ -376,11 +374,11 @@ int main(int argc, char *argv[]) { if (startswith(p, "luks-")) p += 5; - name = strappend("luks-", *i); - device = strappend("UUID=", *i); + name = strappend("luks-", p); + device = strappend("UUID=", p); if (!name || !device) { - log_error("Out of memory"); + log_oom(); r = EXIT_FAILURE; free(name); free(device);