X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Ftmpfiles%2Ftmpfiles.c;h=c948d4d218b7cd42ac2d6125f2da3c010c892d46;hb=d01efa07444e49aafd78e0aa822168da688d53f5;hp=0e1bd86748396228bf4412ae98ea9ca9f74ad431;hpb=294929f8916ca37d89ccb1757868d22f8068c56b;p=elogind.git diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c index 0e1bd8674..c948d4d21 100644 --- a/src/tmpfiles/tmpfiles.c +++ b/src/tmpfiles/tmpfiles.c @@ -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));