Fix std::fs::File::metadata permission on WASI target

Previously `std::fs::File::metadata` on wasm32-wasi would call `fd_filestat_get`
to get metadata associated with fd, but that fd is opened without
RIGHTS_FD_FILESTAT_GET right, so it will failed on correctly implemented WASI
environment.

This change instead to add the missing rights when opening an fd.
This commit is contained in:
Shen-Ta Hsieh 2020-07-31 08:52:59 +00:00
parent ac91673d89
commit 4c851792ac
No known key found for this signature in database
GPG Key ID: DF7FED2B0492FA77

View File

@ -331,6 +331,7 @@ impl OpenOptions {
// FIXME: some of these should probably be read-only or write-only...
base |= wasi::RIGHTS_FD_ADVISE;
base |= wasi::RIGHTS_FD_FDSTAT_SET_FLAGS;
base |= wasi::RIGHTS_FD_FILESTAT_GET;
base |= wasi::RIGHTS_FD_FILESTAT_SET_TIMES;
base |= wasi::RIGHTS_FD_SEEK;
base |= wasi::RIGHTS_FD_SYNC;