mirror of
https://github.com/bytecodealliance/wasm-micro-runtime.git
synced 2025-03-12 08:55:28 +00:00
feat: implement os_invalid_raw_handle function for consistent invalid handle representation
This commit is contained in:
parent
cf8b932e34
commit
e82bd0b451
|
@ -4121,13 +4121,9 @@ create_module(char *name, char *error_buf, uint32 error_buf_size)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if WASM_ENABLE_LIBC_WASI != 0
|
#if WASM_ENABLE_LIBC_WASI != 0
|
||||||
/*
|
module->wasi_args.stdio[0] = os_invalid_raw_handle();
|
||||||
* learned from all implementations of `os_get_invalid_handle()`
|
module->wasi_args.stdio[1] = os_invalid_raw_handle();
|
||||||
* that invalid handles across all platforms are represented by -1.
|
module->wasi_args.stdio[2] = os_invalid_raw_handle();
|
||||||
*/
|
|
||||||
module->wasi_args.stdio[0] = -1;
|
|
||||||
module->wasi_args.stdio[1] = -1;
|
|
||||||
module->wasi_args.stdio[2] = -1;
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
return module;
|
return module;
|
||||||
|
|
|
@ -6369,13 +6369,9 @@ create_module(char *name, char *error_buf, uint32 error_buf_size)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if WASM_ENABLE_LIBC_WASI != 0
|
#if WASM_ENABLE_LIBC_WASI != 0
|
||||||
/*
|
module->wasi_args.stdio[0] = os_invalid_raw_handle();
|
||||||
* learned from all implementations of `os_get_invalid_handle()`
|
module->wasi_args.stdio[1] = os_invalid_raw_handle();
|
||||||
* that invalid handles across all platforms are represented by -1.
|
module->wasi_args.stdio[2] = os_invalid_raw_handle();
|
||||||
*/
|
|
||||||
module->wasi_args.stdio[0] = -1;
|
|
||||||
module->wasi_args.stdio[1] = -1;
|
|
||||||
module->wasi_args.stdio[2] = -1;
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
(void)ret;
|
(void)ret;
|
||||||
|
|
|
@ -3122,6 +3122,12 @@ create_module(char *name, char *error_buf, uint32 error_buf_size)
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if WASM_ENABLE_LIBC_WASI != 0
|
||||||
|
module->wasi_args.stdio[0] = os_invalid_raw_handle();
|
||||||
|
module->wasi_args.stdio[1] = os_invalid_raw_handle();
|
||||||
|
module->wasi_args.stdio[2] = os_invalid_raw_handle();
|
||||||
|
#endif
|
||||||
|
|
||||||
(void)ret;
|
(void)ret;
|
||||||
return module;
|
return module;
|
||||||
}
|
}
|
||||||
|
|
|
@ -79,3 +79,9 @@ os_dcache_flush()
|
||||||
void
|
void
|
||||||
os_icache_flush(void *start, size_t len)
|
os_icache_flush(void *start, size_t len)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
os_raw_file_handle
|
||||||
|
os_invalid_raw_handle(void)
|
||||||
|
{
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
|
@ -1032,4 +1032,10 @@ char *
|
||||||
os_realpath(const char *path, char *resolved_path)
|
os_realpath(const char *path, char *resolved_path)
|
||||||
{
|
{
|
||||||
return realpath(path, resolved_path);
|
return realpath(path, resolved_path);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
os_raw_file_handle
|
||||||
|
os_invalid_raw_handle(void)
|
||||||
|
{
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
|
@ -1032,4 +1032,10 @@ char *
|
||||||
os_realpath(const char *path, char *resolved_path)
|
os_realpath(const char *path, char *resolved_path)
|
||||||
{
|
{
|
||||||
return realpath(path, resolved_path);
|
return realpath(path, resolved_path);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
os_raw_file_handle
|
||||||
|
os_invalid_raw_handle(void)
|
||||||
|
{
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
|
@ -1607,6 +1607,15 @@ os_is_dir_stream_valid(os_dir_stream *dir_stream);
|
||||||
os_file_handle
|
os_file_handle
|
||||||
os_get_invalid_handle(void);
|
os_get_invalid_handle(void);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns an invalid raw file handle that is guaranteed to cause failure when
|
||||||
|
* called with any filesystem operation.
|
||||||
|
*
|
||||||
|
* @return the invalid raw file handle
|
||||||
|
*/
|
||||||
|
os_raw_file_handle
|
||||||
|
os_invalid_raw_handle(void);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Checks whether the given file handle is valid. An invalid handle is
|
* Checks whether the given file handle is valid. An invalid handle is
|
||||||
* guaranteed to cause failure when called with any filesystem operation.
|
* guaranteed to cause failure when called with any filesystem operation.
|
||||||
|
|
|
@ -95,3 +95,9 @@ os_dcache_flush(void)
|
||||||
void
|
void
|
||||||
os_icache_flush(void *start, size_t len)
|
os_icache_flush(void *start, size_t len)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
os_raw_file_handle
|
||||||
|
os_invalid_raw_handle(void)
|
||||||
|
{
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
|
@ -192,3 +192,9 @@ posix_fallocate(int __fd, off_t __offset, off_t __length)
|
||||||
errno = ENOSYS;
|
errno = ENOSYS;
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
os_raw_file_handle
|
||||||
|
os_invalid_raw_handle(void)
|
||||||
|
{
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
|
@ -1810,3 +1810,9 @@ os_realpath(const char *path, char *resolved_path)
|
||||||
|
|
||||||
return resolved_path;
|
return resolved_path;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
os_raw_file_handle
|
||||||
|
os_invalid_raw_handle(void)
|
||||||
|
{
|
||||||
|
return INVALID_HANDLE_VALUE;
|
||||||
|
}
|
||||||
|
|
|
@ -255,3 +255,9 @@ set_exec_mem_alloc_func(exec_mem_alloc_func_t alloc_func,
|
||||||
exec_mem_alloc_func = alloc_func;
|
exec_mem_alloc_func = alloc_func;
|
||||||
exec_mem_free_func = free_func;
|
exec_mem_free_func = free_func;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
os_raw_file_handle
|
||||||
|
os_invalid_raw_handle(void)
|
||||||
|
{
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user