summaryrefslogtreecommitdiff
path: root/fs
diff options
context:
space:
mode:
authorStephen Warren <swarren@nvidia.com>2014-02-03 13:21:09 -0700
committerTom Rini <trini@ti.com>2014-02-19 09:47:34 -0500
commit55af5c9313607f3b6acba2fd915b263ef6a61dd4 (patch)
tree95dd692ed9c7c22357c77e2315cb92cd235f8dc3 /fs
parent89ba42d18303d06d49ca14de2d46c82bbdcad06c (diff)
ext4: implement exists() for ext4fs
This hooks into the generic "file exists" support added in an earlier patch, and provides an implementation for the ext4 filesystem. Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'fs')
-rw-r--r--fs/ext4/ext4fs.c8
-rw-r--r--fs/fs.c2
2 files changed, 9 insertions, 1 deletions
diff --git a/fs/ext4/ext4fs.c b/fs/ext4/ext4fs.c
index 735b2564175..417ce7b63bf 100644
--- a/fs/ext4/ext4fs.c
+++ b/fs/ext4/ext4fs.c
@@ -174,6 +174,14 @@ int ext4fs_ls(const char *dirname)
return 0;
}
+int ext4fs_exists(const char *filename)
+{
+ int file_len;
+
+ file_len = ext4fs_open(filename);
+ return file_len >= 0;
+}
+
int ext4fs_read(char *buf, unsigned len)
{
if (ext4fs_root == NULL || ext4fs_file == NULL)
diff --git a/fs/fs.c b/fs/fs.c
index 2e60f57bc45..4e9b162d49f 100644
--- a/fs/fs.c
+++ b/fs/fs.c
@@ -102,7 +102,7 @@ static struct fstype_info fstypes[] = {
.probe = ext4fs_probe,
.close = ext4fs_close,
.ls = ext4fs_ls,
- .exists = fs_exists_unsupported,
+ .exists = ext4fs_exists,
.read = ext4_read_file,
.write = fs_write_unsupported,
},