chiark / gitweb /
remove unused includes
[elogind.git] / src / efi-boot-generator / efi-boot-generator.c
index cf9ff73b12d55c67ccd6f4fcf15f2cb834d1f3b6..58c4cc278a2da38d0a5af5e1b5bdc3f283ffc7ea 100644 (file)
@@ -26,7 +26,6 @@
 #include "path-util.h"
 #include "util.h"
 #include "mkdir.h"
-#include "unit-name.h"
 #include "virt.h"
 #include "generator.h"
 #include "special.h"
@@ -58,6 +57,7 @@ int main(int argc, char *argv[]) {
                 log_debug("In initrd, exiting.");
                 return EXIT_SUCCESS;
         }
+
         if (detect_container(NULL) > 0) {
                 log_debug("In a container, exiting.");
                 return EXIT_SUCCESS;
@@ -68,24 +68,25 @@ int main(int argc, char *argv[]) {
                 return EXIT_SUCCESS;
         }
 
-        if (dir_is_empty("/boot") <= 0) {
+        if (path_is_mount_point("/boot", true) <= 0 &&
+            dir_is_empty("/boot") <= 0) {
                 log_debug("/boot already populated, exiting.");
                 return EXIT_SUCCESS;
         }
 
         r = efi_loader_get_device_part_uuid(&id);
         if (r == -ENOENT) {
-                log_debug("EFI loader partition unknown exiting.");
+                log_debug("EFI loader partition unknown, exiting.");
                 return EXIT_SUCCESS;
         } else if (r < 0) {
-                log_error("Failed to read ESP partition UUID: %s", strerror(-r));
+                log_error_errno(r, "Failed to read ESP partition UUID: %m");
                 return EXIT_FAILURE;
         }
 
-        name = strappenda(arg_dest, "/boot.mount");
+        name = strjoina(arg_dest, "/boot.mount");
         f = fopen(name, "wxe");
         if (!f) {
-                log_error("Failed to create mount unit file %s: %m", name);
+                log_error_errno(errno, "Failed to create mount unit file %s: %m", name);
                 return EXIT_FAILURE;
         }
 
@@ -118,15 +119,15 @@ int main(int argc, char *argv[]) {
 
         fflush(f);
         if (ferror(f)) {
-                log_error("Failed to write mount unit file: %m");
+                log_error_errno(errno, "Failed to write mount unit file: %m");
                 return EXIT_FAILURE;
         }
 
-        name = strappenda(arg_dest, "/boot.automount");
+        name = strjoina(arg_dest, "/boot.automount");
         fclose(f);
         f = fopen(name, "wxe");
         if (!f) {
-                log_error("Failed to create automount unit file %s: %m", name);
+                log_error_errno(errno, "Failed to create automount unit file %s: %m", name);
                 return EXIT_FAILURE;
         }
 
@@ -138,15 +139,15 @@ int main(int argc, char *argv[]) {
 
         fflush(f);
         if (ferror(f)) {
-                log_error("Failed to write automount unit file: %m");
+                log_error_errno(errno, "Failed to write automount unit file: %m");
                 return EXIT_FAILURE;
         }
 
-        name = strappenda(arg_dest, "/" SPECIAL_LOCAL_FS_TARGET ".wants/boot.automount");
+        name = strjoina(arg_dest, "/" SPECIAL_LOCAL_FS_TARGET ".wants/boot.automount");
         mkdir_parents(name, 0755);
 
         if (symlink("../boot.automount", name) < 0) {
-                log_error("Failed to create symlink %s: %m", name);
+                log_error_errno(errno, "Failed to create symlink %s: %m", name);
                 return EXIT_FAILURE;
         }