| 231 | } |
| 232 | |
| 233 | WasiExpect<void> VINode::pathRename(std::shared_ptr<VINode> Old, |
| 234 | std::string_view OldPath, |
| 235 | std::shared_ptr<VINode> New, |
| 236 | std::string_view NewPath) { |
| 237 | if (!Old->can(__WASI_RIGHTS_PATH_RENAME_SOURCE)) { |
| 238 | return WasiUnexpect(__WASI_ERRNO_NOTCAPABLE); |
| 239 | } |
| 240 | if (!New->can(__WASI_RIGHTS_PATH_RENAME_TARGET)) { |
| 241 | return WasiUnexpect(__WASI_ERRNO_NOTCAPABLE); |
| 242 | } |
| 243 | EXPECTED_TRY(auto OldBuffer, resolvePath(Old, OldPath, false)); |
| 244 | EXPECTED_TRY(auto NewBuffer, resolvePath(New, NewPath, false)); |
| 245 | |
| 246 | return INode::pathRename(Old->Node, std::string(OldPath), New->Node, |
| 247 | std::string(NewPath)); |
| 248 | } |
| 249 | |
| 250 | WasiExpect<void> VINode::pathSymlink(std::string_view OldPath, |
| 251 | std::shared_ptr<VINode> New, |
no test coverage detected