OSDN Git Service

Rename node field flags to attrib.
authorrelan <relan@users.noreply.github.com>
Tue, 27 Dec 2016 06:18:58 +0000 (09:18 +0300)
committerrelan <relan@users.noreply.github.com>
Mon, 16 Jan 2017 06:29:08 +0000 (09:29 +0300)
Now it contains only exFAT attributes (from meta2).

fsck/main.c
fuse/main.c
libexfat/exfat.h
libexfat/mount.c
libexfat/node.c
libexfat/utils.c

index 700c83c..67435cf 100644 (file)
@@ -72,8 +72,8 @@ static void dirck(struct exfat* ef, const char* path)
 
        if (exfat_lookup(ef, &parent, path) != 0)
                exfat_bug("directory '%s' is not found", path);
-       if (!(parent->flags & EXFAT_ATTRIB_DIR))
-               exfat_bug("'%s' is not a directory (0x%x)", path, parent->flags);
+       if (!(parent->attrib & EXFAT_ATTRIB_DIR))
+               exfat_bug("'%s' is not a directory (%#hx)", path, parent->attrib);
        if (nodeck(ef, parent) != 0)
        {
                exfat_put_node(ef, parent);
@@ -104,7 +104,7 @@ static void dirck(struct exfat* ef, const char* path)
                exfat_debug("%s: %s, %"PRIu64" bytes, cluster %u", entry_path,
                                node->is_contiguous ? "contiguous" : "fragmented",
                                node->size, node->start_cluster);
-               if (node->flags & EXFAT_ATTRIB_DIR)
+               if (node->attrib & EXFAT_ATTRIB_DIR)
                {
                        directories_count++;
                        dirck(ef, entry_path);
index efa5bfa..51d2dfd 100644 (file)
@@ -111,10 +111,10 @@ static int fuse_exfat_readdir(const char* path, void* buffer,
        rc = exfat_lookup(&ef, &parent, path);
        if (rc != 0)
                return rc;
-       if (!(parent->flags & EXFAT_ATTRIB_DIR))
+       if (!(parent->attrib & EXFAT_ATTRIB_DIR))
        {
                exfat_put_node(&ef, parent);
-               exfat_error("'%s' is not a directory (0x%x)", path, parent->flags);
+               exfat_error("'%s' is not a directory (%#hx)", path, parent->attrib);
                return -ENOTDIR;
        }
 
index 4b8cf69..2a592a0 100644 (file)
@@ -78,7 +78,7 @@ struct exfat_node
        cluster_t entry_cluster;
        off_t entry_offset;
        cluster_t start_cluster;
-       int flags;
+       uint16_t attrib;
        bool is_contiguous : 1;
        bool is_cached : 1;
        bool is_dirty : 1;
index b1ce654..f53b55a 100644 (file)
@@ -287,7 +287,7 @@ int exfat_mount(struct exfat* ef, const char* spec, const char* options)
                return -ENOMEM;
        }
        memset(ef->root, 0, sizeof(struct exfat_node));
-       ef->root->flags = EXFAT_ATTRIB_DIR;
+       ef->root->attrib = EXFAT_ATTRIB_DIR;
        ef->root->start_cluster = le32_to_cpu(ef->sb->rootdir_cluster);
        ef->root->fptr_cluster = ef->root->start_cluster;
        ef->root->name[0] = cpu_to_le16('\0');
index 6c23f14..d64ae29 100644 (file)
@@ -96,7 +96,7 @@ static int opendir(struct exfat* ef, const struct exfat_node* dir,
 {
        char buffer[EXFAT_UTF8_NAME_BUFFER_MAX];
 
-       if (!(dir->flags & EXFAT_ATTRIB_DIR))
+       if (!(dir->attrib & EXFAT_ATTRIB_DIR))
        {
                exfat_get_name(dir, buffer);
                exfat_bug("'%s' is not a directory", buffer);
@@ -181,7 +181,7 @@ static struct exfat_node* allocate_node(void)
 static void init_node_meta1(struct exfat_node* node,
                const struct exfat_entry_meta1* meta1)
 {
-       node->flags = le16_to_cpu(meta1->attrib);
+       node->attrib = le16_to_cpu(meta1->attrib);
        node->mtime = exfat_exfat2unix(meta1->mdate, meta1->mtime,
                        meta1->mtime_cs);
        /* there is no centiseconds field for atime */
@@ -261,13 +261,13 @@ static bool check_node(const struct exfat_node* node, uint16_t actual_checksum,
        if (node->size == 0 && node->is_contiguous)
        {
                exfat_get_name(node, buffer);
-               exfat_error("'%s' is empty but marked as contiguous (%#x)", buffer,
-                               node->flags);
+               exfat_error("'%s' is empty but marked as contiguous (%#hx)", buffer,
+                               node->attrib);
                ret = false;
        }
 
        /* Directory size must be aligned on at cluster boundary. */
-       if ((node->flags & EXFAT_ATTRIB_DIR) && node->size % cluster_size != 0)
+       if ((node->attrib & EXFAT_ATTRIB_DIR) && node->size % cluster_size != 0)
        {
                exfat_get_name(node, buffer);
                exfat_error("'%s' directory size %"PRIu64" is not divisible by %d", buffer,
@@ -704,7 +704,7 @@ int exfat_flush_node(struct exfat* ef, struct exfat_node* node)
        }
        if (meta1.type != EXFAT_ENTRY_FILE)
                exfat_bug("invalid type of meta1: 0x%hhx", meta1.type);
-       meta1.attrib = cpu_to_le16(node->flags);
+       meta1.attrib = cpu_to_le16(node->attrib);
        exfat_unix2exfat(node->mtime, &meta1.mdate, &meta1.mtime, &meta1.mtime_cs);
        exfat_unix2exfat(node->atime, &meta1.adate, &meta1.atime, NULL);
 
@@ -786,7 +786,7 @@ static int shrink_directory(struct exfat* ef, struct exfat_node* dir,
        uint64_t entries = 0;
        uint64_t new_size;
 
-       if (!(dir->flags & EXFAT_ATTRIB_DIR))
+       if (!(dir->attrib & EXFAT_ATTRIB_DIR))
                exfat_bug("attempted to shrink a file");
        if (!dir->is_cached)
                exfat_bug("attempted to shrink uncached directory");
@@ -852,7 +852,7 @@ static int delete(struct exfat* ef, struct exfat_node* node)
 
 int exfat_unlink(struct exfat* ef, struct exfat_node* node)
 {
-       if (node->flags & EXFAT_ATTRIB_DIR)
+       if (node->attrib & EXFAT_ATTRIB_DIR)
                return -EISDIR;
        return delete(ef, node);
 }
@@ -861,7 +861,7 @@ int exfat_rmdir(struct exfat* ef, struct exfat_node* node)
 {
        int rc;
 
-       if (!(node->flags & EXFAT_ATTRIB_DIR))
+       if (!(node->attrib & EXFAT_ATTRIB_DIR))
                return -ENOTDIR;
        /* check that directory is empty */
        rc = exfat_cache_directory(ef, node);
@@ -1166,7 +1166,7 @@ int exfat_rename(struct exfat* ef, const char* old_path, const char* new_path)
        }
 
        /* check that target is not a subdirectory of the source */
-       if (node->flags & EXFAT_ATTRIB_DIR)
+       if (node->attrib & EXFAT_ATTRIB_DIR)
        {
                struct exfat_node* p;
 
@@ -1186,16 +1186,16 @@ int exfat_rename(struct exfat* ef, const char* old_path, const char* new_path)
                /* remove target if it's not the same node as source */
                if (existing != node)
                {
-                       if (existing->flags & EXFAT_ATTRIB_DIR)
+                       if (existing->attrib & EXFAT_ATTRIB_DIR)
                        {
-                               if (node->flags & EXFAT_ATTRIB_DIR)
+                               if (node->attrib & EXFAT_ATTRIB_DIR)
                                        rc = exfat_rmdir(ef, existing);
                                else
                                        rc = -ENOTDIR;
                        }
                        else
                        {
-                               if (!(node->flags & EXFAT_ATTRIB_DIR))
+                               if (!(node->attrib & EXFAT_ATTRIB_DIR))
                                        rc = exfat_unlink(ef, existing);
                                else
                                        rc = -EISDIR;
index e2c85f2..c633a29 100644 (file)
@@ -29,7 +29,7 @@ void exfat_stat(const struct exfat* ef, const struct exfat_node* node,
                struct stat* stbuf)
 {
        memset(stbuf, 0, sizeof(struct stat));
-       if (node->flags & EXFAT_ATTRIB_DIR)
+       if (node->attrib & EXFAT_ATTRIB_DIR)
                stbuf->st_mode = S_IFDIR | (0777 & ~ef->dmask);
        else
                stbuf->st_mode = S_IFREG | (0777 & ~ef->fmask);