Commit Graph

221 Commits

Author SHA1 Message Date
Abir Viqar 5ceff20b12 make find_node symbolic link aware
This adds a new constant SYMLOOP_MAX, which corresponds to the POSIX
variable of the number of symbolic links that may be followed. A new
error Eloop was added to signal when SYMLOOP_MAX is exceeded.
SYMLOOP_MAX has been arbitrarily set to 10 while on linux it is set
to 40 and the POSIX minimum is 8.

find_node when encountering a symbolic link anywhere in the given path
will attempt to follow it.

Note that SYMLOOP_MAX is only the limit of symbolic links to
follow per symbolic link. There is currently no attempt to limit
the total number of symbolic links followed when resolving a path.

This adds tests for path resolution of symbolic links as well.
2013-11-25 14:26:46 -05:00
Abir Viqar 85a804cc0c add symlink
Also enable readlink's symbolic link test.
2013-11-25 14:26:40 -05:00
Abir Viqar a78f1ee3ff add readlink
Disable the test on a symbolic link until symlink is added.

Also add myself to AUTHORS
2013-11-25 14:26:34 -05:00
Alan Kligman bb46fa34e8 removed all uses of promises; remove promise library since it's not longer needed 2013-11-21 20:44:57 -05:00
Alan Kligman 291ef6bc94 removed a bunch of promisey code; converted to callbacks 2013-11-21 16:15:30 -05:00
Alan Kligman c9d60fbd9b refactoring to support additional backends 2013-11-21 15:45:47 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 9813886d38 s/this/that/ in a few spots in fs.js, add myself to AUTHORS 2013-11-15 14:50:19 -05:00
Alan Kligman c76fc01a20 support rename() 2013-11-12 13:39:11 -05:00
Alan Kligman 638109f911 fix remaining lint errors 2013-11-12 13:14:23 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca cf7d12a6b3 Refactor duplicate flag checks 2013-11-09 15:12:52 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca ae2b8aa9b3 Use internal fs functions instead of public methods for readFile, writeFile. 2013-11-09 14:51:21 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 2a8705ed0b Add fs.readFile, fs.writeFile with tests 2013-11-08 15:33:44 -05:00
Alan Kligman 28add9cebd rename source files 2013-11-07 16:29:23 -05:00
Alan Kligman cf033ac574 remove unused source file 2013-11-07 16:24:27 -05:00
Alan Kligman 7e59e3a684 support for readdir 2013-11-07 15:55:14 -05:00
Alan Kligman 0256c2fece Updated dists. 2013-07-29 17:58:55 -04:00
Alan Kligman aeccbd4d3f Added stats object. 2013-07-29 16:30:24 -04:00
Alan Kligman dabf8c8c7a Added lseek and tests. 2013-07-29 15:59:17 -04:00
Alan Kligman 850758e37a Add fstat and tests. Fix position bug in read/write. 2013-07-29 14:55:25 -04:00
Alan Kligman 33791ca950 Added stubs. Fix position for read/write. 2013-07-26 21:53:25 -04:00
Alan Kligman 984db2ceba Add file type to stats. 2013-07-26 11:59:32 -04:00
Alan Kligman e690ed5292 Unlink implementation and tests. 2013-07-26 00:15:48 -04:00
Alan Kligman 717bbc25c1 Link tests. 2013-07-25 22:49:53 -04:00
Alan Kligman ea8fbd48ad Updated tests. 2013-07-22 23:34:38 -04:00
Alan Kligman fb9fed0663 Tests for reading and writing data. 2013-07-22 14:31:44 -04:00
Alan Kligman 40d3f25d9a More tests, updated implementation. 2013-07-22 13:08:35 -04:00
Alan Kligman d3d7dcabde Code and tests for fs.open 2013-07-19 11:22:23 -04:00
Alan Kligman 5853704bab Updated tests. 2013-07-15 11:52:41 -04:00
Alan Kligman cfd0932736 More tests. Added try/catch around read/write_object. 2013-07-13 12:41:10 -04:00
Alan Kligman c3c9751ff4 Stat implementation, updated tests. 2013-07-12 11:11:05 -04:00
Alan Kligman 19b21e10de WIP 2013-06-22 11:33:08 -04:00
Alan Kligman 2d195ff6d6 WIP 2013-05-31 15:03:18 -04:00
Alan Kligman 5bef87490c WIP 2013-05-31 11:30:01 -04:00
Alan Kligman 580dad5315 WIP 2013-05-31 03:52:04 -04:00
Alan Kligman 4f5ff333fb Reorganize files. 2013-05-30 21:38:44 -04:00
Alan Kligman a2ff2823dc WIP 2013-05-30 19:07:21 -04:00
Alan Kligman 11d0a4de7f WIP 2013-05-30 18:49:31 -04:00
Alan Kligman 14759635c0 WIP 2013-05-30 14:57:33 -04:00
Alan Kligman c80a08bb07 Mocked out events and targets. 2013-05-25 21:26:18 -04:00
Alan Kligman 4f495fe785 Clean up example. 2013-05-25 20:37:13 -04:00
Alan Kligman 1dda23789e Modified when.js to avoid deferring callbacks using setTimeout (this breaks IndexedDB). Added promise-based API wrapper for IndexedDB. 2013-05-25 11:15:00 -04:00
Alan Kligman ced78ca040 Added gruntfile, now builds optimized library. 2013-03-11 15:14:26 -04:00
Alan Kligman 2e0810df2e Fixed missing file handle for root directory stat(). 2012-12-14 15:55:11 -05:00
Alan Kligman ad3aa5eac8 Added new example using a TAR file. Also fixed a few bugs with the root directory. Should refactor that in a future patch so that the root directory handled more clearly. 2012-12-13 20:24:07 -05:00
Alan Kligman baf63c6055 Updated read() error checking. Updated stat() return structure. 2012-11-30 19:09:14 -05:00
Alan Kligman 9053d67146 Refactor to support open() on directories so that we can list files. 2012-11-29 19:46:35 -05:00
Alan Kligman 91aefa7e54 Support for get/set xattrs. 2012-11-15 06:24:00 -05:00
Alan Kligman de463a36c1 Support for link() and unlink(). 2012-11-14 11:19:04 -05:00
Alan Kligman bd2d0fe880 Refactored previous API to allow for linking. 2012-11-13 19:05:57 -05:00
Alan Kligman a48dabd42d Implemented open() and close(). 2012-11-09 11:10:55 -05:00
Alan Kligman a76c9557d5 Bunch of bug fixes and stat is working. 2012-11-08 05:29:05 -05:00
Alan Kligman 83ff221736 Refactoring. 2012-11-08 00:12:41 -05:00
Alan Kligman cb370a0ede Removed this, will get from other project. 2012-10-15 11:31:05 -04:00
Alan Kligman 238b37c467 Updated example. 2012-10-15 11:30:45 -04:00
Alan Kligman fcb66dac52 Added buffer code (based on node's buffer); 2012-10-14 18:49:06 -04:00
Alan Kligman eb4b1b1aa1 Refactored error code and added transaction abort on error. 2012-10-13 13:26:02 -04:00
Alan Kligman c434385fe4 Updated tests. Added a FORMAT flag to make things clearer. 2012-10-13 11:06:17 -04:00
Alan Kligman 4dc7474fd5 Support for unlink(). 2012-10-12 18:54:12 -04:00
Alan Kligman d21adc32d7 Added write() support. 2012-10-12 17:46:12 -04:00
Alan Kligman 714e249266 Removed old code. Started implementing write(). 2012-10-12 11:35:39 -04:00
Alan Kligman 4b4f3a76be First cut at read(). Will need to refactor after write() is done. 2012-10-12 00:24:35 -04:00
Alan Kligman cc82c68b4b Refactoring for close(). 2012-10-11 23:51:18 -04:00
Alan Kligman 31f2ca6d91 Added close. 2012-10-11 21:48:23 -04:00
Alan Kligman 380b00ca3a Added path tools (from node.js) and normalization to API methods. 2012-10-11 16:26:23 -04:00
Alan Kligman f4189c7e8b Support for rmdir. 2012-10-11 14:58:36 -04:00
Alan Kligman f762cf74b1 Refactoring away from promises. 2012-10-11 02:20:58 -04:00
Alan Kligman 3daebb73ad Added stat support. 2012-10-09 13:40:25 -04:00
Alan Kligman 3ef1488691 mkdir is now used internally. 2012-10-08 02:22:58 -04:00
Alan Kligman 129189ea77 Added wrappers for requests and transactions. 2012-10-08 01:53:12 -04:00
Alan Kligman 920bf44cae mkdir implementation. 2012-10-07 22:53:18 -04:00
Alan Kligman 46821604fb Initial commit. 2012-10-07 01:42:58 -04:00