├── .gitattributes ├── .github └── workflows │ └── main.yml ├── .gitignore ├── .prettierrc ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── coreutils.async.wasm ├── index.html ├── package.json ├── src ├── bindings.ts ├── browser.ts ├── fileSystem.ts ├── test.ts └── type-desc.ts ├── test.html ├── tests ├── async-wasm │ ├── cant_dotdot.wasm │ ├── clock_getres.wasm │ ├── create_symlink.wasm │ ├── exitcode.wasm │ ├── fd_prestat_get_refresh.wasm │ ├── follow_symlink.wasm │ ├── freopen.wasm │ ├── getentropy.wasm │ ├── getrusage.wasm │ ├── gettimeofday.wasm │ ├── link.wasm │ ├── main_args.wasm │ ├── notdir.wasm │ ├── poll.wasm │ ├── preopen_populates.wasm │ ├── read_file.wasm │ ├── read_file_twice.wasm │ ├── stat.wasm │ ├── stdin.wasm │ ├── symlink_escape.wasm │ ├── symlink_loop.wasm │ └── write_file.wasm ├── c │ ├── LICENSE │ ├── cant_dotdot.c │ ├── clock_getres.c │ ├── create_symlink.c │ ├── exitcode.c │ ├── fd_prestat_get_refresh.c │ ├── follow_symlink.c │ ├── freopen.c │ ├── getentropy.c │ ├── getrusage.c │ ├── gettimeofday.c │ ├── link.c │ ├── main_args.c │ ├── notdir.c │ ├── poll.c │ ├── preopen_populates.c │ ├── read_file.c │ ├── read_file_twice.c │ ├── stat.c │ ├── stdin.c │ ├── symlink_escape.c │ ├── symlink_loop.c │ └── write_file.c ├── fixtures │ ├── sandbox │ │ ├── input.txt │ │ ├── input2.txt │ │ ├── notadir │ │ └── subdir │ │ │ ├── input_link.txt │ │ │ └── outside.txt │ └── tmp │ │ └── output.txt └── wasm │ ├── cant_dotdot.wasm │ ├── clock_getres.wasm │ ├── create_symlink.wasm │ ├── exitcode.wasm │ ├── fd_prestat_get_refresh.wasm │ ├── follow_symlink.wasm │ ├── freopen.wasm │ ├── getentropy.wasm │ ├── getrusage.wasm │ ├── gettimeofday.wasm │ ├── link.wasm │ ├── main_args.wasm │ ├── notdir.wasm │ ├── poll.wasm │ ├── preopen_populates.wasm │ ├── read_file.wasm │ ├── read_file_twice.wasm │ ├── stat.wasm │ ├── stdin.wasm │ ├── symlink_escape.wasm │ ├── symlink_loop.wasm │ └── write_file.wasm ├── tsconfig.json └── uutils.async.wasm /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto eol=lf 2 | -------------------------------------------------------------------------------- /.github/workflows/main.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/.github/workflows/main.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /dist 2 | /node_modules 3 | /tests/*.wasm 4 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/.prettierrc -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/README.md -------------------------------------------------------------------------------- /coreutils.async.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/coreutils.async.wasm -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/index.html -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/package.json -------------------------------------------------------------------------------- /src/bindings.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/src/bindings.ts -------------------------------------------------------------------------------- /src/browser.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/src/browser.ts -------------------------------------------------------------------------------- /src/fileSystem.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/src/fileSystem.ts -------------------------------------------------------------------------------- /src/test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/src/test.ts -------------------------------------------------------------------------------- /src/type-desc.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/src/type-desc.ts -------------------------------------------------------------------------------- /test.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/test.html -------------------------------------------------------------------------------- /tests/async-wasm/cant_dotdot.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/cant_dotdot.wasm -------------------------------------------------------------------------------- /tests/async-wasm/clock_getres.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/clock_getres.wasm -------------------------------------------------------------------------------- /tests/async-wasm/create_symlink.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/create_symlink.wasm -------------------------------------------------------------------------------- /tests/async-wasm/exitcode.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/exitcode.wasm -------------------------------------------------------------------------------- /tests/async-wasm/fd_prestat_get_refresh.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/fd_prestat_get_refresh.wasm -------------------------------------------------------------------------------- /tests/async-wasm/follow_symlink.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/follow_symlink.wasm -------------------------------------------------------------------------------- /tests/async-wasm/freopen.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/freopen.wasm -------------------------------------------------------------------------------- /tests/async-wasm/getentropy.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/getentropy.wasm -------------------------------------------------------------------------------- /tests/async-wasm/getrusage.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/getrusage.wasm -------------------------------------------------------------------------------- /tests/async-wasm/gettimeofday.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/gettimeofday.wasm -------------------------------------------------------------------------------- /tests/async-wasm/link.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/link.wasm -------------------------------------------------------------------------------- /tests/async-wasm/main_args.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/main_args.wasm -------------------------------------------------------------------------------- /tests/async-wasm/notdir.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/notdir.wasm -------------------------------------------------------------------------------- /tests/async-wasm/poll.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/poll.wasm -------------------------------------------------------------------------------- /tests/async-wasm/preopen_populates.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/preopen_populates.wasm -------------------------------------------------------------------------------- /tests/async-wasm/read_file.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/read_file.wasm -------------------------------------------------------------------------------- /tests/async-wasm/read_file_twice.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/read_file_twice.wasm -------------------------------------------------------------------------------- /tests/async-wasm/stat.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/stat.wasm -------------------------------------------------------------------------------- /tests/async-wasm/stdin.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/stdin.wasm -------------------------------------------------------------------------------- /tests/async-wasm/symlink_escape.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/symlink_escape.wasm -------------------------------------------------------------------------------- /tests/async-wasm/symlink_loop.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/symlink_loop.wasm -------------------------------------------------------------------------------- /tests/async-wasm/write_file.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/async-wasm/write_file.wasm -------------------------------------------------------------------------------- /tests/c/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/LICENSE -------------------------------------------------------------------------------- /tests/c/cant_dotdot.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/cant_dotdot.c -------------------------------------------------------------------------------- /tests/c/clock_getres.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/clock_getres.c -------------------------------------------------------------------------------- /tests/c/create_symlink.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/create_symlink.c -------------------------------------------------------------------------------- /tests/c/exitcode.c: -------------------------------------------------------------------------------- 1 | int main() { 2 | return 120; 3 | } 4 | -------------------------------------------------------------------------------- /tests/c/fd_prestat_get_refresh.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/fd_prestat_get_refresh.c -------------------------------------------------------------------------------- /tests/c/follow_symlink.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/follow_symlink.c -------------------------------------------------------------------------------- /tests/c/freopen.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/freopen.c -------------------------------------------------------------------------------- /tests/c/getentropy.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/getentropy.c -------------------------------------------------------------------------------- /tests/c/getrusage.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/getrusage.c -------------------------------------------------------------------------------- /tests/c/gettimeofday.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/gettimeofday.c -------------------------------------------------------------------------------- /tests/c/link.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/link.c -------------------------------------------------------------------------------- /tests/c/main_args.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/main_args.c -------------------------------------------------------------------------------- /tests/c/notdir.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/notdir.c -------------------------------------------------------------------------------- /tests/c/poll.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/poll.c -------------------------------------------------------------------------------- /tests/c/preopen_populates.c: -------------------------------------------------------------------------------- 1 | int main(void) { 2 | return 0; 3 | } 4 | -------------------------------------------------------------------------------- /tests/c/read_file.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/read_file.c -------------------------------------------------------------------------------- /tests/c/read_file_twice.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/read_file_twice.c -------------------------------------------------------------------------------- /tests/c/stat.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/stat.c -------------------------------------------------------------------------------- /tests/c/stdin.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/stdin.c -------------------------------------------------------------------------------- /tests/c/symlink_escape.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/symlink_escape.c -------------------------------------------------------------------------------- /tests/c/symlink_loop.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/symlink_loop.c -------------------------------------------------------------------------------- /tests/c/write_file.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/c/write_file.c -------------------------------------------------------------------------------- /tests/fixtures/sandbox/input.txt: -------------------------------------------------------------------------------- 1 | hello from input.txt 2 | -------------------------------------------------------------------------------- /tests/fixtures/sandbox/input2.txt: -------------------------------------------------------------------------------- 1 | hello from input2.txt 2 | -------------------------------------------------------------------------------- /tests/fixtures/sandbox/notadir: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/fixtures/sandbox/subdir/input_link.txt: -------------------------------------------------------------------------------- 1 | ../input.txt -------------------------------------------------------------------------------- /tests/fixtures/sandbox/subdir/outside.txt: -------------------------------------------------------------------------------- 1 | ../../outside.txt -------------------------------------------------------------------------------- /tests/fixtures/tmp/output.txt: -------------------------------------------------------------------------------- 1 | hello, file! -------------------------------------------------------------------------------- /tests/wasm/cant_dotdot.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/cant_dotdot.wasm -------------------------------------------------------------------------------- /tests/wasm/clock_getres.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/clock_getres.wasm -------------------------------------------------------------------------------- /tests/wasm/create_symlink.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/create_symlink.wasm -------------------------------------------------------------------------------- /tests/wasm/exitcode.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/exitcode.wasm -------------------------------------------------------------------------------- /tests/wasm/fd_prestat_get_refresh.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/fd_prestat_get_refresh.wasm -------------------------------------------------------------------------------- /tests/wasm/follow_symlink.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/follow_symlink.wasm -------------------------------------------------------------------------------- /tests/wasm/freopen.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/freopen.wasm -------------------------------------------------------------------------------- /tests/wasm/getentropy.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/getentropy.wasm -------------------------------------------------------------------------------- /tests/wasm/getrusage.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/getrusage.wasm -------------------------------------------------------------------------------- /tests/wasm/gettimeofday.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/gettimeofday.wasm -------------------------------------------------------------------------------- /tests/wasm/link.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/link.wasm -------------------------------------------------------------------------------- /tests/wasm/main_args.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/main_args.wasm -------------------------------------------------------------------------------- /tests/wasm/notdir.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/notdir.wasm -------------------------------------------------------------------------------- /tests/wasm/poll.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/poll.wasm -------------------------------------------------------------------------------- /tests/wasm/preopen_populates.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/preopen_populates.wasm -------------------------------------------------------------------------------- /tests/wasm/read_file.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/read_file.wasm -------------------------------------------------------------------------------- /tests/wasm/read_file_twice.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/read_file_twice.wasm -------------------------------------------------------------------------------- /tests/wasm/stat.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/stat.wasm -------------------------------------------------------------------------------- /tests/wasm/stdin.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/stdin.wasm -------------------------------------------------------------------------------- /tests/wasm/symlink_escape.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/symlink_escape.wasm -------------------------------------------------------------------------------- /tests/wasm/symlink_loop.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/symlink_loop.wasm -------------------------------------------------------------------------------- /tests/wasm/write_file.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tests/wasm/write_file.wasm -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/tsconfig.json -------------------------------------------------------------------------------- /uutils.async.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GoogleChromeLabs/wasi-fs-access/HEAD/uutils.async.wasm --------------------------------------------------------------------------------