chiark / gitweb /
missing: add __NR_getrandom for powerpc architecture
[elogind.git] / src / tmpfiles / tmpfiles.c
index 0e1bd86748396228bf4412ae98ea9ca9f74ad431..c948d4d218b7cd42ac2d6125f2da3c010c892d46 100644 (file)
@@ -682,7 +682,6 @@ static int path_set_xattrs(Item *i, const char *path) {
 static int get_acls_from_arg(Item *item) {
 #ifdef HAVE_ACL
         int r;
-        _cleanup_(acl_freep) acl_t a = NULL, d = NULL;
 
         assert(item);
 
@@ -699,6 +698,7 @@ static int get_acls_from_arg(Item *item) {
         return 0;
 }
 
+#ifdef HAVE_ACL
 static int path_set_acl(const char *path, acl_type_t type, acl_t acl, bool modify) {
         _cleanup_(acl_freep) acl_t dup = NULL;
         int r;
@@ -737,6 +737,7 @@ static int path_set_acl(const char *path, acl_type_t type, acl_t acl, bool modif
                                        strna(t), path);
         return 0;
 }
+#endif
 
 static int path_set_acls(Item *item, const char *path) {
 #ifdef HAVE_ACL
@@ -907,19 +908,17 @@ typedef enum {
         CREATION_NORMAL,
         CREATION_EXISTING,
         CREATION_FORCE,
+        _CREATION_MODE_MAX,
+        _CREATION_MODE_INVALID = -1
 } CreationMode;
 
-static const char* creation_verb(CreationMode mode) {
-        switch(mode) {
-        case CREATION_NORMAL:
-                return "Created";
-        case CREATION_EXISTING:
-                return "Found existing";
-        case CREATION_FORCE:
-                return "Created replacement";
-        }
-        assert_not_reached("Bad creation");
-}
+static const char *creation_mode_verb_table[_CREATION_MODE_MAX] = {
+        [CREATION_NORMAL] = "Created",
+        [CREATION_EXISTING] = "Found existing",
+        [CREATION_FORCE] = "Created replacement",
+};
+
+DEFINE_PRIVATE_STRING_TABLE_LOOKUP_TO_STRING(creation_mode_verb, CreationMode);
 
 static int create_item(Item *i) {
         struct stat st;
@@ -1013,7 +1012,7 @@ static int create_item(Item *i) {
                         creation = CREATION_EXISTING;
                 } else
                         creation = CREATION_NORMAL;
-                log_debug("%s directory \"%s\".", creation_verb(creation), i->path);
+                log_debug("%s directory \"%s\".", creation_mode_verb_to_string(creation), i->path);
 
                 r = path_set_perms(i, i->path);
                 if (r < 0)
@@ -1057,7 +1056,7 @@ static int create_item(Item *i) {
                                 creation = CREATION_EXISTING;
                 } else
                         creation = CREATION_NORMAL;
-                log_debug("%s fifo \"%s\".", creation_verb(creation), i->path);
+                log_debug("%s fifo \"%s\".", creation_mode_verb_to_string(creation), i->path);
 
                 r = path_set_perms(i, i->path);
                 if (r < 0)
@@ -1096,7 +1095,7 @@ static int create_item(Item *i) {
                                 creation = CREATION_EXISTING;
                 } else
                         creation = CREATION_NORMAL;
-                log_debug("%s symlink \"%s\".", creation_verb(creation), i->path);
+                log_debug("%s symlink \"%s\".", creation_mode_verb_to_string(creation), i->path);
 
                 break;
 
@@ -1157,7 +1156,7 @@ static int create_item(Item *i) {
                 } else
                         creation = CREATION_NORMAL;
                 log_debug("%s %s device node \"%s\" %u:%u.",
-                          creation_verb(creation),
+                          creation_mode_verb_to_string(creation),
                           i->type == CREATE_BLOCK_DEVICE ? "block" : "char",
                           i->path, major(i->mode), minor(i->mode));