1.1 --- a/libfsserver/lib/files/ext2_file_accessor.cc Sun Jul 25 23:18:39 2021 +0200
1.2 +++ b/libfsserver/lib/files/ext2_file_accessor.cc Fri Jul 30 00:20:35 2021 +0200
1.3 @@ -21,8 +21,6 @@
1.4
1.5 #include <stdio.h>
1.6 #include <string.h>
1.7 -#include <sys/stat.h>
1.8 -#include <sys/types.h>
1.9
1.10 #include <algorithm>
1.11
1.12 @@ -32,8 +30,9 @@
1.13
1.14
1.15
1.16 -Ext2FileAccessor::Ext2FileAccessor(ext2_file_t file, fileid_t fileid)
1.17 -: Accessor(fileid), _file(file)
1.18 +Ext2FileAccessor::Ext2FileAccessor(Ext2FileOperations *ops, ext2_file_t file,
1.19 + fileid_t fileid)
1.20 +: Accessor(fileid), _ops(ops), _file(file)
1.21 {
1.22 }
1.23
1.24 @@ -41,22 +40,21 @@
1.25
1.26 offset_t Ext2FileAccessor::get_size()
1.27 {
1.28 - return ext2fs_file_get_size(_file);
1.29 + return _ops->get_size(_file);
1.30 }
1.31
1.32 /* Update the size of the file. */
1.33
1.34 void Ext2FileAccessor::set_size(offset_t size)
1.35 {
1.36 - ext2fs_file_set_size(_file, size);
1.37 + _ops->set_size(_file, size);
1.38 }
1.39
1.40 /* Perform any closing operation on the file. */
1.41
1.42 void Ext2FileAccessor::close()
1.43 {
1.44 - ext2fs_file_flush(_file);
1.45 - ext2fs_file_close(_file);
1.46 + _ops->close_file(_file);
1.47 }
1.48
1.49 /* Data transfer helper methods. */
1.50 @@ -74,10 +72,7 @@
1.51
1.52 /* Fill the region with file content. */
1.53
1.54 - ext2fs_file_llseek(_file, filepos, SEEK_SET, NULL);
1.55 -
1.56 - unsigned int nread;
1.57 - ext2fs_file_read(_file, (void *) addr, flexpage->size, &nread);
1.58 + offset_t nread = _ops->read_file(_file, filepos, (void *) addr, flexpage->size);
1.59
1.60 /* Pad the flexpage with zero. */
1.61
1.62 @@ -98,8 +93,7 @@
1.63
1.64 /* Copy the populated region to the file. */
1.65
1.66 - ext2fs_file_llseek(_file, filepos, SEEK_SET, NULL);
1.67 - ext2fs_file_write(_file, (const void *) addr, populated_size, NULL);
1.68 + _ops->write_file(_file, filepos, (const void *) addr, populated_size);
1.69 }
1.70
1.71 // vim: tabstop=4 expandtab shiftwidth=4