int uv_fs_open(uv_fs_t* req, const char* path, int flags, int mode, uv_fs_cb cb) { if (cb) { uv_fs_req_init_async(req, UV_FS_OPEN, cb); WRAP_REQ_ARGS3(req, path, flags, mode); STRDUP_ARG(req, 0); QUEUE_FS_TP_JOB(req); } else { uv_fs_req_init_sync(req, UV_FS_OPEN); fs__open(req, path, flags, mode); } return 0; }
int uv_fs_fchown(uv_loop_t* loop, uv_fs_t* req, uv_file file, int uid, int gid, uv_fs_cb cb) { if (cb) { uv_fs_req_init_async(loop, req, UV_FS_FCHOWN, NULL, cb); WRAP_REQ_ARGS3(req, file, uid, gid); QUEUE_FS_TP_JOB(loop, req); } else { uv_fs_req_init_sync(loop, req, UV_FS_FCHOWN); fs__nop(req); SET_UV_LAST_ERROR_FROM_REQ(req); } return 0; }