aboutsummaryrefslogtreecommitdiff
path: root/fs/fat/fat.c
diff options
context:
space:
mode:
authorStephen Warren2014-06-11 12:47:26 -0600
committerTom Rini2014-08-09 11:16:57 -0400
commitcf6598193aed5de8855eaf70c1994f2bc437255a (patch)
tree4effb602945b18ad9c639cfd7b5e9f17eb02ffa4 /fs/fat/fat.c
parente76b933e02e1b38e48754c435e9dba1c0deeb3c6 (diff)
fs: implement size/fatsize/ext4size
These commands may be used to determine the size of a file without actually reading the whole file content into memory. This may be used to determine if the file will fit into the memory buffer that will contain it. In particular, the DFU code will use it for this purpose in the next commit. Signed-off-by: Stephen Warren <swarren@nvidia.com>
Diffstat (limited to 'fs/fat/fat.c')
-rw-r--r--fs/fat/fat.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/fat/fat.c b/fs/fat/fat.c
index 54f42eae0d0..561921fa2d3 100644
--- a/fs/fat/fat.c
+++ b/fs/fat/fat.c
@@ -1243,6 +1243,11 @@ int fat_exists(const char *filename)
return sz >= 0;
}
+int fat_size(const char *filename)
+{
+ return do_fat_read_at(filename, 0, NULL, 0, LS_NO, 1);
+}
+
long file_fat_read_at(const char *filename, unsigned long pos, void *buffer,
unsigned long maxsize)
{