Commit graph

354 commits

Author SHA1 Message Date
8921af25b3 mufs: fix mufs_free_page() and mufs_unmap_page() to properly update the root pointer 2017-06-14 06:20:44 +02:00
f2d4d60c01 mufs: add find_dirent_size() to determine how many bytes are used within a directory bin 2017-06-14 06:20:11 +02:00
7107daa4b5 mufs: flash_erase() operates on blocks rather than bytes 2017-06-14 06:18:02 +02:00
286c5ebefe shell: mufs: add utilities to append, cat, rm, mv and stat files 2017-06-12 17:31:09 +02:00
ab233bfd33 mufs: properly sync file size and check file size in mufs_write() and mufs_read() respectively 2017-06-12 17:30:12 +02:00
496b2182e3 mufs: do not check for empty path in mufs_mkpath() 2017-06-12 17:22:50 +02:00
2cac788ba7 mufs: create file when opening a file for writing 2017-06-12 17:20:23 +02:00
4e02f0417b shell: mufs: add rmdir command 2017-06-12 16:59:55 +02:00
639388588b mufs: set proper file size in remove_page() 2017-06-12 16:54:49 +02:00
45fe1e4b92 mufs: check if directory va does not exceed the file size in mufs_readdir() 2017-06-12 16:48:23 +02:00
ab599e7c8b mufs: locate directory entry properly in mufs_rmpath() 2017-06-12 16:45:17 +02:00
14a93ab881 mufs: expose struct mufs_dir internally 2017-06-12 16:44:53 +02:00
704cd24061 mufs: get parent directory in mufs_rmpath() to remove the directory entry from 2017-06-12 16:16:22 +02:00
6492a76d14 mufs: fix traversal issue in resolve_path() 2017-06-12 16:09:27 +02:00
8b780d57d9 mufs: implement mufs_rename() to move files and directories 2017-06-12 15:53:46 +02:00
65c1fc28d3 mufs: implement mufs_unlink() 2017-06-12 15:37:22 +02:00
d6fa387868 mufs: implement mufs_rmdir() 2017-06-12 15:35:15 +02:00
3b531e868b mufs: remove type argument from mufs_rmpath() 2017-06-12 15:32:44 +02:00
e837c07869 mufs: remove the page if there is only one entry left in mufs_rmpath() 2017-06-12 15:30:35 +02:00
17f4f90d64 mufs: fix issue in tree allocation 2017-06-12 14:32:48 +02:00
eb9b4853c0 mufs: implement mufs_rmpath() to remove file system nodes 2017-06-12 14:24:51 +02:00
1d52ca46a6 mufs: rework tree code to support mufs_map_page()/mufs_unmap_page() 2017-06-12 14:17:46 +02:00
27a15b3fb7 mufs: expose MUFS_FILE and MUFS_DIR constants 2017-06-12 13:51:27 +02:00
beb5f64c12 mufs: implement mufs_stat() 2017-06-12 13:50:05 +02:00
26b0ccb405 mufs: optionally record the type and file_size in resolve_path() 2017-06-12 13:48:43 +02:00
d9e11a083b mufs: only claim ownership of the tree object as the final step in resolve_path() 2017-06-12 13:42:16 +02:00
e3194229a5 mufs: free tree object if owned by struct mufs_dir in mufs_closedir() 2017-06-12 13:40:37 +02:00
9f05686a1f mufs: clean up code in resolve_path() 2017-06-12 13:39:31 +02:00
52b382b8b0 mufs: rename mufs_opendirent() to open_dirent() 2017-06-12 13:32:42 +02:00
71fb90a602 mufs: fix typo in read_dirent() 2017-06-12 13:26:52 +02:00
bd5120f8d0 mufs: use a buffer to operate on data in-place to reduce the amount of I/O in read_dirent()/write_dirent() 2017-06-12 13:15:28 +02:00
a20c1a8ed4 mufs: implement mufs_seek() to seek and tell the position within a file 2017-06-12 13:04:46 +02:00
9ef95baac3 mufs: implement mufs_sync_tree() to sync tree objects to disk 2017-06-12 12:59:01 +02:00
2c1079d0f4 mufs: implement modes for read, write and append in mufs_open() 2017-06-12 12:53:20 +02:00
ffc8669736 mufs: allow empty path in resolve_path() 2017-06-12 10:55:39 +02:00
84c45ee64d mufs: fix va to tree object in super block 2017-06-12 03:25:02 +02:00
92a531b49f mufs: split path properly in mufs_mkpath() 2017-06-11 19:44:53 +02:00
a65cdbfedf mufs: generalise mufs_create() and mufs_mkdir() into mufs_mkpath() 2017-06-11 19:27:53 +02:00
1c736c3324 mufs: add support for reading and writing files 2017-06-11 17:42:32 +02:00
845aba61ed mufs: rename mufs_read()/mufs_write() to mufs_tree_read()/mufs_tree_write() and expose functions 2017-06-11 17:34:35 +02:00
073c7f34be mufs: expose mufs_abspath() 2017-06-11 16:41:48 +02:00
11dd182ee7 mufs: rename mufs_opendir2() to mufs_opendirent() 2017-06-11 16:37:56 +02:00
58f6e87854 mufs: clean up calculation of the va of a tree object in read_dirent() 2017-06-11 16:36:08 +02:00
93c0466c90 mufs: simplify super block by embedding struct mufs_dtree instead of struct mufs_dentry 2017-06-11 16:32:12 +02:00
89ec3a94c0 mufs: embed struct mufs_dtree in struct mufs_dentry and clean up code 2017-06-11 16:31:43 +02:00
0bc9c6fc7a mufs: add mufs_abspath() to sanitise paths 2017-06-11 16:26:48 +02:00
d287d7616a mufs: fix an issue when determining the va of a tree object 2017-06-09 17:13:51 +02:00
3b25180038 mufs: properly determine the va of a tree object 2017-06-09 16:55:32 +02:00
f1e6f8f278 mufs: update path resolution code in mufs_mkdir() 2017-06-09 16:36:11 +02:00
0e9474d377 mufs: add support for path resolution 2017-06-09 16:29:37 +02:00